Remove dbgName
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/.cvsignore b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/.cvsignore
index ba077a4..eab9f93 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/.cvsignore
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/.cvsignore
@@ -1 +1,2 @@
 bin
+plugin.xml_gen
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/.settings/org.eclipse.jdt.core.prefs b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/.settings/org.eclipse.jdt.core.prefs
index 0804042..0f3282b 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/.settings/org.eclipse.jdt.core.prefs
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/.settings/org.eclipse.jdt.core.prefs
@@ -1,4 +1,4 @@
-#Wed Oct 14 22:36:22 CEST 2009
+#Sat Mar 12 22:06:29 GMT 2011
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -175,9 +175,12 @@
 org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
 org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
 org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
 org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
 org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
 org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
 org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
 org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/AbstractStatesProposalProvider.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/AbstractStatesProposalProvider.java
index 5d48cd7..97af62d 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/AbstractStatesProposalProvider.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/AbstractStatesProposalProvider.java
@@ -18,8 +18,7 @@
 public class AbstractStatesProposalProvider extends TerminalsProposalProvider {
 		
 	public void completeModule_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)((Alternatives)assignment.getTerminal()).getElements().get(0)), context, acceptor);
-		completeRuleCall(((RuleCall)((Alternatives)assignment.getTerminal()).getElements().get(1)), context, acceptor);
+		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
 	public void completeModule_Machines(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
@@ -39,9 +38,6 @@
 	public void completeStatemachine_States(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
-	public void completeStatemachine_DbgName(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
 	public void completeEvent_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
@@ -57,9 +53,6 @@
 	public void completeSimpleState_Transitions(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
-	public void completeSimpleState_DbgName(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
 	public void completeCompoundState_Initial(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
@@ -72,18 +65,12 @@
 	public void completeCompoundState_Transitions(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
-	public void completeCompoundState_DbgName(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
 	public void completeTransition_Event(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
 	}
 	public void completeTransition_State(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
 	}
-	public void completeTransition_DbgName(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
     
 	public void complete_Module(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/StatesParser.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/StatesParser.java
index 38dff85..4b34776 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/StatesParser.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/StatesParser.java
@@ -37,19 +37,14 @@
 			nameMappings = new HashMap<AbstractElement, String>() {
 				private static final long serialVersionUID = 1L;
 				{
-					put(grammarAccess.getModuleAccess().getNameAlternatives_1_0(), "rule__Module__NameAlternatives_1_0");
 					put(grammarAccess.getStateAccess().getAlternatives(), "rule__State__Alternatives");
 					put(grammarAccess.getModuleAccess().getGroup(), "rule__Module__Group__0");
 					put(grammarAccess.getStatemachineAccess().getGroup(), "rule__Statemachine__Group__0");
 					put(grammarAccess.getStatemachineAccess().getGroup_3(), "rule__Statemachine__Group_3__0");
-					put(grammarAccess.getStatemachineAccess().getGroup_10(), "rule__Statemachine__Group_10__0");
 					put(grammarAccess.getSimpleStateAccess().getGroup(), "rule__SimpleState__Group__0");
 					put(grammarAccess.getSimpleStateAccess().getGroup_3(), "rule__SimpleState__Group_3__0");
-					put(grammarAccess.getSimpleStateAccess().getGroup_7(), "rule__SimpleState__Group_7__0");
 					put(grammarAccess.getCompoundStateAccess().getGroup(), "rule__CompoundState__Group__0");
-					put(grammarAccess.getCompoundStateAccess().getGroup_9(), "rule__CompoundState__Group_9__0");
 					put(grammarAccess.getTransitionAccess().getGroup(), "rule__Transition__Group__0");
-					put(grammarAccess.getTransitionAccess().getGroup_3(), "rule__Transition__Group_3__0");
 					put(grammarAccess.getModuleAccess().getNameAssignment_1(), "rule__Module__NameAssignment_1");
 					put(grammarAccess.getModuleAccess().getMachinesAssignment_2(), "rule__Module__MachinesAssignment_2");
 					put(grammarAccess.getStatemachineAccess().getInitialAssignment_0(), "rule__Statemachine__InitialAssignment_0");
@@ -57,21 +52,17 @@
 					put(grammarAccess.getStatemachineAccess().getValueAssignment_3_1(), "rule__Statemachine__ValueAssignment_3_1");
 					put(grammarAccess.getStatemachineAccess().getEventsAssignment_6(), "rule__Statemachine__EventsAssignment_6");
 					put(grammarAccess.getStatemachineAccess().getStatesAssignment_8(), "rule__Statemachine__StatesAssignment_8");
-					put(grammarAccess.getStatemachineAccess().getDbgNameAssignment_10_1(), "rule__Statemachine__DbgNameAssignment_10_1");
 					put(grammarAccess.getEventAccess().getNameAssignment(), "rule__Event__NameAssignment");
 					put(grammarAccess.getSimpleStateAccess().getInitialAssignment_0(), "rule__SimpleState__InitialAssignment_0");
 					put(grammarAccess.getSimpleStateAccess().getNameAssignment_2(), "rule__SimpleState__NameAssignment_2");
 					put(grammarAccess.getSimpleStateAccess().getValueAssignment_3_1(), "rule__SimpleState__ValueAssignment_3_1");
 					put(grammarAccess.getSimpleStateAccess().getTransitionsAssignment_5(), "rule__SimpleState__TransitionsAssignment_5");
-					put(grammarAccess.getSimpleStateAccess().getDbgNameAssignment_7_1(), "rule__SimpleState__DbgNameAssignment_7_1");
 					put(grammarAccess.getCompoundStateAccess().getInitialAssignment_1(), "rule__CompoundState__InitialAssignment_1");
 					put(grammarAccess.getCompoundStateAccess().getNameAssignment_3(), "rule__CompoundState__NameAssignment_3");
 					put(grammarAccess.getCompoundStateAccess().getMachineAssignment_5(), "rule__CompoundState__MachineAssignment_5");
 					put(grammarAccess.getCompoundStateAccess().getTransitionsAssignment_7(), "rule__CompoundState__TransitionsAssignment_7");
-					put(grammarAccess.getCompoundStateAccess().getDbgNameAssignment_9_1(), "rule__CompoundState__DbgNameAssignment_9_1");
 					put(grammarAccess.getTransitionAccess().getEventAssignment_0(), "rule__Transition__EventAssignment_0");
 					put(grammarAccess.getTransitionAccess().getStateAssignment_2(), "rule__Transition__StateAssignment_2");
-					put(grammarAccess.getTransitionAccess().getDbgNameAssignment_3_1(), "rule__Transition__DbgNameAssignment_3_1");
 				}
 			};
 		}
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g
index 70ce9bc..b3a5ecb 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g
@@ -254,28 +254,6 @@
 
 
 
-rule__Module__NameAlternatives_1_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0_0()); }
-	RULE_STRING
-{ after(grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0_0()); }
-)
-
-    |(
-{ before(grammarAccess.getModuleAccess().getNameIDTerminalRuleCall_1_0_1()); }
-	RULE_ID
-{ after(grammarAccess.getModuleAccess().getNameIDTerminalRuleCall_1_0_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
 rule__State__Alternatives
     @init {
 		int stackSize = keepStackSize();
@@ -669,7 +647,6 @@
     }
 :
 	rule__Statemachine__Group__9__Impl
-	rule__Statemachine__Group__10
 ;
 finally {
 	restoreStackSize(stackSize);
@@ -694,36 +671,6 @@
 }
 
 
-rule__Statemachine__Group__10
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Statemachine__Group__10__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Statemachine__Group__10__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getStatemachineAccess().getGroup_10()); }
-(rule__Statemachine__Group_10__0)?
-{ after(grammarAccess.getStatemachineAccess().getGroup_10()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
 
 
 
@@ -807,69 +754,6 @@
 
 
 
-rule__Statemachine__Group_10__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Statemachine__Group_10__0__Impl
-	rule__Statemachine__Group_10__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Statemachine__Group_10__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getStatemachineAccess().getDebugKeyword_10_0()); }
-
-	'debug' 
-
-{ after(grammarAccess.getStatemachineAccess().getDebugKeyword_10_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Statemachine__Group_10__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Statemachine__Group_10__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Statemachine__Group_10__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getStatemachineAccess().getDbgNameAssignment_10_1()); }
-(rule__Statemachine__DbgNameAssignment_10_1)
-{ after(grammarAccess.getStatemachineAccess().getDbgNameAssignment_10_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
 rule__SimpleState__Group__0
     @init {
 		int stackSize = keepStackSize();
@@ -1054,7 +938,6 @@
     }
 :
 	rule__SimpleState__Group__6__Impl
-	rule__SimpleState__Group__7
 ;
 finally {
 	restoreStackSize(stackSize);
@@ -1079,36 +962,6 @@
 }
 
 
-rule__SimpleState__Group__7
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SimpleState__Group__7__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SimpleState__Group__7__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSimpleStateAccess().getGroup_7()); }
-(rule__SimpleState__Group_7__0)?
-{ after(grammarAccess.getSimpleStateAccess().getGroup_7()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
 
 
 
@@ -1186,69 +1039,6 @@
 
 
 
-rule__SimpleState__Group_7__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SimpleState__Group_7__0__Impl
-	rule__SimpleState__Group_7__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SimpleState__Group_7__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSimpleStateAccess().getDebugKeyword_7_0()); }
-
-	'debug' 
-
-{ after(grammarAccess.getSimpleStateAccess().getDebugKeyword_7_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SimpleState__Group_7__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SimpleState__Group_7__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SimpleState__Group_7__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSimpleStateAccess().getDbgNameAssignment_7_1()); }
-(rule__SimpleState__DbgNameAssignment_7_1)
-{ after(grammarAccess.getSimpleStateAccess().getDbgNameAssignment_7_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
 rule__CompoundState__Group__0
     @init {
 		int stackSize = keepStackSize();
@@ -1495,7 +1285,6 @@
     }
 :
 	rule__CompoundState__Group__8__Impl
-	rule__CompoundState__Group__9
 ;
 finally {
 	restoreStackSize(stackSize);
@@ -1520,32 +1309,6 @@
 }
 
 
-rule__CompoundState__Group__9
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompoundState__Group__9__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompoundState__Group__9__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompoundStateAccess().getGroup_9()); }
-(rule__CompoundState__Group_9__0)?
-{ after(grammarAccess.getCompoundStateAccess().getGroup_9()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
 
 
 
@@ -1564,73 +1327,6 @@
 
 
 
-
-
-
-
-rule__CompoundState__Group_9__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompoundState__Group_9__0__Impl
-	rule__CompoundState__Group_9__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompoundState__Group_9__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompoundStateAccess().getDebugKeyword_9_0()); }
-
-	'debug' 
-
-{ after(grammarAccess.getCompoundStateAccess().getDebugKeyword_9_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompoundState__Group_9__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompoundState__Group_9__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompoundState__Group_9__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompoundStateAccess().getDbgNameAssignment_9_1()); }
-(rule__CompoundState__DbgNameAssignment_9_1)
-{ after(grammarAccess.getCompoundStateAccess().getDbgNameAssignment_9_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
 rule__Transition__Group__0
     @init {
 		int stackSize = keepStackSize();
@@ -1697,7 +1393,6 @@
     }
 :
 	rule__Transition__Group__2__Impl
-	rule__Transition__Group__3
 ;
 finally {
 	restoreStackSize(stackSize);
@@ -1720,99 +1415,6 @@
 }
 
 
-rule__Transition__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Transition__Group__3__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Transition__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getTransitionAccess().getGroup_3()); }
-(rule__Transition__Group_3__0)?
-{ after(grammarAccess.getTransitionAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-rule__Transition__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Transition__Group_3__0__Impl
-	rule__Transition__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Transition__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getTransitionAccess().getDebugKeyword_3_0()); }
-
-	'debug' 
-
-{ after(grammarAccess.getTransitionAccess().getDebugKeyword_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Transition__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Transition__Group_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Transition__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getTransitionAccess().getDbgNameAssignment_3_1()); }
-(rule__Transition__DbgNameAssignment_3_1)
-{ after(grammarAccess.getTransitionAccess().getDbgNameAssignment_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
 
 
 
@@ -1826,9 +1428,8 @@
     }
 :
 (
-{ before(grammarAccess.getModuleAccess().getNameAlternatives_1_0()); }
-(rule__Module__NameAlternatives_1_0)
-{ after(grammarAccess.getModuleAccess().getNameAlternatives_1_0()); }
+{ before(grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0()); }
+	RULE_STRING{ after(grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0()); }
 )
 
 ;
@@ -1934,21 +1535,6 @@
 	restoreStackSize(stackSize);
 }
 
-rule__Statemachine__DbgNameAssignment_10_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getStatemachineAccess().getDbgNameIDTerminalRuleCall_10_1_0()); }
-	RULE_ID{ after(grammarAccess.getStatemachineAccess().getDbgNameIDTerminalRuleCall_10_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
 rule__Event__NameAssignment
     @init {
 		int stackSize = keepStackSize();
@@ -2032,21 +1618,6 @@
 	restoreStackSize(stackSize);
 }
 
-rule__SimpleState__DbgNameAssignment_7_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSimpleStateAccess().getDbgNameIDTerminalRuleCall_7_1_0()); }
-	RULE_ID{ after(grammarAccess.getSimpleStateAccess().getDbgNameIDTerminalRuleCall_7_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
 rule__CompoundState__InitialAssignment_1
     @init {
 		int stackSize = keepStackSize();
@@ -2119,21 +1690,6 @@
 	restoreStackSize(stackSize);
 }
 
-rule__CompoundState__DbgNameAssignment_9_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompoundStateAccess().getDbgNameIDTerminalRuleCall_9_1_0()); }
-	RULE_ID{ after(grammarAccess.getCompoundStateAccess().getDbgNameIDTerminalRuleCall_9_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
 rule__Transition__EventAssignment_0
     @init {
 		int stackSize = keepStackSize();
@@ -2172,21 +1728,6 @@
 	restoreStackSize(stackSize);
 }
 
-rule__Transition__DbgNameAssignment_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getTransitionAccess().getDbgNameIDTerminalRuleCall_3_1_0()); }
-	RULE_ID{ after(grammarAccess.getTransitionAccess().getDbgNameIDTerminalRuleCall_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
 
 RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
 
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.tokens b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.tokens
index de3b5ce..3b8877f 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.tokens
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.tokens
@@ -1,7 +1,6 @@
 RULE_ML_COMMENT=7
 T__12=12
 RULE_ID=5
-T__23=23
 T__20=20
 T__13=13
 RULE_STRING=4
@@ -19,15 +18,14 @@
 T__18=18
 T__15=15
 'statemachine'=12
-'compound'=20
-'events'=14
-'debug'=18
-'=>'=22
-'machine'=21
-'{'=13
-';'=15
 'module'=11
-'initial'=23
+'initial'=22
 'value'=17
-'state'=19
+'compound'=19
+'events'=14
+'=>'=21
+'state'=18
+'machine'=20
 '}'=16
+';'=15
+'{'=13
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStatesLexer.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStatesLexer.java
index 8e1ba67..cc5cbf1 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStatesLexer.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStatesLexer.java
@@ -15,7 +15,6 @@
     public static final int RULE_ML_COMMENT=7;
     public static final int RULE_ID=5;
     public static final int T__12=12;
-    public static final int T__23=23;
     public static final int T__20=20;
     public static final int T__13=13;
     public static final int RULE_STRING=4;
@@ -196,10 +195,10 @@
         try {
             int _type = T__18;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:18:7: ( 'debug' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:18:9: 'debug'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:18:7: ( 'state' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:18:9: 'state'
             {
-            match("debug"); 
+            match("state"); 
 
 
             }
@@ -217,10 +216,10 @@
         try {
             int _type = T__19;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:19:7: ( 'state' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:19:9: 'state'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:19:7: ( 'compound' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:19:9: 'compound'
             {
-            match("state"); 
+            match("compound"); 
 
 
             }
@@ -238,10 +237,10 @@
         try {
             int _type = T__20;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:20:7: ( 'compound' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:20:9: 'compound'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:20:7: ( 'machine' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:20:9: 'machine'
             {
-            match("compound"); 
+            match("machine"); 
 
 
             }
@@ -259,10 +258,10 @@
         try {
             int _type = T__21;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:21:7: ( 'machine' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:21:9: 'machine'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:21:7: ( '=>' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:21:9: '=>'
             {
-            match("machine"); 
+            match("=>"); 
 
 
             }
@@ -280,29 +279,8 @@
         try {
             int _type = T__22;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:22:7: ( '=>' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:22:9: '=>'
-            {
-            match("=>"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__22"
-
-    // $ANTLR start "T__23"
-    public final void mT__23() throws RecognitionException {
-        try {
-            int _type = T__23;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:23:7: ( 'initial' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:23:9: 'initial'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:22:7: ( 'initial' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:22:9: 'initial'
             {
             match("initial"); 
 
@@ -315,17 +293,17 @@
         finally {
         }
     }
-    // $ANTLR end "T__23"
+    // $ANTLR end "T__22"
 
     // $ANTLR start "RULE_ID"
     public final void mRULE_ID() throws RecognitionException {
         try {
             int _type = RULE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2191:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2191:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1732:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1732:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2191:11: ( '^' )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1732:11: ( '^' )?
             int alt1=2;
             int LA1_0 = input.LA(1);
 
@@ -334,7 +312,7 @@
             }
             switch (alt1) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2191:11: '^'
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1732:11: '^'
                     {
                     match('^'); 
 
@@ -352,7 +330,7 @@
                 recover(mse);
                 throw mse;}
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2191:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1732:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             loop2:
             do {
                 int alt2=2;
@@ -401,10 +379,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2193:10: ( ( '0' .. '9' )+ )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2193:12: ( '0' .. '9' )+
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1734:10: ( ( '0' .. '9' )+ )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1734:12: ( '0' .. '9' )+
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2193:12: ( '0' .. '9' )+
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1734:12: ( '0' .. '9' )+
             int cnt3=0;
             loop3:
             do {
@@ -418,7 +396,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2193:13: '0' .. '9'
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1734:13: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -450,10 +428,10 @@
         try {
             int _type = RULE_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             int alt6=2;
             int LA6_0 = input.LA(1);
 
@@ -471,10 +449,10 @@
             }
             switch (alt6) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
                     {
                     match('\"'); 
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
                     loop4:
                     do {
                         int alt4=3;
@@ -490,7 +468,7 @@
 
                         switch (alt4) {
                     	case 1 :
-                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -506,7 +484,7 @@
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:66: ~ ( ( '\\\\' | '\"' ) )
+                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:66: ~ ( ( '\\\\' | '\"' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
                     	        input.consume();
@@ -531,10 +509,10 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
                     {
                     match('\''); 
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
                     loop5:
                     do {
                         int alt5=3;
@@ -550,7 +528,7 @@
 
                         switch (alt5) {
                     	case 1 :
-                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -566,7 +544,7 @@
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2195:137: ~ ( ( '\\\\' | '\\'' ) )
+                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1736:137: ~ ( ( '\\\\' | '\\'' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
                     	        input.consume();
@@ -609,12 +587,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2197:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2197:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1738:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1738:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*"); 
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2197:24: ( options {greedy=false; } : . )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1738:24: ( options {greedy=false; } : . )*
             loop7:
             do {
                 int alt7=2;
@@ -639,7 +617,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2197:52: .
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1738:52: .
             	    {
             	    matchAny(); 
 
@@ -669,12 +647,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2199:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2199:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1740:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1740:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("//"); 
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2199:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1740:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop8:
             do {
                 int alt8=2;
@@ -687,7 +665,7 @@
 
                 switch (alt8) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2199:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1740:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -707,7 +685,7 @@
                 }
             } while (true);
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2199:40: ( ( '\\r' )? '\\n' )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1740:40: ( ( '\\r' )? '\\n' )?
             int alt10=2;
             int LA10_0 = input.LA(1);
 
@@ -716,9 +694,9 @@
             }
             switch (alt10) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2199:41: ( '\\r' )? '\\n'
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1740:41: ( '\\r' )? '\\n'
                     {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2199:41: ( '\\r' )?
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1740:41: ( '\\r' )?
                     int alt9=2;
                     int LA9_0 = input.LA(1);
 
@@ -727,7 +705,7 @@
                     }
                     switch (alt9) {
                         case 1 :
-                            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2199:41: '\\r'
+                            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1740:41: '\\r'
                             {
                             match('\r'); 
 
@@ -759,10 +737,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2201:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2201:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1742:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1742:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2201:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1742:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt11=0;
             loop11:
             do {
@@ -816,8 +794,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2203:16: ( . )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2203:18: .
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1744:16: ( . )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1744:18: .
             {
             matchAny(); 
 
@@ -832,8 +810,8 @@
     // $ANTLR end "RULE_ANY_OTHER"
 
     public void mTokens() throws RecognitionException {
-        // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
-        int alt12=20;
+        // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+        int alt12=19;
         alt12 = dfa12.predict(input);
         switch (alt12) {
             case 1 :
@@ -921,56 +899,49 @@
                 }
                 break;
             case 13 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:82: T__23
-                {
-                mT__23(); 
-
-                }
-                break;
-            case 14 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:88: RULE_ID
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:82: RULE_ID
                 {
                 mRULE_ID(); 
 
                 }
                 break;
-            case 15 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:96: RULE_INT
+            case 14 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:90: RULE_INT
                 {
                 mRULE_INT(); 
 
                 }
                 break;
-            case 16 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:105: RULE_STRING
+            case 15 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:99: RULE_STRING
                 {
                 mRULE_STRING(); 
 
                 }
                 break;
-            case 17 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:117: RULE_ML_COMMENT
+            case 16 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:111: RULE_ML_COMMENT
                 {
                 mRULE_ML_COMMENT(); 
 
                 }
                 break;
-            case 18 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:133: RULE_SL_COMMENT
+            case 17 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:127: RULE_SL_COMMENT
                 {
                 mRULE_SL_COMMENT(); 
 
                 }
                 break;
-            case 19 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:149: RULE_WS
+            case 18 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:143: RULE_WS
                 {
                 mRULE_WS(); 
 
                 }
                 break;
-            case 20 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:157: RULE_ANY_OTHER
+            case 19 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1:151: RULE_ANY_OTHER
                 {
                 mRULE_ANY_OTHER(); 
 
@@ -984,81 +955,80 @@
 
     protected DFA12 dfa12 = new DFA12(this);
     static final String DFA12_eotS =
-        "\1\uffff\2\26\1\uffff\1\26\2\uffff\3\26\1\23\1\26\1\23\2\uffff"+
-        "\3\23\2\uffff\2\26\1\uffff\1\26\1\uffff\1\26\2\uffff\3\26\1\uffff"+
-        "\1\26\5\uffff\22\26\1\101\1\26\1\103\1\104\2\26\1\107\2\26\1\uffff"+
-        "\1\112\2\uffff\2\26\1\uffff\1\115\1\26\1\uffff\1\26\1\120\1\uffff"+
-        "\1\26\1\122\1\uffff\1\26\1\uffff\2\26\1\126\1\uffff";
+        "\1\uffff\2\25\1\uffff\1\25\2\uffff\2\25\1\22\1\25\1\22\2\uffff"+
+        "\3\22\2\uffff\2\25\1\uffff\1\25\1\uffff\1\25\2\uffff\2\25\1\uffff"+
+        "\1\25\5\uffff\20\25\1\74\1\25\1\76\2\25\1\101\2\25\1\uffff\1\104"+
+        "\1\uffff\2\25\1\uffff\1\107\1\25\1\uffff\1\25\1\112\1\uffff\1\25"+
+        "\1\114\1\uffff\1\25\1\uffff\2\25\1\120\1\uffff";
     static final String DFA12_eofS =
-        "\127\uffff";
+        "\121\uffff";
     static final String DFA12_minS =
-        "\1\0\1\141\1\164\1\uffff\1\166\2\uffff\1\141\1\145\1\157\1\76\1"+
-        "\156\1\101\2\uffff\2\0\1\52\2\uffff\1\144\1\143\1\uffff\1\141\1"+
-        "\uffff\1\145\2\uffff\1\154\1\142\1\155\1\uffff\1\151\5\uffff\1\165"+
-        "\1\150\1\164\1\156\2\165\1\160\1\164\1\154\1\151\1\145\1\164\1\145"+
-        "\1\147\1\157\1\151\1\145\1\156\1\60\1\163\2\60\1\165\1\141\1\60"+
-        "\1\145\1\141\1\uffff\1\60\2\uffff\1\156\1\154\1\uffff\1\60\1\143"+
-        "\1\uffff\1\144\1\60\1\uffff\1\150\1\60\1\uffff\1\151\1\uffff\1\156"+
-        "\1\145\1\60\1\uffff";
+        "\1\0\1\141\1\164\1\uffff\1\166\2\uffff\1\141\1\157\1\76\1\156\1"+
+        "\101\2\uffff\2\0\1\52\2\uffff\1\144\1\143\1\uffff\1\141\1\uffff"+
+        "\1\145\2\uffff\1\154\1\155\1\uffff\1\151\5\uffff\1\165\1\150\1\164"+
+        "\1\156\1\165\1\160\1\164\1\154\1\151\1\145\1\164\1\145\1\157\1\151"+
+        "\1\145\1\156\1\60\1\163\1\60\1\165\1\141\1\60\1\145\1\141\1\uffff"+
+        "\1\60\1\uffff\1\156\1\154\1\uffff\1\60\1\143\1\uffff\1\144\1\60"+
+        "\1\uffff\1\150\1\60\1\uffff\1\151\1\uffff\1\156\1\145\1\60\1\uffff";
     static final String DFA12_maxS =
-        "\1\uffff\1\157\1\164\1\uffff\1\166\2\uffff\1\141\1\145\1\157\1"+
-        "\76\1\156\1\172\2\uffff\2\uffff\1\57\2\uffff\1\144\1\143\1\uffff"+
-        "\1\141\1\uffff\1\145\2\uffff\1\154\1\142\1\155\1\uffff\1\151\5\uffff"+
-        "\1\165\1\150\1\164\1\156\2\165\1\160\1\164\1\154\1\151\1\145\1\164"+
-        "\1\145\1\147\1\157\1\151\1\145\1\156\1\172\1\163\2\172\1\165\1\141"+
-        "\1\172\1\145\1\141\1\uffff\1\172\2\uffff\1\156\1\154\1\uffff\1\172"+
-        "\1\143\1\uffff\1\144\1\172\1\uffff\1\150\1\172\1\uffff\1\151\1\uffff"+
-        "\1\156\1\145\1\172\1\uffff";
+        "\1\uffff\1\157\1\164\1\uffff\1\166\2\uffff\1\141\1\157\1\76\1\156"+
+        "\1\172\2\uffff\2\uffff\1\57\2\uffff\1\144\1\143\1\uffff\1\141\1"+
+        "\uffff\1\145\2\uffff\1\154\1\155\1\uffff\1\151\5\uffff\1\165\1\150"+
+        "\1\164\1\156\1\165\1\160\1\164\1\154\1\151\1\145\1\164\1\145\1\157"+
+        "\1\151\1\145\1\156\1\172\1\163\1\172\1\165\1\141\1\172\1\145\1\141"+
+        "\1\uffff\1\172\1\uffff\1\156\1\154\1\uffff\1\172\1\143\1\uffff\1"+
+        "\144\1\172\1\uffff\1\150\1\172\1\uffff\1\151\1\uffff\1\156\1\145"+
+        "\1\172\1\uffff";
     static final String DFA12_acceptS =
-        "\3\uffff\1\3\1\uffff\1\5\1\6\6\uffff\1\16\1\17\3\uffff\1\23\1\24"+
-        "\2\uffff\1\16\1\uffff\1\3\1\uffff\1\5\1\6\3\uffff\1\14\1\uffff\1"+
-        "\17\1\20\1\21\1\22\1\23\33\uffff\1\11\1\uffff\1\7\1\10\2\uffff\1"+
-        "\1\2\uffff\1\4\2\uffff\1\13\2\uffff\1\15\1\uffff\1\12\3\uffff\1"+
-        "\2";
+        "\3\uffff\1\3\1\uffff\1\5\1\6\5\uffff\1\15\1\16\3\uffff\1\22\1\23"+
+        "\2\uffff\1\15\1\uffff\1\3\1\uffff\1\5\1\6\2\uffff\1\13\1\uffff\1"+
+        "\16\1\17\1\20\1\21\1\22\30\uffff\1\10\1\uffff\1\7\2\uffff\1\1\2"+
+        "\uffff\1\4\2\uffff\1\12\2\uffff\1\14\1\uffff\1\11\3\uffff\1\2";
     static final String DFA12_specialS =
-        "\1\1\16\uffff\1\0\1\2\106\uffff}>";
+        "\1\1\15\uffff\1\2\1\0\101\uffff}>";
     static final String[] DFA12_transitionS = {
-            "\11\23\2\22\2\23\1\22\22\23\1\22\1\23\1\17\4\23\1\20\7\23\1"+
-            "\21\12\16\1\23\1\5\1\23\1\12\3\23\32\15\3\23\1\14\1\15\1\23"+
-            "\2\15\1\11\1\10\1\4\3\15\1\13\3\15\1\1\5\15\1\2\2\15\1\7\4\15"+
-            "\1\3\1\23\1\6\uff82\23",
-            "\1\25\15\uffff\1\24",
-            "\1\27",
+            "\11\22\2\21\2\22\1\21\22\22\1\21\1\22\1\16\4\22\1\17\7\22\1"+
+            "\20\12\15\1\22\1\5\1\22\1\11\3\22\32\14\3\22\1\13\1\14\1\22"+
+            "\2\14\1\10\1\14\1\4\3\14\1\12\3\14\1\1\5\14\1\2\2\14\1\7\4\14"+
+            "\1\3\1\22\1\6\uff82\22",
+            "\1\24\15\uffff\1\23",
+            "\1\26",
             "",
-            "\1\31",
+            "\1\30",
             "",
             "",
+            "\1\33",
             "\1\34",
             "\1\35",
             "\1\36",
-            "\1\37",
-            "\1\40",
-            "\32\26\4\uffff\1\26\1\uffff\32\26",
+            "\32\25\4\uffff\1\25\1\uffff\32\25",
             "",
             "",
-            "\0\42",
-            "\0\42",
-            "\1\43\4\uffff\1\44",
+            "\0\40",
+            "\0\40",
+            "\1\41\4\uffff\1\42",
             "",
             "",
+            "\1\44",
+            "\1\45",
+            "",
             "\1\46",
+            "",
             "\1\47",
             "",
-            "\1\50",
             "",
+            "\1\50",
             "\1\51",
             "",
-            "",
             "\1\52",
+            "",
+            "",
+            "",
+            "",
+            "",
             "\1\53",
             "\1\54",
-            "",
             "\1\55",
-            "",
-            "",
-            "",
-            "",
-            "",
             "\1\56",
             "\1\57",
             "\1\60",
@@ -1072,41 +1042,34 @@
             "\1\70",
             "\1\71",
             "\1\72",
-            "\1\73",
-            "\1\74",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\14\25\1\73\15\25",
             "\1\75",
-            "\1\76",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\77",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\14\26\1\100\15\26",
+            "\1\100",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\102",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
+            "\1\103",
+            "",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
+            "",
             "\1\105",
             "\1\106",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
+            "",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\110",
+            "",
             "\1\111",
-            "",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
-            "",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "",
             "\1\113",
-            "\1\114",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
+            "\1\115",
+            "",
             "\1\116",
-            "",
             "\1\117",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
-            "",
-            "\1\121",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
-            "",
-            "\1\123",
-            "",
-            "\1\124",
-            "\1\125",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             ""
     };
 
@@ -1140,7 +1103,7 @@
             this.transition = DFA12_transition;
         }
         public String getDescription() {
-            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
+            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             IntStream input = _input;
@@ -1150,9 +1113,9 @@
                         int LA12_15 = input.LA(1);
 
                         s = -1;
-                        if ( ((LA12_15>='\u0000' && LA12_15<='\uFFFF')) ) {s = 34;}
+                        if ( ((LA12_15>='\u0000' && LA12_15<='\uFFFF')) ) {s = 32;}
 
-                        else s = 19;
+                        else s = 18;
 
                         if ( s>=0 ) return s;
                         break;
@@ -1174,39 +1137,37 @@
 
                         else if ( (LA12_0=='v') ) {s = 7;}
 
-                        else if ( (LA12_0=='d') ) {s = 8;}
+                        else if ( (LA12_0=='c') ) {s = 8;}
 
-                        else if ( (LA12_0=='c') ) {s = 9;}
+                        else if ( (LA12_0=='=') ) {s = 9;}
 
-                        else if ( (LA12_0=='=') ) {s = 10;}
+                        else if ( (LA12_0=='i') ) {s = 10;}
 
-                        else if ( (LA12_0=='i') ) {s = 11;}
+                        else if ( (LA12_0=='^') ) {s = 11;}
 
-                        else if ( (LA12_0=='^') ) {s = 12;}
+                        else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='b')||LA12_0=='d'||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='l')||(LA12_0>='n' && LA12_0<='r')||(LA12_0>='t' && LA12_0<='u')||(LA12_0>='w' && LA12_0<='z')) ) {s = 12;}
 
-                        else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='b')||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='l')||(LA12_0>='n' && LA12_0<='r')||(LA12_0>='t' && LA12_0<='u')||(LA12_0>='w' && LA12_0<='z')) ) {s = 13;}
+                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 13;}
 
-                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 14;}
+                        else if ( (LA12_0=='\"') ) {s = 14;}
 
-                        else if ( (LA12_0=='\"') ) {s = 15;}
+                        else if ( (LA12_0=='\'') ) {s = 15;}
 
-                        else if ( (LA12_0=='\'') ) {s = 16;}
+                        else if ( (LA12_0=='/') ) {s = 16;}
 
-                        else if ( (LA12_0=='/') ) {s = 17;}
+                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 17;}
 
-                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 18;}
-
-                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='(' && LA12_0<='.')||LA12_0==':'||LA12_0=='<'||(LA12_0>='>' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 19;}
+                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='(' && LA12_0<='.')||LA12_0==':'||LA12_0=='<'||(LA12_0>='>' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 18;}
 
                         if ( s>=0 ) return s;
                         break;
                     case 2 : 
-                        int LA12_16 = input.LA(1);
+                        int LA12_14 = input.LA(1);
 
                         s = -1;
-                        if ( ((LA12_16>='\u0000' && LA12_16<='\uFFFF')) ) {s = 34;}
+                        if ( ((LA12_14>='\u0000' && LA12_14<='\uFFFF')) ) {s = 32;}
 
-                        else s = 19;
+                        else s = 18;
 
                         if ( s>=0 ) return s;
                         break;
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStatesParser.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStatesParser.java
index 1583c02..73d984e 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStatesParser.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStatesParser.java
@@ -23,12 +23,11 @@
 @SuppressWarnings("all")
 public class InternalStatesParser extends AbstractInternalContentAssistParser {
     public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'module'", "'statemachine'", "'{'", "'events'", "';'", "'}'", "'value'", "'debug'", "'state'", "'compound'", "'machine'", "'=>'", "'initial'"
+        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'module'", "'statemachine'", "'{'", "'events'", "';'", "'}'", "'value'", "'state'", "'compound'", "'machine'", "'=>'", "'initial'"
     };
     public static final int RULE_ML_COMMENT=7;
     public static final int T__12=12;
     public static final int RULE_ID=5;
-    public static final int T__23=23;
     public static final int T__20=20;
     public static final int T__13=13;
     public static final int RULE_STRING=4;
@@ -623,21 +622,21 @@
     // $ANTLR end "ruleTransition"
 
 
-    // $ANTLR start "rule__Module__NameAlternatives_1_0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:257:1: rule__Module__NameAlternatives_1_0 : ( ( RULE_STRING ) | ( RULE_ID ) );
-    public final void rule__Module__NameAlternatives_1_0() throws RecognitionException {
+    // $ANTLR start "rule__State__Alternatives"
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:257:1: rule__State__Alternatives : ( ( ruleSimpleState ) | ( ruleCompoundState ) );
+    public final void rule__State__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:261:1: ( ( RULE_STRING ) | ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:261:1: ( ( ruleSimpleState ) | ( ruleCompoundState ) )
             int alt1=2;
             int LA1_0 = input.LA(1);
 
-            if ( (LA1_0==RULE_STRING) ) {
+            if ( (LA1_0==18||LA1_0==22) ) {
                 alt1=1;
             }
-            else if ( (LA1_0==RULE_ID) ) {
+            else if ( (LA1_0==19) ) {
                 alt1=2;
             }
             else {
@@ -648,84 +647,13 @@
             }
             switch (alt1) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:262:1: ( RULE_STRING )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:262:1: ( ruleSimpleState )
                     {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:262:1: ( RULE_STRING )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:263:1: RULE_STRING
-                    {
-                     before(grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0_0()); 
-                    match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Module__NameAlternatives_1_0490); 
-                     after(grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0_0()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:268:6: ( RULE_ID )
-                    {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:268:6: ( RULE_ID )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:269:1: RULE_ID
-                    {
-                     before(grammarAccess.getModuleAccess().getNameIDTerminalRuleCall_1_0_1()); 
-                    match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Module__NameAlternatives_1_0507); 
-                     after(grammarAccess.getModuleAccess().getNameIDTerminalRuleCall_1_0_1()); 
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Module__NameAlternatives_1_0"
-
-
-    // $ANTLR start "rule__State__Alternatives"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:279:1: rule__State__Alternatives : ( ( ruleSimpleState ) | ( ruleCompoundState ) );
-    public final void rule__State__Alternatives() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:283:1: ( ( ruleSimpleState ) | ( ruleCompoundState ) )
-            int alt2=2;
-            int LA2_0 = input.LA(1);
-
-            if ( (LA2_0==19||LA2_0==23) ) {
-                alt2=1;
-            }
-            else if ( (LA2_0==20) ) {
-                alt2=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 2, 0, input);
-
-                throw nvae;
-            }
-            switch (alt2) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:284:1: ( ruleSimpleState )
-                    {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:284:1: ( ruleSimpleState )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:285:1: ruleSimpleState
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:262:1: ( ruleSimpleState )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:263:1: ruleSimpleState
                     {
                      before(grammarAccess.getStateAccess().getSimpleStateParserRuleCall_0()); 
-                    pushFollow(FOLLOW_ruleSimpleState_in_rule__State__Alternatives539);
+                    pushFollow(FOLLOW_ruleSimpleState_in_rule__State__Alternatives490);
                     ruleSimpleState();
 
                     state._fsp--;
@@ -738,13 +666,13 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:290:6: ( ruleCompoundState )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:268:6: ( ruleCompoundState )
                     {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:290:6: ( ruleCompoundState )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:291:1: ruleCompoundState
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:268:6: ( ruleCompoundState )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:269:1: ruleCompoundState
                     {
                      before(grammarAccess.getStateAccess().getCompoundStateParserRuleCall_1()); 
-                    pushFollow(FOLLOW_ruleCompoundState_in_rule__State__Alternatives556);
+                    pushFollow(FOLLOW_ruleCompoundState_in_rule__State__Alternatives507);
                     ruleCompoundState();
 
                     state._fsp--;
@@ -774,21 +702,21 @@
 
 
     // $ANTLR start "rule__Module__Group__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:303:1: rule__Module__Group__0 : rule__Module__Group__0__Impl rule__Module__Group__1 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:281:1: rule__Module__Group__0 : rule__Module__Group__0__Impl rule__Module__Group__1 ;
     public final void rule__Module__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:307:1: ( rule__Module__Group__0__Impl rule__Module__Group__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:308:2: rule__Module__Group__0__Impl rule__Module__Group__1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:285:1: ( rule__Module__Group__0__Impl rule__Module__Group__1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:286:2: rule__Module__Group__0__Impl rule__Module__Group__1
             {
-            pushFollow(FOLLOW_rule__Module__Group__0__Impl_in_rule__Module__Group__0586);
+            pushFollow(FOLLOW_rule__Module__Group__0__Impl_in_rule__Module__Group__0537);
             rule__Module__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Module__Group__1_in_rule__Module__Group__0589);
+            pushFollow(FOLLOW_rule__Module__Group__1_in_rule__Module__Group__0540);
             rule__Module__Group__1();
 
             state._fsp--;
@@ -812,20 +740,20 @@
 
 
     // $ANTLR start "rule__Module__Group__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:315:1: rule__Module__Group__0__Impl : ( 'module' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:293:1: rule__Module__Group__0__Impl : ( 'module' ) ;
     public final void rule__Module__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:319:1: ( ( 'module' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:320:1: ( 'module' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:297:1: ( ( 'module' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:298:1: ( 'module' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:320:1: ( 'module' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:321:1: 'module'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:298:1: ( 'module' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:299:1: 'module'
             {
              before(grammarAccess.getModuleAccess().getModuleKeyword_0()); 
-            match(input,11,FOLLOW_11_in_rule__Module__Group__0__Impl617); 
+            match(input,11,FOLLOW_11_in_rule__Module__Group__0__Impl568); 
              after(grammarAccess.getModuleAccess().getModuleKeyword_0()); 
 
             }
@@ -849,21 +777,21 @@
 
 
     // $ANTLR start "rule__Module__Group__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:334:1: rule__Module__Group__1 : rule__Module__Group__1__Impl rule__Module__Group__2 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:312:1: rule__Module__Group__1 : rule__Module__Group__1__Impl rule__Module__Group__2 ;
     public final void rule__Module__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:338:1: ( rule__Module__Group__1__Impl rule__Module__Group__2 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:339:2: rule__Module__Group__1__Impl rule__Module__Group__2
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:316:1: ( rule__Module__Group__1__Impl rule__Module__Group__2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:317:2: rule__Module__Group__1__Impl rule__Module__Group__2
             {
-            pushFollow(FOLLOW_rule__Module__Group__1__Impl_in_rule__Module__Group__1648);
+            pushFollow(FOLLOW_rule__Module__Group__1__Impl_in_rule__Module__Group__1599);
             rule__Module__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Module__Group__2_in_rule__Module__Group__1651);
+            pushFollow(FOLLOW_rule__Module__Group__2_in_rule__Module__Group__1602);
             rule__Module__Group__2();
 
             state._fsp--;
@@ -887,23 +815,23 @@
 
 
     // $ANTLR start "rule__Module__Group__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:346:1: rule__Module__Group__1__Impl : ( ( rule__Module__NameAssignment_1 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:324:1: rule__Module__Group__1__Impl : ( ( rule__Module__NameAssignment_1 ) ) ;
     public final void rule__Module__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:350:1: ( ( ( rule__Module__NameAssignment_1 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:351:1: ( ( rule__Module__NameAssignment_1 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:328:1: ( ( ( rule__Module__NameAssignment_1 ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:329:1: ( ( rule__Module__NameAssignment_1 ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:351:1: ( ( rule__Module__NameAssignment_1 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:352:1: ( rule__Module__NameAssignment_1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:329:1: ( ( rule__Module__NameAssignment_1 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:330:1: ( rule__Module__NameAssignment_1 )
             {
              before(grammarAccess.getModuleAccess().getNameAssignment_1()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:353:1: ( rule__Module__NameAssignment_1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:353:2: rule__Module__NameAssignment_1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:331:1: ( rule__Module__NameAssignment_1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:331:2: rule__Module__NameAssignment_1
             {
-            pushFollow(FOLLOW_rule__Module__NameAssignment_1_in_rule__Module__Group__1__Impl678);
+            pushFollow(FOLLOW_rule__Module__NameAssignment_1_in_rule__Module__Group__1__Impl629);
             rule__Module__NameAssignment_1();
 
             state._fsp--;
@@ -934,16 +862,16 @@
 
 
     // $ANTLR start "rule__Module__Group__2"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:363:1: rule__Module__Group__2 : rule__Module__Group__2__Impl ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:341:1: rule__Module__Group__2 : rule__Module__Group__2__Impl ;
     public final void rule__Module__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:367:1: ( rule__Module__Group__2__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:368:2: rule__Module__Group__2__Impl
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:345:1: ( rule__Module__Group__2__Impl )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:346:2: rule__Module__Group__2__Impl
             {
-            pushFollow(FOLLOW_rule__Module__Group__2__Impl_in_rule__Module__Group__2708);
+            pushFollow(FOLLOW_rule__Module__Group__2__Impl_in_rule__Module__Group__2659);
             rule__Module__Group__2__Impl();
 
             state._fsp--;
@@ -967,35 +895,35 @@
 
 
     // $ANTLR start "rule__Module__Group__2__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:374:1: rule__Module__Group__2__Impl : ( ( rule__Module__MachinesAssignment_2 )* ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:352:1: rule__Module__Group__2__Impl : ( ( rule__Module__MachinesAssignment_2 )* ) ;
     public final void rule__Module__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:378:1: ( ( ( rule__Module__MachinesAssignment_2 )* ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:379:1: ( ( rule__Module__MachinesAssignment_2 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:356:1: ( ( ( rule__Module__MachinesAssignment_2 )* ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:357:1: ( ( rule__Module__MachinesAssignment_2 )* )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:379:1: ( ( rule__Module__MachinesAssignment_2 )* )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:380:1: ( rule__Module__MachinesAssignment_2 )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:357:1: ( ( rule__Module__MachinesAssignment_2 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:358:1: ( rule__Module__MachinesAssignment_2 )*
             {
              before(grammarAccess.getModuleAccess().getMachinesAssignment_2()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:381:1: ( rule__Module__MachinesAssignment_2 )*
-            loop3:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:359:1: ( rule__Module__MachinesAssignment_2 )*
+            loop2:
             do {
-                int alt3=2;
-                int LA3_0 = input.LA(1);
+                int alt2=2;
+                int LA2_0 = input.LA(1);
 
-                if ( (LA3_0==12||LA3_0==23) ) {
-                    alt3=1;
+                if ( (LA2_0==12||LA2_0==22) ) {
+                    alt2=1;
                 }
 
 
-                switch (alt3) {
+                switch (alt2) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:381:2: rule__Module__MachinesAssignment_2
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:359:2: rule__Module__MachinesAssignment_2
             	    {
-            	    pushFollow(FOLLOW_rule__Module__MachinesAssignment_2_in_rule__Module__Group__2__Impl735);
+            	    pushFollow(FOLLOW_rule__Module__MachinesAssignment_2_in_rule__Module__Group__2__Impl686);
             	    rule__Module__MachinesAssignment_2();
 
             	    state._fsp--;
@@ -1005,7 +933,7 @@
             	    break;
 
             	default :
-            	    break loop3;
+            	    break loop2;
                 }
             } while (true);
 
@@ -1032,21 +960,21 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:397:1: rule__Statemachine__Group__0 : rule__Statemachine__Group__0__Impl rule__Statemachine__Group__1 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:375:1: rule__Statemachine__Group__0 : rule__Statemachine__Group__0__Impl rule__Statemachine__Group__1 ;
     public final void rule__Statemachine__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:401:1: ( rule__Statemachine__Group__0__Impl rule__Statemachine__Group__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:402:2: rule__Statemachine__Group__0__Impl rule__Statemachine__Group__1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:379:1: ( rule__Statemachine__Group__0__Impl rule__Statemachine__Group__1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:380:2: rule__Statemachine__Group__0__Impl rule__Statemachine__Group__1
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__0__Impl_in_rule__Statemachine__Group__0772);
+            pushFollow(FOLLOW_rule__Statemachine__Group__0__Impl_in_rule__Statemachine__Group__0723);
             rule__Statemachine__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__1_in_rule__Statemachine__Group__0775);
+            pushFollow(FOLLOW_rule__Statemachine__Group__1_in_rule__Statemachine__Group__0726);
             rule__Statemachine__Group__1();
 
             state._fsp--;
@@ -1070,31 +998,31 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:409:1: rule__Statemachine__Group__0__Impl : ( ( rule__Statemachine__InitialAssignment_0 )? ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:387:1: rule__Statemachine__Group__0__Impl : ( ( rule__Statemachine__InitialAssignment_0 )? ) ;
     public final void rule__Statemachine__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:413:1: ( ( ( rule__Statemachine__InitialAssignment_0 )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:414:1: ( ( rule__Statemachine__InitialAssignment_0 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:391:1: ( ( ( rule__Statemachine__InitialAssignment_0 )? ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:392:1: ( ( rule__Statemachine__InitialAssignment_0 )? )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:414:1: ( ( rule__Statemachine__InitialAssignment_0 )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:415:1: ( rule__Statemachine__InitialAssignment_0 )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:392:1: ( ( rule__Statemachine__InitialAssignment_0 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:393:1: ( rule__Statemachine__InitialAssignment_0 )?
             {
              before(grammarAccess.getStatemachineAccess().getInitialAssignment_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:416:1: ( rule__Statemachine__InitialAssignment_0 )?
-            int alt4=2;
-            int LA4_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:394:1: ( rule__Statemachine__InitialAssignment_0 )?
+            int alt3=2;
+            int LA3_0 = input.LA(1);
 
-            if ( (LA4_0==23) ) {
-                alt4=1;
+            if ( (LA3_0==22) ) {
+                alt3=1;
             }
-            switch (alt4) {
+            switch (alt3) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:416:2: rule__Statemachine__InitialAssignment_0
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:394:2: rule__Statemachine__InitialAssignment_0
                     {
-                    pushFollow(FOLLOW_rule__Statemachine__InitialAssignment_0_in_rule__Statemachine__Group__0__Impl802);
+                    pushFollow(FOLLOW_rule__Statemachine__InitialAssignment_0_in_rule__Statemachine__Group__0__Impl753);
                     rule__Statemachine__InitialAssignment_0();
 
                     state._fsp--;
@@ -1128,21 +1056,21 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:426:1: rule__Statemachine__Group__1 : rule__Statemachine__Group__1__Impl rule__Statemachine__Group__2 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:404:1: rule__Statemachine__Group__1 : rule__Statemachine__Group__1__Impl rule__Statemachine__Group__2 ;
     public final void rule__Statemachine__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:430:1: ( rule__Statemachine__Group__1__Impl rule__Statemachine__Group__2 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:431:2: rule__Statemachine__Group__1__Impl rule__Statemachine__Group__2
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:408:1: ( rule__Statemachine__Group__1__Impl rule__Statemachine__Group__2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:409:2: rule__Statemachine__Group__1__Impl rule__Statemachine__Group__2
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__1__Impl_in_rule__Statemachine__Group__1833);
+            pushFollow(FOLLOW_rule__Statemachine__Group__1__Impl_in_rule__Statemachine__Group__1784);
             rule__Statemachine__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__2_in_rule__Statemachine__Group__1836);
+            pushFollow(FOLLOW_rule__Statemachine__Group__2_in_rule__Statemachine__Group__1787);
             rule__Statemachine__Group__2();
 
             state._fsp--;
@@ -1166,20 +1094,20 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:438:1: rule__Statemachine__Group__1__Impl : ( 'statemachine' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:416:1: rule__Statemachine__Group__1__Impl : ( 'statemachine' ) ;
     public final void rule__Statemachine__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:442:1: ( ( 'statemachine' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:443:1: ( 'statemachine' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:420:1: ( ( 'statemachine' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:421:1: ( 'statemachine' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:443:1: ( 'statemachine' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:444:1: 'statemachine'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:421:1: ( 'statemachine' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:422:1: 'statemachine'
             {
              before(grammarAccess.getStatemachineAccess().getStatemachineKeyword_1()); 
-            match(input,12,FOLLOW_12_in_rule__Statemachine__Group__1__Impl864); 
+            match(input,12,FOLLOW_12_in_rule__Statemachine__Group__1__Impl815); 
              after(grammarAccess.getStatemachineAccess().getStatemachineKeyword_1()); 
 
             }
@@ -1203,21 +1131,21 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__2"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:457:1: rule__Statemachine__Group__2 : rule__Statemachine__Group__2__Impl rule__Statemachine__Group__3 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:435:1: rule__Statemachine__Group__2 : rule__Statemachine__Group__2__Impl rule__Statemachine__Group__3 ;
     public final void rule__Statemachine__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:461:1: ( rule__Statemachine__Group__2__Impl rule__Statemachine__Group__3 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:462:2: rule__Statemachine__Group__2__Impl rule__Statemachine__Group__3
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:439:1: ( rule__Statemachine__Group__2__Impl rule__Statemachine__Group__3 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:440:2: rule__Statemachine__Group__2__Impl rule__Statemachine__Group__3
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__2__Impl_in_rule__Statemachine__Group__2895);
+            pushFollow(FOLLOW_rule__Statemachine__Group__2__Impl_in_rule__Statemachine__Group__2846);
             rule__Statemachine__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__3_in_rule__Statemachine__Group__2898);
+            pushFollow(FOLLOW_rule__Statemachine__Group__3_in_rule__Statemachine__Group__2849);
             rule__Statemachine__Group__3();
 
             state._fsp--;
@@ -1241,23 +1169,23 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__2__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:469:1: rule__Statemachine__Group__2__Impl : ( ( rule__Statemachine__NameAssignment_2 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:447:1: rule__Statemachine__Group__2__Impl : ( ( rule__Statemachine__NameAssignment_2 ) ) ;
     public final void rule__Statemachine__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:473:1: ( ( ( rule__Statemachine__NameAssignment_2 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:474:1: ( ( rule__Statemachine__NameAssignment_2 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:451:1: ( ( ( rule__Statemachine__NameAssignment_2 ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:452:1: ( ( rule__Statemachine__NameAssignment_2 ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:474:1: ( ( rule__Statemachine__NameAssignment_2 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:475:1: ( rule__Statemachine__NameAssignment_2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:452:1: ( ( rule__Statemachine__NameAssignment_2 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:453:1: ( rule__Statemachine__NameAssignment_2 )
             {
              before(grammarAccess.getStatemachineAccess().getNameAssignment_2()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:476:1: ( rule__Statemachine__NameAssignment_2 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:476:2: rule__Statemachine__NameAssignment_2
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:454:1: ( rule__Statemachine__NameAssignment_2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:454:2: rule__Statemachine__NameAssignment_2
             {
-            pushFollow(FOLLOW_rule__Statemachine__NameAssignment_2_in_rule__Statemachine__Group__2__Impl925);
+            pushFollow(FOLLOW_rule__Statemachine__NameAssignment_2_in_rule__Statemachine__Group__2__Impl876);
             rule__Statemachine__NameAssignment_2();
 
             state._fsp--;
@@ -1288,21 +1216,21 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__3"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:486:1: rule__Statemachine__Group__3 : rule__Statemachine__Group__3__Impl rule__Statemachine__Group__4 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:464:1: rule__Statemachine__Group__3 : rule__Statemachine__Group__3__Impl rule__Statemachine__Group__4 ;
     public final void rule__Statemachine__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:490:1: ( rule__Statemachine__Group__3__Impl rule__Statemachine__Group__4 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:491:2: rule__Statemachine__Group__3__Impl rule__Statemachine__Group__4
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:468:1: ( rule__Statemachine__Group__3__Impl rule__Statemachine__Group__4 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:469:2: rule__Statemachine__Group__3__Impl rule__Statemachine__Group__4
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__3__Impl_in_rule__Statemachine__Group__3955);
+            pushFollow(FOLLOW_rule__Statemachine__Group__3__Impl_in_rule__Statemachine__Group__3906);
             rule__Statemachine__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__4_in_rule__Statemachine__Group__3958);
+            pushFollow(FOLLOW_rule__Statemachine__Group__4_in_rule__Statemachine__Group__3909);
             rule__Statemachine__Group__4();
 
             state._fsp--;
@@ -1326,31 +1254,31 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__3__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:498:1: rule__Statemachine__Group__3__Impl : ( ( rule__Statemachine__Group_3__0 )? ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:476:1: rule__Statemachine__Group__3__Impl : ( ( rule__Statemachine__Group_3__0 )? ) ;
     public final void rule__Statemachine__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:502:1: ( ( ( rule__Statemachine__Group_3__0 )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:503:1: ( ( rule__Statemachine__Group_3__0 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:480:1: ( ( ( rule__Statemachine__Group_3__0 )? ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:481:1: ( ( rule__Statemachine__Group_3__0 )? )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:503:1: ( ( rule__Statemachine__Group_3__0 )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:504:1: ( rule__Statemachine__Group_3__0 )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:481:1: ( ( rule__Statemachine__Group_3__0 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:482:1: ( rule__Statemachine__Group_3__0 )?
             {
              before(grammarAccess.getStatemachineAccess().getGroup_3()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:505:1: ( rule__Statemachine__Group_3__0 )?
-            int alt5=2;
-            int LA5_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:483:1: ( rule__Statemachine__Group_3__0 )?
+            int alt4=2;
+            int LA4_0 = input.LA(1);
 
-            if ( (LA5_0==17) ) {
-                alt5=1;
+            if ( (LA4_0==17) ) {
+                alt4=1;
             }
-            switch (alt5) {
+            switch (alt4) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:505:2: rule__Statemachine__Group_3__0
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:483:2: rule__Statemachine__Group_3__0
                     {
-                    pushFollow(FOLLOW_rule__Statemachine__Group_3__0_in_rule__Statemachine__Group__3__Impl985);
+                    pushFollow(FOLLOW_rule__Statemachine__Group_3__0_in_rule__Statemachine__Group__3__Impl936);
                     rule__Statemachine__Group_3__0();
 
                     state._fsp--;
@@ -1384,21 +1312,21 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__4"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:515:1: rule__Statemachine__Group__4 : rule__Statemachine__Group__4__Impl rule__Statemachine__Group__5 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:493:1: rule__Statemachine__Group__4 : rule__Statemachine__Group__4__Impl rule__Statemachine__Group__5 ;
     public final void rule__Statemachine__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:519:1: ( rule__Statemachine__Group__4__Impl rule__Statemachine__Group__5 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:520:2: rule__Statemachine__Group__4__Impl rule__Statemachine__Group__5
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:497:1: ( rule__Statemachine__Group__4__Impl rule__Statemachine__Group__5 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:498:2: rule__Statemachine__Group__4__Impl rule__Statemachine__Group__5
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__4__Impl_in_rule__Statemachine__Group__41016);
+            pushFollow(FOLLOW_rule__Statemachine__Group__4__Impl_in_rule__Statemachine__Group__4967);
             rule__Statemachine__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__5_in_rule__Statemachine__Group__41019);
+            pushFollow(FOLLOW_rule__Statemachine__Group__5_in_rule__Statemachine__Group__4970);
             rule__Statemachine__Group__5();
 
             state._fsp--;
@@ -1422,20 +1350,20 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__4__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:527:1: rule__Statemachine__Group__4__Impl : ( '{' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:505:1: rule__Statemachine__Group__4__Impl : ( '{' ) ;
     public final void rule__Statemachine__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:531:1: ( ( '{' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:532:1: ( '{' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:509:1: ( ( '{' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:510:1: ( '{' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:532:1: ( '{' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:533:1: '{'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:510:1: ( '{' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:511:1: '{'
             {
              before(grammarAccess.getStatemachineAccess().getLeftCurlyBracketKeyword_4()); 
-            match(input,13,FOLLOW_13_in_rule__Statemachine__Group__4__Impl1047); 
+            match(input,13,FOLLOW_13_in_rule__Statemachine__Group__4__Impl998); 
              after(grammarAccess.getStatemachineAccess().getLeftCurlyBracketKeyword_4()); 
 
             }
@@ -1459,21 +1387,21 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__5"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:546:1: rule__Statemachine__Group__5 : rule__Statemachine__Group__5__Impl rule__Statemachine__Group__6 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:524:1: rule__Statemachine__Group__5 : rule__Statemachine__Group__5__Impl rule__Statemachine__Group__6 ;
     public final void rule__Statemachine__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:550:1: ( rule__Statemachine__Group__5__Impl rule__Statemachine__Group__6 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:551:2: rule__Statemachine__Group__5__Impl rule__Statemachine__Group__6
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:528:1: ( rule__Statemachine__Group__5__Impl rule__Statemachine__Group__6 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:529:2: rule__Statemachine__Group__5__Impl rule__Statemachine__Group__6
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__5__Impl_in_rule__Statemachine__Group__51078);
+            pushFollow(FOLLOW_rule__Statemachine__Group__5__Impl_in_rule__Statemachine__Group__51029);
             rule__Statemachine__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__6_in_rule__Statemachine__Group__51081);
+            pushFollow(FOLLOW_rule__Statemachine__Group__6_in_rule__Statemachine__Group__51032);
             rule__Statemachine__Group__6();
 
             state._fsp--;
@@ -1497,20 +1425,20 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__5__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:558:1: rule__Statemachine__Group__5__Impl : ( 'events' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:536:1: rule__Statemachine__Group__5__Impl : ( 'events' ) ;
     public final void rule__Statemachine__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:562:1: ( ( 'events' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:563:1: ( 'events' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:540:1: ( ( 'events' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:541:1: ( 'events' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:563:1: ( 'events' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:564:1: 'events'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:541:1: ( 'events' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:542:1: 'events'
             {
              before(grammarAccess.getStatemachineAccess().getEventsKeyword_5()); 
-            match(input,14,FOLLOW_14_in_rule__Statemachine__Group__5__Impl1109); 
+            match(input,14,FOLLOW_14_in_rule__Statemachine__Group__5__Impl1060); 
              after(grammarAccess.getStatemachineAccess().getEventsKeyword_5()); 
 
             }
@@ -1534,21 +1462,21 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__6"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:577:1: rule__Statemachine__Group__6 : rule__Statemachine__Group__6__Impl rule__Statemachine__Group__7 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:555:1: rule__Statemachine__Group__6 : rule__Statemachine__Group__6__Impl rule__Statemachine__Group__7 ;
     public final void rule__Statemachine__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:581:1: ( rule__Statemachine__Group__6__Impl rule__Statemachine__Group__7 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:582:2: rule__Statemachine__Group__6__Impl rule__Statemachine__Group__7
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:559:1: ( rule__Statemachine__Group__6__Impl rule__Statemachine__Group__7 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:560:2: rule__Statemachine__Group__6__Impl rule__Statemachine__Group__7
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__6__Impl_in_rule__Statemachine__Group__61140);
+            pushFollow(FOLLOW_rule__Statemachine__Group__6__Impl_in_rule__Statemachine__Group__61091);
             rule__Statemachine__Group__6__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__7_in_rule__Statemachine__Group__61143);
+            pushFollow(FOLLOW_rule__Statemachine__Group__7_in_rule__Statemachine__Group__61094);
             rule__Statemachine__Group__7();
 
             state._fsp--;
@@ -1572,35 +1500,35 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__6__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:589:1: rule__Statemachine__Group__6__Impl : ( ( rule__Statemachine__EventsAssignment_6 )* ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:567:1: rule__Statemachine__Group__6__Impl : ( ( rule__Statemachine__EventsAssignment_6 )* ) ;
     public final void rule__Statemachine__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:593:1: ( ( ( rule__Statemachine__EventsAssignment_6 )* ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:594:1: ( ( rule__Statemachine__EventsAssignment_6 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:571:1: ( ( ( rule__Statemachine__EventsAssignment_6 )* ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:572:1: ( ( rule__Statemachine__EventsAssignment_6 )* )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:594:1: ( ( rule__Statemachine__EventsAssignment_6 )* )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:595:1: ( rule__Statemachine__EventsAssignment_6 )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:572:1: ( ( rule__Statemachine__EventsAssignment_6 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:573:1: ( rule__Statemachine__EventsAssignment_6 )*
             {
              before(grammarAccess.getStatemachineAccess().getEventsAssignment_6()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:596:1: ( rule__Statemachine__EventsAssignment_6 )*
-            loop6:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:574:1: ( rule__Statemachine__EventsAssignment_6 )*
+            loop5:
             do {
-                int alt6=2;
-                int LA6_0 = input.LA(1);
+                int alt5=2;
+                int LA5_0 = input.LA(1);
 
-                if ( (LA6_0==RULE_ID) ) {
-                    alt6=1;
+                if ( (LA5_0==RULE_ID) ) {
+                    alt5=1;
                 }
 
 
-                switch (alt6) {
+                switch (alt5) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:596:2: rule__Statemachine__EventsAssignment_6
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:574:2: rule__Statemachine__EventsAssignment_6
             	    {
-            	    pushFollow(FOLLOW_rule__Statemachine__EventsAssignment_6_in_rule__Statemachine__Group__6__Impl1170);
+            	    pushFollow(FOLLOW_rule__Statemachine__EventsAssignment_6_in_rule__Statemachine__Group__6__Impl1121);
             	    rule__Statemachine__EventsAssignment_6();
 
             	    state._fsp--;
@@ -1610,7 +1538,7 @@
             	    break;
 
             	default :
-            	    break loop6;
+            	    break loop5;
                 }
             } while (true);
 
@@ -1637,21 +1565,21 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__7"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:606:1: rule__Statemachine__Group__7 : rule__Statemachine__Group__7__Impl rule__Statemachine__Group__8 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:584:1: rule__Statemachine__Group__7 : rule__Statemachine__Group__7__Impl rule__Statemachine__Group__8 ;
     public final void rule__Statemachine__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:610:1: ( rule__Statemachine__Group__7__Impl rule__Statemachine__Group__8 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:611:2: rule__Statemachine__Group__7__Impl rule__Statemachine__Group__8
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:588:1: ( rule__Statemachine__Group__7__Impl rule__Statemachine__Group__8 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:589:2: rule__Statemachine__Group__7__Impl rule__Statemachine__Group__8
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__7__Impl_in_rule__Statemachine__Group__71201);
+            pushFollow(FOLLOW_rule__Statemachine__Group__7__Impl_in_rule__Statemachine__Group__71152);
             rule__Statemachine__Group__7__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__8_in_rule__Statemachine__Group__71204);
+            pushFollow(FOLLOW_rule__Statemachine__Group__8_in_rule__Statemachine__Group__71155);
             rule__Statemachine__Group__8();
 
             state._fsp--;
@@ -1675,20 +1603,20 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__7__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:618:1: rule__Statemachine__Group__7__Impl : ( ';' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:596:1: rule__Statemachine__Group__7__Impl : ( ';' ) ;
     public final void rule__Statemachine__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:622:1: ( ( ';' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:623:1: ( ';' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:600:1: ( ( ';' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:601:1: ( ';' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:623:1: ( ';' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:624:1: ';'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:601:1: ( ';' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:602:1: ';'
             {
              before(grammarAccess.getStatemachineAccess().getSemicolonKeyword_7()); 
-            match(input,15,FOLLOW_15_in_rule__Statemachine__Group__7__Impl1232); 
+            match(input,15,FOLLOW_15_in_rule__Statemachine__Group__7__Impl1183); 
              after(grammarAccess.getStatemachineAccess().getSemicolonKeyword_7()); 
 
             }
@@ -1712,21 +1640,21 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__8"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:637:1: rule__Statemachine__Group__8 : rule__Statemachine__Group__8__Impl rule__Statemachine__Group__9 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:615:1: rule__Statemachine__Group__8 : rule__Statemachine__Group__8__Impl rule__Statemachine__Group__9 ;
     public final void rule__Statemachine__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:641:1: ( rule__Statemachine__Group__8__Impl rule__Statemachine__Group__9 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:642:2: rule__Statemachine__Group__8__Impl rule__Statemachine__Group__9
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:619:1: ( rule__Statemachine__Group__8__Impl rule__Statemachine__Group__9 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:620:2: rule__Statemachine__Group__8__Impl rule__Statemachine__Group__9
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__8__Impl_in_rule__Statemachine__Group__81263);
+            pushFollow(FOLLOW_rule__Statemachine__Group__8__Impl_in_rule__Statemachine__Group__81214);
             rule__Statemachine__Group__8__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__9_in_rule__Statemachine__Group__81266);
+            pushFollow(FOLLOW_rule__Statemachine__Group__9_in_rule__Statemachine__Group__81217);
             rule__Statemachine__Group__9();
 
             state._fsp--;
@@ -1750,35 +1678,35 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__8__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:649:1: rule__Statemachine__Group__8__Impl : ( ( rule__Statemachine__StatesAssignment_8 )* ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:627:1: rule__Statemachine__Group__8__Impl : ( ( rule__Statemachine__StatesAssignment_8 )* ) ;
     public final void rule__Statemachine__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:653:1: ( ( ( rule__Statemachine__StatesAssignment_8 )* ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:654:1: ( ( rule__Statemachine__StatesAssignment_8 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:631:1: ( ( ( rule__Statemachine__StatesAssignment_8 )* ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:632:1: ( ( rule__Statemachine__StatesAssignment_8 )* )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:654:1: ( ( rule__Statemachine__StatesAssignment_8 )* )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:655:1: ( rule__Statemachine__StatesAssignment_8 )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:632:1: ( ( rule__Statemachine__StatesAssignment_8 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:633:1: ( rule__Statemachine__StatesAssignment_8 )*
             {
              before(grammarAccess.getStatemachineAccess().getStatesAssignment_8()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:656:1: ( rule__Statemachine__StatesAssignment_8 )*
-            loop7:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:634:1: ( rule__Statemachine__StatesAssignment_8 )*
+            loop6:
             do {
-                int alt7=2;
-                int LA7_0 = input.LA(1);
+                int alt6=2;
+                int LA6_0 = input.LA(1);
 
-                if ( ((LA7_0>=19 && LA7_0<=20)||LA7_0==23) ) {
-                    alt7=1;
+                if ( ((LA6_0>=18 && LA6_0<=19)||LA6_0==22) ) {
+                    alt6=1;
                 }
 
 
-                switch (alt7) {
+                switch (alt6) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:656:2: rule__Statemachine__StatesAssignment_8
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:634:2: rule__Statemachine__StatesAssignment_8
             	    {
-            	    pushFollow(FOLLOW_rule__Statemachine__StatesAssignment_8_in_rule__Statemachine__Group__8__Impl1293);
+            	    pushFollow(FOLLOW_rule__Statemachine__StatesAssignment_8_in_rule__Statemachine__Group__8__Impl1244);
             	    rule__Statemachine__StatesAssignment_8();
 
             	    state._fsp--;
@@ -1788,7 +1716,7 @@
             	    break;
 
             	default :
-            	    break loop7;
+            	    break loop6;
                 }
             } while (true);
 
@@ -1815,25 +1743,20 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__9"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:666:1: rule__Statemachine__Group__9 : rule__Statemachine__Group__9__Impl rule__Statemachine__Group__10 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:644:1: rule__Statemachine__Group__9 : rule__Statemachine__Group__9__Impl ;
     public final void rule__Statemachine__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:670:1: ( rule__Statemachine__Group__9__Impl rule__Statemachine__Group__10 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:671:2: rule__Statemachine__Group__9__Impl rule__Statemachine__Group__10
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:648:1: ( rule__Statemachine__Group__9__Impl )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:649:2: rule__Statemachine__Group__9__Impl
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group__9__Impl_in_rule__Statemachine__Group__91324);
+            pushFollow(FOLLOW_rule__Statemachine__Group__9__Impl_in_rule__Statemachine__Group__91275);
             rule__Statemachine__Group__9__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group__10_in_rule__Statemachine__Group__91327);
-            rule__Statemachine__Group__10();
-
-            state._fsp--;
-
 
             }
 
@@ -1853,20 +1776,20 @@
 
 
     // $ANTLR start "rule__Statemachine__Group__9__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:678:1: rule__Statemachine__Group__9__Impl : ( '}' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:655:1: rule__Statemachine__Group__9__Impl : ( '}' ) ;
     public final void rule__Statemachine__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:682:1: ( ( '}' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:683:1: ( '}' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:659:1: ( ( '}' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:660:1: ( '}' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:683:1: ( '}' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:684:1: '}'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:660:1: ( '}' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:661:1: '}'
             {
              before(grammarAccess.getStatemachineAccess().getRightCurlyBracketKeyword_9()); 
-            match(input,16,FOLLOW_16_in_rule__Statemachine__Group__9__Impl1355); 
+            match(input,16,FOLLOW_16_in_rule__Statemachine__Group__9__Impl1303); 
              after(grammarAccess.getStatemachineAccess().getRightCurlyBracketKeyword_9()); 
 
             }
@@ -1889,113 +1812,22 @@
     // $ANTLR end "rule__Statemachine__Group__9__Impl"
 
 
-    // $ANTLR start "rule__Statemachine__Group__10"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:697:1: rule__Statemachine__Group__10 : rule__Statemachine__Group__10__Impl ;
-    public final void rule__Statemachine__Group__10() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:701:1: ( rule__Statemachine__Group__10__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:702:2: rule__Statemachine__Group__10__Impl
-            {
-            pushFollow(FOLLOW_rule__Statemachine__Group__10__Impl_in_rule__Statemachine__Group__101386);
-            rule__Statemachine__Group__10__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Statemachine__Group__10"
-
-
-    // $ANTLR start "rule__Statemachine__Group__10__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:708:1: rule__Statemachine__Group__10__Impl : ( ( rule__Statemachine__Group_10__0 )? ) ;
-    public final void rule__Statemachine__Group__10__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:712:1: ( ( ( rule__Statemachine__Group_10__0 )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:713:1: ( ( rule__Statemachine__Group_10__0 )? )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:713:1: ( ( rule__Statemachine__Group_10__0 )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:714:1: ( rule__Statemachine__Group_10__0 )?
-            {
-             before(grammarAccess.getStatemachineAccess().getGroup_10()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:715:1: ( rule__Statemachine__Group_10__0 )?
-            int alt8=2;
-            int LA8_0 = input.LA(1);
-
-            if ( (LA8_0==18) ) {
-                alt8=1;
-            }
-            switch (alt8) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:715:2: rule__Statemachine__Group_10__0
-                    {
-                    pushFollow(FOLLOW_rule__Statemachine__Group_10__0_in_rule__Statemachine__Group__10__Impl1413);
-                    rule__Statemachine__Group_10__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getStatemachineAccess().getGroup_10()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Statemachine__Group__10__Impl"
-
-
     // $ANTLR start "rule__Statemachine__Group_3__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:747:1: rule__Statemachine__Group_3__0 : rule__Statemachine__Group_3__0__Impl rule__Statemachine__Group_3__1 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:694:1: rule__Statemachine__Group_3__0 : rule__Statemachine__Group_3__0__Impl rule__Statemachine__Group_3__1 ;
     public final void rule__Statemachine__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:751:1: ( rule__Statemachine__Group_3__0__Impl rule__Statemachine__Group_3__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:752:2: rule__Statemachine__Group_3__0__Impl rule__Statemachine__Group_3__1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:698:1: ( rule__Statemachine__Group_3__0__Impl rule__Statemachine__Group_3__1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:699:2: rule__Statemachine__Group_3__0__Impl rule__Statemachine__Group_3__1
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group_3__0__Impl_in_rule__Statemachine__Group_3__01466);
+            pushFollow(FOLLOW_rule__Statemachine__Group_3__0__Impl_in_rule__Statemachine__Group_3__01354);
             rule__Statemachine__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Statemachine__Group_3__1_in_rule__Statemachine__Group_3__01469);
+            pushFollow(FOLLOW_rule__Statemachine__Group_3__1_in_rule__Statemachine__Group_3__01357);
             rule__Statemachine__Group_3__1();
 
             state._fsp--;
@@ -2019,20 +1851,20 @@
 
 
     // $ANTLR start "rule__Statemachine__Group_3__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:759:1: rule__Statemachine__Group_3__0__Impl : ( 'value' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:706:1: rule__Statemachine__Group_3__0__Impl : ( 'value' ) ;
     public final void rule__Statemachine__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:763:1: ( ( 'value' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:764:1: ( 'value' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:710:1: ( ( 'value' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:711:1: ( 'value' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:764:1: ( 'value' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:765:1: 'value'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:711:1: ( 'value' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:712:1: 'value'
             {
              before(grammarAccess.getStatemachineAccess().getValueKeyword_3_0()); 
-            match(input,17,FOLLOW_17_in_rule__Statemachine__Group_3__0__Impl1497); 
+            match(input,17,FOLLOW_17_in_rule__Statemachine__Group_3__0__Impl1385); 
              after(grammarAccess.getStatemachineAccess().getValueKeyword_3_0()); 
 
             }
@@ -2056,16 +1888,16 @@
 
 
     // $ANTLR start "rule__Statemachine__Group_3__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:778:1: rule__Statemachine__Group_3__1 : rule__Statemachine__Group_3__1__Impl ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:725:1: rule__Statemachine__Group_3__1 : rule__Statemachine__Group_3__1__Impl ;
     public final void rule__Statemachine__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:782:1: ( rule__Statemachine__Group_3__1__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:783:2: rule__Statemachine__Group_3__1__Impl
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:729:1: ( rule__Statemachine__Group_3__1__Impl )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:730:2: rule__Statemachine__Group_3__1__Impl
             {
-            pushFollow(FOLLOW_rule__Statemachine__Group_3__1__Impl_in_rule__Statemachine__Group_3__11528);
+            pushFollow(FOLLOW_rule__Statemachine__Group_3__1__Impl_in_rule__Statemachine__Group_3__11416);
             rule__Statemachine__Group_3__1__Impl();
 
             state._fsp--;
@@ -2089,23 +1921,23 @@
 
 
     // $ANTLR start "rule__Statemachine__Group_3__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:789:1: rule__Statemachine__Group_3__1__Impl : ( ( rule__Statemachine__ValueAssignment_3_1 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:736:1: rule__Statemachine__Group_3__1__Impl : ( ( rule__Statemachine__ValueAssignment_3_1 ) ) ;
     public final void rule__Statemachine__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:793:1: ( ( ( rule__Statemachine__ValueAssignment_3_1 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:794:1: ( ( rule__Statemachine__ValueAssignment_3_1 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:740:1: ( ( ( rule__Statemachine__ValueAssignment_3_1 ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:741:1: ( ( rule__Statemachine__ValueAssignment_3_1 ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:794:1: ( ( rule__Statemachine__ValueAssignment_3_1 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:795:1: ( rule__Statemachine__ValueAssignment_3_1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:741:1: ( ( rule__Statemachine__ValueAssignment_3_1 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:742:1: ( rule__Statemachine__ValueAssignment_3_1 )
             {
              before(grammarAccess.getStatemachineAccess().getValueAssignment_3_1()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:796:1: ( rule__Statemachine__ValueAssignment_3_1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:796:2: rule__Statemachine__ValueAssignment_3_1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:743:1: ( rule__Statemachine__ValueAssignment_3_1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:743:2: rule__Statemachine__ValueAssignment_3_1
             {
-            pushFollow(FOLLOW_rule__Statemachine__ValueAssignment_3_1_in_rule__Statemachine__Group_3__1__Impl1555);
+            pushFollow(FOLLOW_rule__Statemachine__ValueAssignment_3_1_in_rule__Statemachine__Group_3__1__Impl1443);
             rule__Statemachine__ValueAssignment_3_1();
 
             state._fsp--;
@@ -2135,177 +1967,22 @@
     // $ANTLR end "rule__Statemachine__Group_3__1__Impl"
 
 
-    // $ANTLR start "rule__Statemachine__Group_10__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:810:1: rule__Statemachine__Group_10__0 : rule__Statemachine__Group_10__0__Impl rule__Statemachine__Group_10__1 ;
-    public final void rule__Statemachine__Group_10__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:814:1: ( rule__Statemachine__Group_10__0__Impl rule__Statemachine__Group_10__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:815:2: rule__Statemachine__Group_10__0__Impl rule__Statemachine__Group_10__1
-            {
-            pushFollow(FOLLOW_rule__Statemachine__Group_10__0__Impl_in_rule__Statemachine__Group_10__01589);
-            rule__Statemachine__Group_10__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FOLLOW_rule__Statemachine__Group_10__1_in_rule__Statemachine__Group_10__01592);
-            rule__Statemachine__Group_10__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Statemachine__Group_10__0"
-
-
-    // $ANTLR start "rule__Statemachine__Group_10__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:822:1: rule__Statemachine__Group_10__0__Impl : ( 'debug' ) ;
-    public final void rule__Statemachine__Group_10__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:826:1: ( ( 'debug' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:827:1: ( 'debug' )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:827:1: ( 'debug' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:828:1: 'debug'
-            {
-             before(grammarAccess.getStatemachineAccess().getDebugKeyword_10_0()); 
-            match(input,18,FOLLOW_18_in_rule__Statemachine__Group_10__0__Impl1620); 
-             after(grammarAccess.getStatemachineAccess().getDebugKeyword_10_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Statemachine__Group_10__0__Impl"
-
-
-    // $ANTLR start "rule__Statemachine__Group_10__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:841:1: rule__Statemachine__Group_10__1 : rule__Statemachine__Group_10__1__Impl ;
-    public final void rule__Statemachine__Group_10__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:845:1: ( rule__Statemachine__Group_10__1__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:846:2: rule__Statemachine__Group_10__1__Impl
-            {
-            pushFollow(FOLLOW_rule__Statemachine__Group_10__1__Impl_in_rule__Statemachine__Group_10__11651);
-            rule__Statemachine__Group_10__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Statemachine__Group_10__1"
-
-
-    // $ANTLR start "rule__Statemachine__Group_10__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:852:1: rule__Statemachine__Group_10__1__Impl : ( ( rule__Statemachine__DbgNameAssignment_10_1 ) ) ;
-    public final void rule__Statemachine__Group_10__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:856:1: ( ( ( rule__Statemachine__DbgNameAssignment_10_1 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:857:1: ( ( rule__Statemachine__DbgNameAssignment_10_1 ) )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:857:1: ( ( rule__Statemachine__DbgNameAssignment_10_1 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:858:1: ( rule__Statemachine__DbgNameAssignment_10_1 )
-            {
-             before(grammarAccess.getStatemachineAccess().getDbgNameAssignment_10_1()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:859:1: ( rule__Statemachine__DbgNameAssignment_10_1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:859:2: rule__Statemachine__DbgNameAssignment_10_1
-            {
-            pushFollow(FOLLOW_rule__Statemachine__DbgNameAssignment_10_1_in_rule__Statemachine__Group_10__1__Impl1678);
-            rule__Statemachine__DbgNameAssignment_10_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getStatemachineAccess().getDbgNameAssignment_10_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Statemachine__Group_10__1__Impl"
-
-
     // $ANTLR start "rule__SimpleState__Group__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:873:1: rule__SimpleState__Group__0 : rule__SimpleState__Group__0__Impl rule__SimpleState__Group__1 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:757:1: rule__SimpleState__Group__0 : rule__SimpleState__Group__0__Impl rule__SimpleState__Group__1 ;
     public final void rule__SimpleState__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:877:1: ( rule__SimpleState__Group__0__Impl rule__SimpleState__Group__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:878:2: rule__SimpleState__Group__0__Impl rule__SimpleState__Group__1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:761:1: ( rule__SimpleState__Group__0__Impl rule__SimpleState__Group__1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:762:2: rule__SimpleState__Group__0__Impl rule__SimpleState__Group__1
             {
-            pushFollow(FOLLOW_rule__SimpleState__Group__0__Impl_in_rule__SimpleState__Group__01712);
+            pushFollow(FOLLOW_rule__SimpleState__Group__0__Impl_in_rule__SimpleState__Group__01477);
             rule__SimpleState__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__SimpleState__Group__1_in_rule__SimpleState__Group__01715);
+            pushFollow(FOLLOW_rule__SimpleState__Group__1_in_rule__SimpleState__Group__01480);
             rule__SimpleState__Group__1();
 
             state._fsp--;
@@ -2329,31 +2006,31 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:885:1: rule__SimpleState__Group__0__Impl : ( ( rule__SimpleState__InitialAssignment_0 )? ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:769:1: rule__SimpleState__Group__0__Impl : ( ( rule__SimpleState__InitialAssignment_0 )? ) ;
     public final void rule__SimpleState__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:889:1: ( ( ( rule__SimpleState__InitialAssignment_0 )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:890:1: ( ( rule__SimpleState__InitialAssignment_0 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:773:1: ( ( ( rule__SimpleState__InitialAssignment_0 )? ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:774:1: ( ( rule__SimpleState__InitialAssignment_0 )? )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:890:1: ( ( rule__SimpleState__InitialAssignment_0 )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:891:1: ( rule__SimpleState__InitialAssignment_0 )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:774:1: ( ( rule__SimpleState__InitialAssignment_0 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:775:1: ( rule__SimpleState__InitialAssignment_0 )?
             {
              before(grammarAccess.getSimpleStateAccess().getInitialAssignment_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:892:1: ( rule__SimpleState__InitialAssignment_0 )?
-            int alt9=2;
-            int LA9_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:776:1: ( rule__SimpleState__InitialAssignment_0 )?
+            int alt7=2;
+            int LA7_0 = input.LA(1);
 
-            if ( (LA9_0==23) ) {
-                alt9=1;
+            if ( (LA7_0==22) ) {
+                alt7=1;
             }
-            switch (alt9) {
+            switch (alt7) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:892:2: rule__SimpleState__InitialAssignment_0
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:776:2: rule__SimpleState__InitialAssignment_0
                     {
-                    pushFollow(FOLLOW_rule__SimpleState__InitialAssignment_0_in_rule__SimpleState__Group__0__Impl1742);
+                    pushFollow(FOLLOW_rule__SimpleState__InitialAssignment_0_in_rule__SimpleState__Group__0__Impl1507);
                     rule__SimpleState__InitialAssignment_0();
 
                     state._fsp--;
@@ -2387,21 +2064,21 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:902:1: rule__SimpleState__Group__1 : rule__SimpleState__Group__1__Impl rule__SimpleState__Group__2 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:786:1: rule__SimpleState__Group__1 : rule__SimpleState__Group__1__Impl rule__SimpleState__Group__2 ;
     public final void rule__SimpleState__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:906:1: ( rule__SimpleState__Group__1__Impl rule__SimpleState__Group__2 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:907:2: rule__SimpleState__Group__1__Impl rule__SimpleState__Group__2
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:790:1: ( rule__SimpleState__Group__1__Impl rule__SimpleState__Group__2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:791:2: rule__SimpleState__Group__1__Impl rule__SimpleState__Group__2
             {
-            pushFollow(FOLLOW_rule__SimpleState__Group__1__Impl_in_rule__SimpleState__Group__11773);
+            pushFollow(FOLLOW_rule__SimpleState__Group__1__Impl_in_rule__SimpleState__Group__11538);
             rule__SimpleState__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__SimpleState__Group__2_in_rule__SimpleState__Group__11776);
+            pushFollow(FOLLOW_rule__SimpleState__Group__2_in_rule__SimpleState__Group__11541);
             rule__SimpleState__Group__2();
 
             state._fsp--;
@@ -2425,20 +2102,20 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:914:1: rule__SimpleState__Group__1__Impl : ( 'state' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:798:1: rule__SimpleState__Group__1__Impl : ( 'state' ) ;
     public final void rule__SimpleState__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:918:1: ( ( 'state' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:919:1: ( 'state' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:802:1: ( ( 'state' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:803:1: ( 'state' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:919:1: ( 'state' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:920:1: 'state'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:803:1: ( 'state' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:804:1: 'state'
             {
              before(grammarAccess.getSimpleStateAccess().getStateKeyword_1()); 
-            match(input,19,FOLLOW_19_in_rule__SimpleState__Group__1__Impl1804); 
+            match(input,18,FOLLOW_18_in_rule__SimpleState__Group__1__Impl1569); 
              after(grammarAccess.getSimpleStateAccess().getStateKeyword_1()); 
 
             }
@@ -2462,21 +2139,21 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__2"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:933:1: rule__SimpleState__Group__2 : rule__SimpleState__Group__2__Impl rule__SimpleState__Group__3 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:817:1: rule__SimpleState__Group__2 : rule__SimpleState__Group__2__Impl rule__SimpleState__Group__3 ;
     public final void rule__SimpleState__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:937:1: ( rule__SimpleState__Group__2__Impl rule__SimpleState__Group__3 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:938:2: rule__SimpleState__Group__2__Impl rule__SimpleState__Group__3
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:821:1: ( rule__SimpleState__Group__2__Impl rule__SimpleState__Group__3 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:822:2: rule__SimpleState__Group__2__Impl rule__SimpleState__Group__3
             {
-            pushFollow(FOLLOW_rule__SimpleState__Group__2__Impl_in_rule__SimpleState__Group__21835);
+            pushFollow(FOLLOW_rule__SimpleState__Group__2__Impl_in_rule__SimpleState__Group__21600);
             rule__SimpleState__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__SimpleState__Group__3_in_rule__SimpleState__Group__21838);
+            pushFollow(FOLLOW_rule__SimpleState__Group__3_in_rule__SimpleState__Group__21603);
             rule__SimpleState__Group__3();
 
             state._fsp--;
@@ -2500,23 +2177,23 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__2__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:945:1: rule__SimpleState__Group__2__Impl : ( ( rule__SimpleState__NameAssignment_2 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:829:1: rule__SimpleState__Group__2__Impl : ( ( rule__SimpleState__NameAssignment_2 ) ) ;
     public final void rule__SimpleState__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:949:1: ( ( ( rule__SimpleState__NameAssignment_2 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:950:1: ( ( rule__SimpleState__NameAssignment_2 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:833:1: ( ( ( rule__SimpleState__NameAssignment_2 ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:834:1: ( ( rule__SimpleState__NameAssignment_2 ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:950:1: ( ( rule__SimpleState__NameAssignment_2 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:951:1: ( rule__SimpleState__NameAssignment_2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:834:1: ( ( rule__SimpleState__NameAssignment_2 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:835:1: ( rule__SimpleState__NameAssignment_2 )
             {
              before(grammarAccess.getSimpleStateAccess().getNameAssignment_2()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:952:1: ( rule__SimpleState__NameAssignment_2 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:952:2: rule__SimpleState__NameAssignment_2
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:836:1: ( rule__SimpleState__NameAssignment_2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:836:2: rule__SimpleState__NameAssignment_2
             {
-            pushFollow(FOLLOW_rule__SimpleState__NameAssignment_2_in_rule__SimpleState__Group__2__Impl1865);
+            pushFollow(FOLLOW_rule__SimpleState__NameAssignment_2_in_rule__SimpleState__Group__2__Impl1630);
             rule__SimpleState__NameAssignment_2();
 
             state._fsp--;
@@ -2547,21 +2224,21 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__3"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:962:1: rule__SimpleState__Group__3 : rule__SimpleState__Group__3__Impl rule__SimpleState__Group__4 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:846:1: rule__SimpleState__Group__3 : rule__SimpleState__Group__3__Impl rule__SimpleState__Group__4 ;
     public final void rule__SimpleState__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:966:1: ( rule__SimpleState__Group__3__Impl rule__SimpleState__Group__4 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:967:2: rule__SimpleState__Group__3__Impl rule__SimpleState__Group__4
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:850:1: ( rule__SimpleState__Group__3__Impl rule__SimpleState__Group__4 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:851:2: rule__SimpleState__Group__3__Impl rule__SimpleState__Group__4
             {
-            pushFollow(FOLLOW_rule__SimpleState__Group__3__Impl_in_rule__SimpleState__Group__31895);
+            pushFollow(FOLLOW_rule__SimpleState__Group__3__Impl_in_rule__SimpleState__Group__31660);
             rule__SimpleState__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__SimpleState__Group__4_in_rule__SimpleState__Group__31898);
+            pushFollow(FOLLOW_rule__SimpleState__Group__4_in_rule__SimpleState__Group__31663);
             rule__SimpleState__Group__4();
 
             state._fsp--;
@@ -2585,31 +2262,31 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__3__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:974:1: rule__SimpleState__Group__3__Impl : ( ( rule__SimpleState__Group_3__0 )? ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:858:1: rule__SimpleState__Group__3__Impl : ( ( rule__SimpleState__Group_3__0 )? ) ;
     public final void rule__SimpleState__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:978:1: ( ( ( rule__SimpleState__Group_3__0 )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:979:1: ( ( rule__SimpleState__Group_3__0 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:862:1: ( ( ( rule__SimpleState__Group_3__0 )? ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:863:1: ( ( rule__SimpleState__Group_3__0 )? )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:979:1: ( ( rule__SimpleState__Group_3__0 )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:980:1: ( rule__SimpleState__Group_3__0 )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:863:1: ( ( rule__SimpleState__Group_3__0 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:864:1: ( rule__SimpleState__Group_3__0 )?
             {
              before(grammarAccess.getSimpleStateAccess().getGroup_3()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:981:1: ( rule__SimpleState__Group_3__0 )?
-            int alt10=2;
-            int LA10_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:865:1: ( rule__SimpleState__Group_3__0 )?
+            int alt8=2;
+            int LA8_0 = input.LA(1);
 
-            if ( (LA10_0==17) ) {
-                alt10=1;
+            if ( (LA8_0==17) ) {
+                alt8=1;
             }
-            switch (alt10) {
+            switch (alt8) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:981:2: rule__SimpleState__Group_3__0
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:865:2: rule__SimpleState__Group_3__0
                     {
-                    pushFollow(FOLLOW_rule__SimpleState__Group_3__0_in_rule__SimpleState__Group__3__Impl1925);
+                    pushFollow(FOLLOW_rule__SimpleState__Group_3__0_in_rule__SimpleState__Group__3__Impl1690);
                     rule__SimpleState__Group_3__0();
 
                     state._fsp--;
@@ -2643,21 +2320,21 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__4"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:991:1: rule__SimpleState__Group__4 : rule__SimpleState__Group__4__Impl rule__SimpleState__Group__5 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:875:1: rule__SimpleState__Group__4 : rule__SimpleState__Group__4__Impl rule__SimpleState__Group__5 ;
     public final void rule__SimpleState__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:995:1: ( rule__SimpleState__Group__4__Impl rule__SimpleState__Group__5 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:996:2: rule__SimpleState__Group__4__Impl rule__SimpleState__Group__5
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:879:1: ( rule__SimpleState__Group__4__Impl rule__SimpleState__Group__5 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:880:2: rule__SimpleState__Group__4__Impl rule__SimpleState__Group__5
             {
-            pushFollow(FOLLOW_rule__SimpleState__Group__4__Impl_in_rule__SimpleState__Group__41956);
+            pushFollow(FOLLOW_rule__SimpleState__Group__4__Impl_in_rule__SimpleState__Group__41721);
             rule__SimpleState__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__SimpleState__Group__5_in_rule__SimpleState__Group__41959);
+            pushFollow(FOLLOW_rule__SimpleState__Group__5_in_rule__SimpleState__Group__41724);
             rule__SimpleState__Group__5();
 
             state._fsp--;
@@ -2681,20 +2358,20 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__4__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1003:1: rule__SimpleState__Group__4__Impl : ( '{' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:887:1: rule__SimpleState__Group__4__Impl : ( '{' ) ;
     public final void rule__SimpleState__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1007:1: ( ( '{' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1008:1: ( '{' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:891:1: ( ( '{' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:892:1: ( '{' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1008:1: ( '{' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1009:1: '{'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:892:1: ( '{' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:893:1: '{'
             {
              before(grammarAccess.getSimpleStateAccess().getLeftCurlyBracketKeyword_4()); 
-            match(input,13,FOLLOW_13_in_rule__SimpleState__Group__4__Impl1987); 
+            match(input,13,FOLLOW_13_in_rule__SimpleState__Group__4__Impl1752); 
              after(grammarAccess.getSimpleStateAccess().getLeftCurlyBracketKeyword_4()); 
 
             }
@@ -2718,21 +2395,21 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__5"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1022:1: rule__SimpleState__Group__5 : rule__SimpleState__Group__5__Impl rule__SimpleState__Group__6 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:906:1: rule__SimpleState__Group__5 : rule__SimpleState__Group__5__Impl rule__SimpleState__Group__6 ;
     public final void rule__SimpleState__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1026:1: ( rule__SimpleState__Group__5__Impl rule__SimpleState__Group__6 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1027:2: rule__SimpleState__Group__5__Impl rule__SimpleState__Group__6
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:910:1: ( rule__SimpleState__Group__5__Impl rule__SimpleState__Group__6 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:911:2: rule__SimpleState__Group__5__Impl rule__SimpleState__Group__6
             {
-            pushFollow(FOLLOW_rule__SimpleState__Group__5__Impl_in_rule__SimpleState__Group__52018);
+            pushFollow(FOLLOW_rule__SimpleState__Group__5__Impl_in_rule__SimpleState__Group__51783);
             rule__SimpleState__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__SimpleState__Group__6_in_rule__SimpleState__Group__52021);
+            pushFollow(FOLLOW_rule__SimpleState__Group__6_in_rule__SimpleState__Group__51786);
             rule__SimpleState__Group__6();
 
             state._fsp--;
@@ -2756,35 +2433,35 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__5__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1034:1: rule__SimpleState__Group__5__Impl : ( ( rule__SimpleState__TransitionsAssignment_5 )* ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:918:1: rule__SimpleState__Group__5__Impl : ( ( rule__SimpleState__TransitionsAssignment_5 )* ) ;
     public final void rule__SimpleState__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1038:1: ( ( ( rule__SimpleState__TransitionsAssignment_5 )* ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1039:1: ( ( rule__SimpleState__TransitionsAssignment_5 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:922:1: ( ( ( rule__SimpleState__TransitionsAssignment_5 )* ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:923:1: ( ( rule__SimpleState__TransitionsAssignment_5 )* )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1039:1: ( ( rule__SimpleState__TransitionsAssignment_5 )* )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1040:1: ( rule__SimpleState__TransitionsAssignment_5 )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:923:1: ( ( rule__SimpleState__TransitionsAssignment_5 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:924:1: ( rule__SimpleState__TransitionsAssignment_5 )*
             {
              before(grammarAccess.getSimpleStateAccess().getTransitionsAssignment_5()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1041:1: ( rule__SimpleState__TransitionsAssignment_5 )*
-            loop11:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:925:1: ( rule__SimpleState__TransitionsAssignment_5 )*
+            loop9:
             do {
-                int alt11=2;
-                int LA11_0 = input.LA(1);
+                int alt9=2;
+                int LA9_0 = input.LA(1);
 
-                if ( (LA11_0==RULE_ID) ) {
-                    alt11=1;
+                if ( (LA9_0==RULE_ID) ) {
+                    alt9=1;
                 }
 
 
-                switch (alt11) {
+                switch (alt9) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1041:2: rule__SimpleState__TransitionsAssignment_5
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:925:2: rule__SimpleState__TransitionsAssignment_5
             	    {
-            	    pushFollow(FOLLOW_rule__SimpleState__TransitionsAssignment_5_in_rule__SimpleState__Group__5__Impl2048);
+            	    pushFollow(FOLLOW_rule__SimpleState__TransitionsAssignment_5_in_rule__SimpleState__Group__5__Impl1813);
             	    rule__SimpleState__TransitionsAssignment_5();
 
             	    state._fsp--;
@@ -2794,7 +2471,7 @@
             	    break;
 
             	default :
-            	    break loop11;
+            	    break loop9;
                 }
             } while (true);
 
@@ -2821,25 +2498,20 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__6"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1051:1: rule__SimpleState__Group__6 : rule__SimpleState__Group__6__Impl rule__SimpleState__Group__7 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:935:1: rule__SimpleState__Group__6 : rule__SimpleState__Group__6__Impl ;
     public final void rule__SimpleState__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1055:1: ( rule__SimpleState__Group__6__Impl rule__SimpleState__Group__7 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1056:2: rule__SimpleState__Group__6__Impl rule__SimpleState__Group__7
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:939:1: ( rule__SimpleState__Group__6__Impl )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:940:2: rule__SimpleState__Group__6__Impl
             {
-            pushFollow(FOLLOW_rule__SimpleState__Group__6__Impl_in_rule__SimpleState__Group__62079);
+            pushFollow(FOLLOW_rule__SimpleState__Group__6__Impl_in_rule__SimpleState__Group__61844);
             rule__SimpleState__Group__6__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__SimpleState__Group__7_in_rule__SimpleState__Group__62082);
-            rule__SimpleState__Group__7();
-
-            state._fsp--;
-
 
             }
 
@@ -2859,20 +2531,20 @@
 
 
     // $ANTLR start "rule__SimpleState__Group__6__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1063:1: rule__SimpleState__Group__6__Impl : ( '}' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:946:1: rule__SimpleState__Group__6__Impl : ( '}' ) ;
     public final void rule__SimpleState__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1067:1: ( ( '}' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1068:1: ( '}' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:950:1: ( ( '}' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:951:1: ( '}' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1068:1: ( '}' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1069:1: '}'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:951:1: ( '}' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:952:1: '}'
             {
              before(grammarAccess.getSimpleStateAccess().getRightCurlyBracketKeyword_6()); 
-            match(input,16,FOLLOW_16_in_rule__SimpleState__Group__6__Impl2110); 
+            match(input,16,FOLLOW_16_in_rule__SimpleState__Group__6__Impl1872); 
              after(grammarAccess.getSimpleStateAccess().getRightCurlyBracketKeyword_6()); 
 
             }
@@ -2895,113 +2567,22 @@
     // $ANTLR end "rule__SimpleState__Group__6__Impl"
 
 
-    // $ANTLR start "rule__SimpleState__Group__7"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1082:1: rule__SimpleState__Group__7 : rule__SimpleState__Group__7__Impl ;
-    public final void rule__SimpleState__Group__7() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1086:1: ( rule__SimpleState__Group__7__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1087:2: rule__SimpleState__Group__7__Impl
-            {
-            pushFollow(FOLLOW_rule__SimpleState__Group__7__Impl_in_rule__SimpleState__Group__72141);
-            rule__SimpleState__Group__7__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SimpleState__Group__7"
-
-
-    // $ANTLR start "rule__SimpleState__Group__7__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1093:1: rule__SimpleState__Group__7__Impl : ( ( rule__SimpleState__Group_7__0 )? ) ;
-    public final void rule__SimpleState__Group__7__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1097:1: ( ( ( rule__SimpleState__Group_7__0 )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1098:1: ( ( rule__SimpleState__Group_7__0 )? )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1098:1: ( ( rule__SimpleState__Group_7__0 )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1099:1: ( rule__SimpleState__Group_7__0 )?
-            {
-             before(grammarAccess.getSimpleStateAccess().getGroup_7()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1100:1: ( rule__SimpleState__Group_7__0 )?
-            int alt12=2;
-            int LA12_0 = input.LA(1);
-
-            if ( (LA12_0==18) ) {
-                alt12=1;
-            }
-            switch (alt12) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1100:2: rule__SimpleState__Group_7__0
-                    {
-                    pushFollow(FOLLOW_rule__SimpleState__Group_7__0_in_rule__SimpleState__Group__7__Impl2168);
-                    rule__SimpleState__Group_7__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getSimpleStateAccess().getGroup_7()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SimpleState__Group__7__Impl"
-
-
     // $ANTLR start "rule__SimpleState__Group_3__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1126:1: rule__SimpleState__Group_3__0 : rule__SimpleState__Group_3__0__Impl rule__SimpleState__Group_3__1 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:979:1: rule__SimpleState__Group_3__0 : rule__SimpleState__Group_3__0__Impl rule__SimpleState__Group_3__1 ;
     public final void rule__SimpleState__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1130:1: ( rule__SimpleState__Group_3__0__Impl rule__SimpleState__Group_3__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1131:2: rule__SimpleState__Group_3__0__Impl rule__SimpleState__Group_3__1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:983:1: ( rule__SimpleState__Group_3__0__Impl rule__SimpleState__Group_3__1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:984:2: rule__SimpleState__Group_3__0__Impl rule__SimpleState__Group_3__1
             {
-            pushFollow(FOLLOW_rule__SimpleState__Group_3__0__Impl_in_rule__SimpleState__Group_3__02215);
+            pushFollow(FOLLOW_rule__SimpleState__Group_3__0__Impl_in_rule__SimpleState__Group_3__01917);
             rule__SimpleState__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__SimpleState__Group_3__1_in_rule__SimpleState__Group_3__02218);
+            pushFollow(FOLLOW_rule__SimpleState__Group_3__1_in_rule__SimpleState__Group_3__01920);
             rule__SimpleState__Group_3__1();
 
             state._fsp--;
@@ -3025,20 +2606,20 @@
 
 
     // $ANTLR start "rule__SimpleState__Group_3__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1138:1: rule__SimpleState__Group_3__0__Impl : ( 'value' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:991:1: rule__SimpleState__Group_3__0__Impl : ( 'value' ) ;
     public final void rule__SimpleState__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1142:1: ( ( 'value' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1143:1: ( 'value' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:995:1: ( ( 'value' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:996:1: ( 'value' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1143:1: ( 'value' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1144:1: 'value'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:996:1: ( 'value' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:997:1: 'value'
             {
              before(grammarAccess.getSimpleStateAccess().getValueKeyword_3_0()); 
-            match(input,17,FOLLOW_17_in_rule__SimpleState__Group_3__0__Impl2246); 
+            match(input,17,FOLLOW_17_in_rule__SimpleState__Group_3__0__Impl1948); 
              after(grammarAccess.getSimpleStateAccess().getValueKeyword_3_0()); 
 
             }
@@ -3062,16 +2643,16 @@
 
 
     // $ANTLR start "rule__SimpleState__Group_3__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1157:1: rule__SimpleState__Group_3__1 : rule__SimpleState__Group_3__1__Impl ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1010:1: rule__SimpleState__Group_3__1 : rule__SimpleState__Group_3__1__Impl ;
     public final void rule__SimpleState__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1161:1: ( rule__SimpleState__Group_3__1__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1162:2: rule__SimpleState__Group_3__1__Impl
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1014:1: ( rule__SimpleState__Group_3__1__Impl )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1015:2: rule__SimpleState__Group_3__1__Impl
             {
-            pushFollow(FOLLOW_rule__SimpleState__Group_3__1__Impl_in_rule__SimpleState__Group_3__12277);
+            pushFollow(FOLLOW_rule__SimpleState__Group_3__1__Impl_in_rule__SimpleState__Group_3__11979);
             rule__SimpleState__Group_3__1__Impl();
 
             state._fsp--;
@@ -3095,23 +2676,23 @@
 
 
     // $ANTLR start "rule__SimpleState__Group_3__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1168:1: rule__SimpleState__Group_3__1__Impl : ( ( rule__SimpleState__ValueAssignment_3_1 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1021:1: rule__SimpleState__Group_3__1__Impl : ( ( rule__SimpleState__ValueAssignment_3_1 ) ) ;
     public final void rule__SimpleState__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1172:1: ( ( ( rule__SimpleState__ValueAssignment_3_1 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1173:1: ( ( rule__SimpleState__ValueAssignment_3_1 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1025:1: ( ( ( rule__SimpleState__ValueAssignment_3_1 ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1026:1: ( ( rule__SimpleState__ValueAssignment_3_1 ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1173:1: ( ( rule__SimpleState__ValueAssignment_3_1 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1174:1: ( rule__SimpleState__ValueAssignment_3_1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1026:1: ( ( rule__SimpleState__ValueAssignment_3_1 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1027:1: ( rule__SimpleState__ValueAssignment_3_1 )
             {
              before(grammarAccess.getSimpleStateAccess().getValueAssignment_3_1()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1175:1: ( rule__SimpleState__ValueAssignment_3_1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1175:2: rule__SimpleState__ValueAssignment_3_1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1028:1: ( rule__SimpleState__ValueAssignment_3_1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1028:2: rule__SimpleState__ValueAssignment_3_1
             {
-            pushFollow(FOLLOW_rule__SimpleState__ValueAssignment_3_1_in_rule__SimpleState__Group_3__1__Impl2304);
+            pushFollow(FOLLOW_rule__SimpleState__ValueAssignment_3_1_in_rule__SimpleState__Group_3__1__Impl2006);
             rule__SimpleState__ValueAssignment_3_1();
 
             state._fsp--;
@@ -3141,177 +2722,22 @@
     // $ANTLR end "rule__SimpleState__Group_3__1__Impl"
 
 
-    // $ANTLR start "rule__SimpleState__Group_7__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1189:1: rule__SimpleState__Group_7__0 : rule__SimpleState__Group_7__0__Impl rule__SimpleState__Group_7__1 ;
-    public final void rule__SimpleState__Group_7__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1193:1: ( rule__SimpleState__Group_7__0__Impl rule__SimpleState__Group_7__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1194:2: rule__SimpleState__Group_7__0__Impl rule__SimpleState__Group_7__1
-            {
-            pushFollow(FOLLOW_rule__SimpleState__Group_7__0__Impl_in_rule__SimpleState__Group_7__02338);
-            rule__SimpleState__Group_7__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FOLLOW_rule__SimpleState__Group_7__1_in_rule__SimpleState__Group_7__02341);
-            rule__SimpleState__Group_7__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SimpleState__Group_7__0"
-
-
-    // $ANTLR start "rule__SimpleState__Group_7__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1201:1: rule__SimpleState__Group_7__0__Impl : ( 'debug' ) ;
-    public final void rule__SimpleState__Group_7__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1205:1: ( ( 'debug' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1206:1: ( 'debug' )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1206:1: ( 'debug' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1207:1: 'debug'
-            {
-             before(grammarAccess.getSimpleStateAccess().getDebugKeyword_7_0()); 
-            match(input,18,FOLLOW_18_in_rule__SimpleState__Group_7__0__Impl2369); 
-             after(grammarAccess.getSimpleStateAccess().getDebugKeyword_7_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SimpleState__Group_7__0__Impl"
-
-
-    // $ANTLR start "rule__SimpleState__Group_7__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1220:1: rule__SimpleState__Group_7__1 : rule__SimpleState__Group_7__1__Impl ;
-    public final void rule__SimpleState__Group_7__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1224:1: ( rule__SimpleState__Group_7__1__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1225:2: rule__SimpleState__Group_7__1__Impl
-            {
-            pushFollow(FOLLOW_rule__SimpleState__Group_7__1__Impl_in_rule__SimpleState__Group_7__12400);
-            rule__SimpleState__Group_7__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SimpleState__Group_7__1"
-
-
-    // $ANTLR start "rule__SimpleState__Group_7__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1231:1: rule__SimpleState__Group_7__1__Impl : ( ( rule__SimpleState__DbgNameAssignment_7_1 ) ) ;
-    public final void rule__SimpleState__Group_7__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1235:1: ( ( ( rule__SimpleState__DbgNameAssignment_7_1 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1236:1: ( ( rule__SimpleState__DbgNameAssignment_7_1 ) )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1236:1: ( ( rule__SimpleState__DbgNameAssignment_7_1 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1237:1: ( rule__SimpleState__DbgNameAssignment_7_1 )
-            {
-             before(grammarAccess.getSimpleStateAccess().getDbgNameAssignment_7_1()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1238:1: ( rule__SimpleState__DbgNameAssignment_7_1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1238:2: rule__SimpleState__DbgNameAssignment_7_1
-            {
-            pushFollow(FOLLOW_rule__SimpleState__DbgNameAssignment_7_1_in_rule__SimpleState__Group_7__1__Impl2427);
-            rule__SimpleState__DbgNameAssignment_7_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSimpleStateAccess().getDbgNameAssignment_7_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SimpleState__Group_7__1__Impl"
-
-
     // $ANTLR start "rule__CompoundState__Group__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1252:1: rule__CompoundState__Group__0 : rule__CompoundState__Group__0__Impl rule__CompoundState__Group__1 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1042:1: rule__CompoundState__Group__0 : rule__CompoundState__Group__0__Impl rule__CompoundState__Group__1 ;
     public final void rule__CompoundState__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1256:1: ( rule__CompoundState__Group__0__Impl rule__CompoundState__Group__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1257:2: rule__CompoundState__Group__0__Impl rule__CompoundState__Group__1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1046:1: ( rule__CompoundState__Group__0__Impl rule__CompoundState__Group__1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1047:2: rule__CompoundState__Group__0__Impl rule__CompoundState__Group__1
             {
-            pushFollow(FOLLOW_rule__CompoundState__Group__0__Impl_in_rule__CompoundState__Group__02461);
+            pushFollow(FOLLOW_rule__CompoundState__Group__0__Impl_in_rule__CompoundState__Group__02040);
             rule__CompoundState__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__CompoundState__Group__1_in_rule__CompoundState__Group__02464);
+            pushFollow(FOLLOW_rule__CompoundState__Group__1_in_rule__CompoundState__Group__02043);
             rule__CompoundState__Group__1();
 
             state._fsp--;
@@ -3335,20 +2761,20 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1264:1: rule__CompoundState__Group__0__Impl : ( 'compound' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1054:1: rule__CompoundState__Group__0__Impl : ( 'compound' ) ;
     public final void rule__CompoundState__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1268:1: ( ( 'compound' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1269:1: ( 'compound' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1058:1: ( ( 'compound' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1059:1: ( 'compound' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1269:1: ( 'compound' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1270:1: 'compound'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1059:1: ( 'compound' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1060:1: 'compound'
             {
              before(grammarAccess.getCompoundStateAccess().getCompoundKeyword_0()); 
-            match(input,20,FOLLOW_20_in_rule__CompoundState__Group__0__Impl2492); 
+            match(input,19,FOLLOW_19_in_rule__CompoundState__Group__0__Impl2071); 
              after(grammarAccess.getCompoundStateAccess().getCompoundKeyword_0()); 
 
             }
@@ -3372,21 +2798,21 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1283:1: rule__CompoundState__Group__1 : rule__CompoundState__Group__1__Impl rule__CompoundState__Group__2 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1073:1: rule__CompoundState__Group__1 : rule__CompoundState__Group__1__Impl rule__CompoundState__Group__2 ;
     public final void rule__CompoundState__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1287:1: ( rule__CompoundState__Group__1__Impl rule__CompoundState__Group__2 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1288:2: rule__CompoundState__Group__1__Impl rule__CompoundState__Group__2
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1077:1: ( rule__CompoundState__Group__1__Impl rule__CompoundState__Group__2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1078:2: rule__CompoundState__Group__1__Impl rule__CompoundState__Group__2
             {
-            pushFollow(FOLLOW_rule__CompoundState__Group__1__Impl_in_rule__CompoundState__Group__12523);
+            pushFollow(FOLLOW_rule__CompoundState__Group__1__Impl_in_rule__CompoundState__Group__12102);
             rule__CompoundState__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__CompoundState__Group__2_in_rule__CompoundState__Group__12526);
+            pushFollow(FOLLOW_rule__CompoundState__Group__2_in_rule__CompoundState__Group__12105);
             rule__CompoundState__Group__2();
 
             state._fsp--;
@@ -3410,31 +2836,31 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1295:1: rule__CompoundState__Group__1__Impl : ( ( rule__CompoundState__InitialAssignment_1 )? ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1085:1: rule__CompoundState__Group__1__Impl : ( ( rule__CompoundState__InitialAssignment_1 )? ) ;
     public final void rule__CompoundState__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1299:1: ( ( ( rule__CompoundState__InitialAssignment_1 )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1300:1: ( ( rule__CompoundState__InitialAssignment_1 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1089:1: ( ( ( rule__CompoundState__InitialAssignment_1 )? ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1090:1: ( ( rule__CompoundState__InitialAssignment_1 )? )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1300:1: ( ( rule__CompoundState__InitialAssignment_1 )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1301:1: ( rule__CompoundState__InitialAssignment_1 )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1090:1: ( ( rule__CompoundState__InitialAssignment_1 )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1091:1: ( rule__CompoundState__InitialAssignment_1 )?
             {
              before(grammarAccess.getCompoundStateAccess().getInitialAssignment_1()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1302:1: ( rule__CompoundState__InitialAssignment_1 )?
-            int alt13=2;
-            int LA13_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1092:1: ( rule__CompoundState__InitialAssignment_1 )?
+            int alt10=2;
+            int LA10_0 = input.LA(1);
 
-            if ( (LA13_0==23) ) {
-                alt13=1;
+            if ( (LA10_0==22) ) {
+                alt10=1;
             }
-            switch (alt13) {
+            switch (alt10) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1302:2: rule__CompoundState__InitialAssignment_1
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1092:2: rule__CompoundState__InitialAssignment_1
                     {
-                    pushFollow(FOLLOW_rule__CompoundState__InitialAssignment_1_in_rule__CompoundState__Group__1__Impl2553);
+                    pushFollow(FOLLOW_rule__CompoundState__InitialAssignment_1_in_rule__CompoundState__Group__1__Impl2132);
                     rule__CompoundState__InitialAssignment_1();
 
                     state._fsp--;
@@ -3468,21 +2894,21 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__2"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1312:1: rule__CompoundState__Group__2 : rule__CompoundState__Group__2__Impl rule__CompoundState__Group__3 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1102:1: rule__CompoundState__Group__2 : rule__CompoundState__Group__2__Impl rule__CompoundState__Group__3 ;
     public final void rule__CompoundState__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1316:1: ( rule__CompoundState__Group__2__Impl rule__CompoundState__Group__3 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1317:2: rule__CompoundState__Group__2__Impl rule__CompoundState__Group__3
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1106:1: ( rule__CompoundState__Group__2__Impl rule__CompoundState__Group__3 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1107:2: rule__CompoundState__Group__2__Impl rule__CompoundState__Group__3
             {
-            pushFollow(FOLLOW_rule__CompoundState__Group__2__Impl_in_rule__CompoundState__Group__22584);
+            pushFollow(FOLLOW_rule__CompoundState__Group__2__Impl_in_rule__CompoundState__Group__22163);
             rule__CompoundState__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__CompoundState__Group__3_in_rule__CompoundState__Group__22587);
+            pushFollow(FOLLOW_rule__CompoundState__Group__3_in_rule__CompoundState__Group__22166);
             rule__CompoundState__Group__3();
 
             state._fsp--;
@@ -3506,20 +2932,20 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__2__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1324:1: rule__CompoundState__Group__2__Impl : ( 'state' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1114:1: rule__CompoundState__Group__2__Impl : ( 'state' ) ;
     public final void rule__CompoundState__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1328:1: ( ( 'state' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1329:1: ( 'state' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1118:1: ( ( 'state' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1119:1: ( 'state' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1329:1: ( 'state' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1330:1: 'state'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1119:1: ( 'state' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1120:1: 'state'
             {
              before(grammarAccess.getCompoundStateAccess().getStateKeyword_2()); 
-            match(input,19,FOLLOW_19_in_rule__CompoundState__Group__2__Impl2615); 
+            match(input,18,FOLLOW_18_in_rule__CompoundState__Group__2__Impl2194); 
              after(grammarAccess.getCompoundStateAccess().getStateKeyword_2()); 
 
             }
@@ -3543,21 +2969,21 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__3"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1343:1: rule__CompoundState__Group__3 : rule__CompoundState__Group__3__Impl rule__CompoundState__Group__4 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1133:1: rule__CompoundState__Group__3 : rule__CompoundState__Group__3__Impl rule__CompoundState__Group__4 ;
     public final void rule__CompoundState__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1347:1: ( rule__CompoundState__Group__3__Impl rule__CompoundState__Group__4 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1348:2: rule__CompoundState__Group__3__Impl rule__CompoundState__Group__4
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1137:1: ( rule__CompoundState__Group__3__Impl rule__CompoundState__Group__4 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1138:2: rule__CompoundState__Group__3__Impl rule__CompoundState__Group__4
             {
-            pushFollow(FOLLOW_rule__CompoundState__Group__3__Impl_in_rule__CompoundState__Group__32646);
+            pushFollow(FOLLOW_rule__CompoundState__Group__3__Impl_in_rule__CompoundState__Group__32225);
             rule__CompoundState__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__CompoundState__Group__4_in_rule__CompoundState__Group__32649);
+            pushFollow(FOLLOW_rule__CompoundState__Group__4_in_rule__CompoundState__Group__32228);
             rule__CompoundState__Group__4();
 
             state._fsp--;
@@ -3581,23 +3007,23 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__3__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1355:1: rule__CompoundState__Group__3__Impl : ( ( rule__CompoundState__NameAssignment_3 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1145:1: rule__CompoundState__Group__3__Impl : ( ( rule__CompoundState__NameAssignment_3 ) ) ;
     public final void rule__CompoundState__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1359:1: ( ( ( rule__CompoundState__NameAssignment_3 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1360:1: ( ( rule__CompoundState__NameAssignment_3 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1149:1: ( ( ( rule__CompoundState__NameAssignment_3 ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1150:1: ( ( rule__CompoundState__NameAssignment_3 ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1360:1: ( ( rule__CompoundState__NameAssignment_3 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1361:1: ( rule__CompoundState__NameAssignment_3 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1150:1: ( ( rule__CompoundState__NameAssignment_3 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1151:1: ( rule__CompoundState__NameAssignment_3 )
             {
              before(grammarAccess.getCompoundStateAccess().getNameAssignment_3()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1362:1: ( rule__CompoundState__NameAssignment_3 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1362:2: rule__CompoundState__NameAssignment_3
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1152:1: ( rule__CompoundState__NameAssignment_3 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1152:2: rule__CompoundState__NameAssignment_3
             {
-            pushFollow(FOLLOW_rule__CompoundState__NameAssignment_3_in_rule__CompoundState__Group__3__Impl2676);
+            pushFollow(FOLLOW_rule__CompoundState__NameAssignment_3_in_rule__CompoundState__Group__3__Impl2255);
             rule__CompoundState__NameAssignment_3();
 
             state._fsp--;
@@ -3628,21 +3054,21 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__4"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1372:1: rule__CompoundState__Group__4 : rule__CompoundState__Group__4__Impl rule__CompoundState__Group__5 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1162:1: rule__CompoundState__Group__4 : rule__CompoundState__Group__4__Impl rule__CompoundState__Group__5 ;
     public final void rule__CompoundState__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1376:1: ( rule__CompoundState__Group__4__Impl rule__CompoundState__Group__5 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1377:2: rule__CompoundState__Group__4__Impl rule__CompoundState__Group__5
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1166:1: ( rule__CompoundState__Group__4__Impl rule__CompoundState__Group__5 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1167:2: rule__CompoundState__Group__4__Impl rule__CompoundState__Group__5
             {
-            pushFollow(FOLLOW_rule__CompoundState__Group__4__Impl_in_rule__CompoundState__Group__42706);
+            pushFollow(FOLLOW_rule__CompoundState__Group__4__Impl_in_rule__CompoundState__Group__42285);
             rule__CompoundState__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__CompoundState__Group__5_in_rule__CompoundState__Group__42709);
+            pushFollow(FOLLOW_rule__CompoundState__Group__5_in_rule__CompoundState__Group__42288);
             rule__CompoundState__Group__5();
 
             state._fsp--;
@@ -3666,20 +3092,20 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__4__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1384:1: rule__CompoundState__Group__4__Impl : ( 'machine' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1174:1: rule__CompoundState__Group__4__Impl : ( 'machine' ) ;
     public final void rule__CompoundState__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1388:1: ( ( 'machine' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1389:1: ( 'machine' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1178:1: ( ( 'machine' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1179:1: ( 'machine' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1389:1: ( 'machine' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1390:1: 'machine'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1179:1: ( 'machine' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1180:1: 'machine'
             {
              before(grammarAccess.getCompoundStateAccess().getMachineKeyword_4()); 
-            match(input,21,FOLLOW_21_in_rule__CompoundState__Group__4__Impl2737); 
+            match(input,20,FOLLOW_20_in_rule__CompoundState__Group__4__Impl2316); 
              after(grammarAccess.getCompoundStateAccess().getMachineKeyword_4()); 
 
             }
@@ -3703,21 +3129,21 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__5"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1403:1: rule__CompoundState__Group__5 : rule__CompoundState__Group__5__Impl rule__CompoundState__Group__6 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1193:1: rule__CompoundState__Group__5 : rule__CompoundState__Group__5__Impl rule__CompoundState__Group__6 ;
     public final void rule__CompoundState__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1407:1: ( rule__CompoundState__Group__5__Impl rule__CompoundState__Group__6 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1408:2: rule__CompoundState__Group__5__Impl rule__CompoundState__Group__6
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1197:1: ( rule__CompoundState__Group__5__Impl rule__CompoundState__Group__6 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1198:2: rule__CompoundState__Group__5__Impl rule__CompoundState__Group__6
             {
-            pushFollow(FOLLOW_rule__CompoundState__Group__5__Impl_in_rule__CompoundState__Group__52768);
+            pushFollow(FOLLOW_rule__CompoundState__Group__5__Impl_in_rule__CompoundState__Group__52347);
             rule__CompoundState__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__CompoundState__Group__6_in_rule__CompoundState__Group__52771);
+            pushFollow(FOLLOW_rule__CompoundState__Group__6_in_rule__CompoundState__Group__52350);
             rule__CompoundState__Group__6();
 
             state._fsp--;
@@ -3741,23 +3167,23 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__5__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1415:1: rule__CompoundState__Group__5__Impl : ( ( rule__CompoundState__MachineAssignment_5 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1205:1: rule__CompoundState__Group__5__Impl : ( ( rule__CompoundState__MachineAssignment_5 ) ) ;
     public final void rule__CompoundState__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1419:1: ( ( ( rule__CompoundState__MachineAssignment_5 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1420:1: ( ( rule__CompoundState__MachineAssignment_5 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1209:1: ( ( ( rule__CompoundState__MachineAssignment_5 ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1210:1: ( ( rule__CompoundState__MachineAssignment_5 ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1420:1: ( ( rule__CompoundState__MachineAssignment_5 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1421:1: ( rule__CompoundState__MachineAssignment_5 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1210:1: ( ( rule__CompoundState__MachineAssignment_5 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1211:1: ( rule__CompoundState__MachineAssignment_5 )
             {
              before(grammarAccess.getCompoundStateAccess().getMachineAssignment_5()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1422:1: ( rule__CompoundState__MachineAssignment_5 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1422:2: rule__CompoundState__MachineAssignment_5
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1212:1: ( rule__CompoundState__MachineAssignment_5 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1212:2: rule__CompoundState__MachineAssignment_5
             {
-            pushFollow(FOLLOW_rule__CompoundState__MachineAssignment_5_in_rule__CompoundState__Group__5__Impl2798);
+            pushFollow(FOLLOW_rule__CompoundState__MachineAssignment_5_in_rule__CompoundState__Group__5__Impl2377);
             rule__CompoundState__MachineAssignment_5();
 
             state._fsp--;
@@ -3788,21 +3214,21 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__6"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1432:1: rule__CompoundState__Group__6 : rule__CompoundState__Group__6__Impl rule__CompoundState__Group__7 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1222:1: rule__CompoundState__Group__6 : rule__CompoundState__Group__6__Impl rule__CompoundState__Group__7 ;
     public final void rule__CompoundState__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1436:1: ( rule__CompoundState__Group__6__Impl rule__CompoundState__Group__7 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1437:2: rule__CompoundState__Group__6__Impl rule__CompoundState__Group__7
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1226:1: ( rule__CompoundState__Group__6__Impl rule__CompoundState__Group__7 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1227:2: rule__CompoundState__Group__6__Impl rule__CompoundState__Group__7
             {
-            pushFollow(FOLLOW_rule__CompoundState__Group__6__Impl_in_rule__CompoundState__Group__62828);
+            pushFollow(FOLLOW_rule__CompoundState__Group__6__Impl_in_rule__CompoundState__Group__62407);
             rule__CompoundState__Group__6__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__CompoundState__Group__7_in_rule__CompoundState__Group__62831);
+            pushFollow(FOLLOW_rule__CompoundState__Group__7_in_rule__CompoundState__Group__62410);
             rule__CompoundState__Group__7();
 
             state._fsp--;
@@ -3826,20 +3252,20 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__6__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1444:1: rule__CompoundState__Group__6__Impl : ( '{' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1234:1: rule__CompoundState__Group__6__Impl : ( '{' ) ;
     public final void rule__CompoundState__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1448:1: ( ( '{' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1449:1: ( '{' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1238:1: ( ( '{' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1239:1: ( '{' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1449:1: ( '{' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1450:1: '{'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1239:1: ( '{' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1240:1: '{'
             {
              before(grammarAccess.getCompoundStateAccess().getLeftCurlyBracketKeyword_6()); 
-            match(input,13,FOLLOW_13_in_rule__CompoundState__Group__6__Impl2859); 
+            match(input,13,FOLLOW_13_in_rule__CompoundState__Group__6__Impl2438); 
              after(grammarAccess.getCompoundStateAccess().getLeftCurlyBracketKeyword_6()); 
 
             }
@@ -3863,21 +3289,21 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__7"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1463:1: rule__CompoundState__Group__7 : rule__CompoundState__Group__7__Impl rule__CompoundState__Group__8 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1253:1: rule__CompoundState__Group__7 : rule__CompoundState__Group__7__Impl rule__CompoundState__Group__8 ;
     public final void rule__CompoundState__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1467:1: ( rule__CompoundState__Group__7__Impl rule__CompoundState__Group__8 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1468:2: rule__CompoundState__Group__7__Impl rule__CompoundState__Group__8
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1257:1: ( rule__CompoundState__Group__7__Impl rule__CompoundState__Group__8 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1258:2: rule__CompoundState__Group__7__Impl rule__CompoundState__Group__8
             {
-            pushFollow(FOLLOW_rule__CompoundState__Group__7__Impl_in_rule__CompoundState__Group__72890);
+            pushFollow(FOLLOW_rule__CompoundState__Group__7__Impl_in_rule__CompoundState__Group__72469);
             rule__CompoundState__Group__7__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__CompoundState__Group__8_in_rule__CompoundState__Group__72893);
+            pushFollow(FOLLOW_rule__CompoundState__Group__8_in_rule__CompoundState__Group__72472);
             rule__CompoundState__Group__8();
 
             state._fsp--;
@@ -3901,35 +3327,35 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__7__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1475:1: rule__CompoundState__Group__7__Impl : ( ( rule__CompoundState__TransitionsAssignment_7 )* ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1265:1: rule__CompoundState__Group__7__Impl : ( ( rule__CompoundState__TransitionsAssignment_7 )* ) ;
     public final void rule__CompoundState__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1479:1: ( ( ( rule__CompoundState__TransitionsAssignment_7 )* ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1480:1: ( ( rule__CompoundState__TransitionsAssignment_7 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1269:1: ( ( ( rule__CompoundState__TransitionsAssignment_7 )* ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1270:1: ( ( rule__CompoundState__TransitionsAssignment_7 )* )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1480:1: ( ( rule__CompoundState__TransitionsAssignment_7 )* )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1481:1: ( rule__CompoundState__TransitionsAssignment_7 )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1270:1: ( ( rule__CompoundState__TransitionsAssignment_7 )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1271:1: ( rule__CompoundState__TransitionsAssignment_7 )*
             {
              before(grammarAccess.getCompoundStateAccess().getTransitionsAssignment_7()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1482:1: ( rule__CompoundState__TransitionsAssignment_7 )*
-            loop14:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1272:1: ( rule__CompoundState__TransitionsAssignment_7 )*
+            loop11:
             do {
-                int alt14=2;
-                int LA14_0 = input.LA(1);
+                int alt11=2;
+                int LA11_0 = input.LA(1);
 
-                if ( (LA14_0==RULE_ID) ) {
-                    alt14=1;
+                if ( (LA11_0==RULE_ID) ) {
+                    alt11=1;
                 }
 
 
-                switch (alt14) {
+                switch (alt11) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1482:2: rule__CompoundState__TransitionsAssignment_7
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1272:2: rule__CompoundState__TransitionsAssignment_7
             	    {
-            	    pushFollow(FOLLOW_rule__CompoundState__TransitionsAssignment_7_in_rule__CompoundState__Group__7__Impl2920);
+            	    pushFollow(FOLLOW_rule__CompoundState__TransitionsAssignment_7_in_rule__CompoundState__Group__7__Impl2499);
             	    rule__CompoundState__TransitionsAssignment_7();
 
             	    state._fsp--;
@@ -3939,7 +3365,7 @@
             	    break;
 
             	default :
-            	    break loop14;
+            	    break loop11;
                 }
             } while (true);
 
@@ -3966,25 +3392,20 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__8"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1492:1: rule__CompoundState__Group__8 : rule__CompoundState__Group__8__Impl rule__CompoundState__Group__9 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1282:1: rule__CompoundState__Group__8 : rule__CompoundState__Group__8__Impl ;
     public final void rule__CompoundState__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1496:1: ( rule__CompoundState__Group__8__Impl rule__CompoundState__Group__9 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1497:2: rule__CompoundState__Group__8__Impl rule__CompoundState__Group__9
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1286:1: ( rule__CompoundState__Group__8__Impl )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1287:2: rule__CompoundState__Group__8__Impl
             {
-            pushFollow(FOLLOW_rule__CompoundState__Group__8__Impl_in_rule__CompoundState__Group__82951);
+            pushFollow(FOLLOW_rule__CompoundState__Group__8__Impl_in_rule__CompoundState__Group__82530);
             rule__CompoundState__Group__8__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__CompoundState__Group__9_in_rule__CompoundState__Group__82954);
-            rule__CompoundState__Group__9();
-
-            state._fsp--;
-
 
             }
 
@@ -4004,20 +3425,20 @@
 
 
     // $ANTLR start "rule__CompoundState__Group__8__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1504:1: rule__CompoundState__Group__8__Impl : ( '}' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1293:1: rule__CompoundState__Group__8__Impl : ( '}' ) ;
     public final void rule__CompoundState__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1508:1: ( ( '}' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1509:1: ( '}' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1297:1: ( ( '}' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1298:1: ( '}' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1509:1: ( '}' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1510:1: '}'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1298:1: ( '}' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1299:1: '}'
             {
              before(grammarAccess.getCompoundStateAccess().getRightCurlyBracketKeyword_8()); 
-            match(input,16,FOLLOW_16_in_rule__CompoundState__Group__8__Impl2982); 
+            match(input,16,FOLLOW_16_in_rule__CompoundState__Group__8__Impl2558); 
              after(grammarAccess.getCompoundStateAccess().getRightCurlyBracketKeyword_8()); 
 
             }
@@ -4040,268 +3461,22 @@
     // $ANTLR end "rule__CompoundState__Group__8__Impl"
 
 
-    // $ANTLR start "rule__CompoundState__Group__9"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1523:1: rule__CompoundState__Group__9 : rule__CompoundState__Group__9__Impl ;
-    public final void rule__CompoundState__Group__9() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1527:1: ( rule__CompoundState__Group__9__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1528:2: rule__CompoundState__Group__9__Impl
-            {
-            pushFollow(FOLLOW_rule__CompoundState__Group__9__Impl_in_rule__CompoundState__Group__93013);
-            rule__CompoundState__Group__9__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompoundState__Group__9"
-
-
-    // $ANTLR start "rule__CompoundState__Group__9__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1534:1: rule__CompoundState__Group__9__Impl : ( ( rule__CompoundState__Group_9__0 )? ) ;
-    public final void rule__CompoundState__Group__9__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1538:1: ( ( ( rule__CompoundState__Group_9__0 )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1539:1: ( ( rule__CompoundState__Group_9__0 )? )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1539:1: ( ( rule__CompoundState__Group_9__0 )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1540:1: ( rule__CompoundState__Group_9__0 )?
-            {
-             before(grammarAccess.getCompoundStateAccess().getGroup_9()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1541:1: ( rule__CompoundState__Group_9__0 )?
-            int alt15=2;
-            int LA15_0 = input.LA(1);
-
-            if ( (LA15_0==18) ) {
-                alt15=1;
-            }
-            switch (alt15) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1541:2: rule__CompoundState__Group_9__0
-                    {
-                    pushFollow(FOLLOW_rule__CompoundState__Group_9__0_in_rule__CompoundState__Group__9__Impl3040);
-                    rule__CompoundState__Group_9__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getCompoundStateAccess().getGroup_9()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompoundState__Group__9__Impl"
-
-
-    // $ANTLR start "rule__CompoundState__Group_9__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1571:1: rule__CompoundState__Group_9__0 : rule__CompoundState__Group_9__0__Impl rule__CompoundState__Group_9__1 ;
-    public final void rule__CompoundState__Group_9__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1575:1: ( rule__CompoundState__Group_9__0__Impl rule__CompoundState__Group_9__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1576:2: rule__CompoundState__Group_9__0__Impl rule__CompoundState__Group_9__1
-            {
-            pushFollow(FOLLOW_rule__CompoundState__Group_9__0__Impl_in_rule__CompoundState__Group_9__03091);
-            rule__CompoundState__Group_9__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FOLLOW_rule__CompoundState__Group_9__1_in_rule__CompoundState__Group_9__03094);
-            rule__CompoundState__Group_9__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompoundState__Group_9__0"
-
-
-    // $ANTLR start "rule__CompoundState__Group_9__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1583:1: rule__CompoundState__Group_9__0__Impl : ( 'debug' ) ;
-    public final void rule__CompoundState__Group_9__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1587:1: ( ( 'debug' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1588:1: ( 'debug' )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1588:1: ( 'debug' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1589:1: 'debug'
-            {
-             before(grammarAccess.getCompoundStateAccess().getDebugKeyword_9_0()); 
-            match(input,18,FOLLOW_18_in_rule__CompoundState__Group_9__0__Impl3122); 
-             after(grammarAccess.getCompoundStateAccess().getDebugKeyword_9_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompoundState__Group_9__0__Impl"
-
-
-    // $ANTLR start "rule__CompoundState__Group_9__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1602:1: rule__CompoundState__Group_9__1 : rule__CompoundState__Group_9__1__Impl ;
-    public final void rule__CompoundState__Group_9__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1606:1: ( rule__CompoundState__Group_9__1__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1607:2: rule__CompoundState__Group_9__1__Impl
-            {
-            pushFollow(FOLLOW_rule__CompoundState__Group_9__1__Impl_in_rule__CompoundState__Group_9__13153);
-            rule__CompoundState__Group_9__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompoundState__Group_9__1"
-
-
-    // $ANTLR start "rule__CompoundState__Group_9__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1613:1: rule__CompoundState__Group_9__1__Impl : ( ( rule__CompoundState__DbgNameAssignment_9_1 ) ) ;
-    public final void rule__CompoundState__Group_9__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1617:1: ( ( ( rule__CompoundState__DbgNameAssignment_9_1 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1618:1: ( ( rule__CompoundState__DbgNameAssignment_9_1 ) )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1618:1: ( ( rule__CompoundState__DbgNameAssignment_9_1 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1619:1: ( rule__CompoundState__DbgNameAssignment_9_1 )
-            {
-             before(grammarAccess.getCompoundStateAccess().getDbgNameAssignment_9_1()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1620:1: ( rule__CompoundState__DbgNameAssignment_9_1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1620:2: rule__CompoundState__DbgNameAssignment_9_1
-            {
-            pushFollow(FOLLOW_rule__CompoundState__DbgNameAssignment_9_1_in_rule__CompoundState__Group_9__1__Impl3180);
-            rule__CompoundState__DbgNameAssignment_9_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompoundStateAccess().getDbgNameAssignment_9_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompoundState__Group_9__1__Impl"
-
-
     // $ANTLR start "rule__Transition__Group__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1634:1: rule__Transition__Group__0 : rule__Transition__Group__0__Impl rule__Transition__Group__1 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1330:1: rule__Transition__Group__0 : rule__Transition__Group__0__Impl rule__Transition__Group__1 ;
     public final void rule__Transition__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1638:1: ( rule__Transition__Group__0__Impl rule__Transition__Group__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1639:2: rule__Transition__Group__0__Impl rule__Transition__Group__1
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1334:1: ( rule__Transition__Group__0__Impl rule__Transition__Group__1 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1335:2: rule__Transition__Group__0__Impl rule__Transition__Group__1
             {
-            pushFollow(FOLLOW_rule__Transition__Group__0__Impl_in_rule__Transition__Group__03214);
+            pushFollow(FOLLOW_rule__Transition__Group__0__Impl_in_rule__Transition__Group__02607);
             rule__Transition__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Transition__Group__1_in_rule__Transition__Group__03217);
+            pushFollow(FOLLOW_rule__Transition__Group__1_in_rule__Transition__Group__02610);
             rule__Transition__Group__1();
 
             state._fsp--;
@@ -4325,23 +3500,23 @@
 
 
     // $ANTLR start "rule__Transition__Group__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1646:1: rule__Transition__Group__0__Impl : ( ( rule__Transition__EventAssignment_0 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1342:1: rule__Transition__Group__0__Impl : ( ( rule__Transition__EventAssignment_0 ) ) ;
     public final void rule__Transition__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1650:1: ( ( ( rule__Transition__EventAssignment_0 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1651:1: ( ( rule__Transition__EventAssignment_0 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1346:1: ( ( ( rule__Transition__EventAssignment_0 ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1347:1: ( ( rule__Transition__EventAssignment_0 ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1651:1: ( ( rule__Transition__EventAssignment_0 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1652:1: ( rule__Transition__EventAssignment_0 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1347:1: ( ( rule__Transition__EventAssignment_0 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1348:1: ( rule__Transition__EventAssignment_0 )
             {
              before(grammarAccess.getTransitionAccess().getEventAssignment_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1653:1: ( rule__Transition__EventAssignment_0 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1653:2: rule__Transition__EventAssignment_0
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1349:1: ( rule__Transition__EventAssignment_0 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1349:2: rule__Transition__EventAssignment_0
             {
-            pushFollow(FOLLOW_rule__Transition__EventAssignment_0_in_rule__Transition__Group__0__Impl3244);
+            pushFollow(FOLLOW_rule__Transition__EventAssignment_0_in_rule__Transition__Group__0__Impl2637);
             rule__Transition__EventAssignment_0();
 
             state._fsp--;
@@ -4372,21 +3547,21 @@
 
 
     // $ANTLR start "rule__Transition__Group__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1663:1: rule__Transition__Group__1 : rule__Transition__Group__1__Impl rule__Transition__Group__2 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1359:1: rule__Transition__Group__1 : rule__Transition__Group__1__Impl rule__Transition__Group__2 ;
     public final void rule__Transition__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1667:1: ( rule__Transition__Group__1__Impl rule__Transition__Group__2 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1668:2: rule__Transition__Group__1__Impl rule__Transition__Group__2
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1363:1: ( rule__Transition__Group__1__Impl rule__Transition__Group__2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1364:2: rule__Transition__Group__1__Impl rule__Transition__Group__2
             {
-            pushFollow(FOLLOW_rule__Transition__Group__1__Impl_in_rule__Transition__Group__13274);
+            pushFollow(FOLLOW_rule__Transition__Group__1__Impl_in_rule__Transition__Group__12667);
             rule__Transition__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Transition__Group__2_in_rule__Transition__Group__13277);
+            pushFollow(FOLLOW_rule__Transition__Group__2_in_rule__Transition__Group__12670);
             rule__Transition__Group__2();
 
             state._fsp--;
@@ -4410,20 +3585,20 @@
 
 
     // $ANTLR start "rule__Transition__Group__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1675:1: rule__Transition__Group__1__Impl : ( '=>' ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1371:1: rule__Transition__Group__1__Impl : ( '=>' ) ;
     public final void rule__Transition__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1679:1: ( ( '=>' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1680:1: ( '=>' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1375:1: ( ( '=>' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1376:1: ( '=>' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1680:1: ( '=>' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1681:1: '=>'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1376:1: ( '=>' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1377:1: '=>'
             {
              before(grammarAccess.getTransitionAccess().getEqualsSignGreaterThanSignKeyword_1()); 
-            match(input,22,FOLLOW_22_in_rule__Transition__Group__1__Impl3305); 
+            match(input,21,FOLLOW_21_in_rule__Transition__Group__1__Impl2698); 
              after(grammarAccess.getTransitionAccess().getEqualsSignGreaterThanSignKeyword_1()); 
 
             }
@@ -4447,25 +3622,20 @@
 
 
     // $ANTLR start "rule__Transition__Group__2"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1694:1: rule__Transition__Group__2 : rule__Transition__Group__2__Impl rule__Transition__Group__3 ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1390:1: rule__Transition__Group__2 : rule__Transition__Group__2__Impl ;
     public final void rule__Transition__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1698:1: ( rule__Transition__Group__2__Impl rule__Transition__Group__3 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1699:2: rule__Transition__Group__2__Impl rule__Transition__Group__3
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1394:1: ( rule__Transition__Group__2__Impl )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1395:2: rule__Transition__Group__2__Impl
             {
-            pushFollow(FOLLOW_rule__Transition__Group__2__Impl_in_rule__Transition__Group__23336);
+            pushFollow(FOLLOW_rule__Transition__Group__2__Impl_in_rule__Transition__Group__22729);
             rule__Transition__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FOLLOW_rule__Transition__Group__3_in_rule__Transition__Group__23339);
-            rule__Transition__Group__3();
-
-            state._fsp--;
-
 
             }
 
@@ -4485,23 +3655,23 @@
 
 
     // $ANTLR start "rule__Transition__Group__2__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1706:1: rule__Transition__Group__2__Impl : ( ( rule__Transition__StateAssignment_2 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1401:1: rule__Transition__Group__2__Impl : ( ( rule__Transition__StateAssignment_2 ) ) ;
     public final void rule__Transition__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1710:1: ( ( ( rule__Transition__StateAssignment_2 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1711:1: ( ( rule__Transition__StateAssignment_2 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1405:1: ( ( ( rule__Transition__StateAssignment_2 ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1406:1: ( ( rule__Transition__StateAssignment_2 ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1711:1: ( ( rule__Transition__StateAssignment_2 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1712:1: ( rule__Transition__StateAssignment_2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1406:1: ( ( rule__Transition__StateAssignment_2 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1407:1: ( rule__Transition__StateAssignment_2 )
             {
              before(grammarAccess.getTransitionAccess().getStateAssignment_2()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1713:1: ( rule__Transition__StateAssignment_2 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1713:2: rule__Transition__StateAssignment_2
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1408:1: ( rule__Transition__StateAssignment_2 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1408:2: rule__Transition__StateAssignment_2
             {
-            pushFollow(FOLLOW_rule__Transition__StateAssignment_2_in_rule__Transition__Group__2__Impl3366);
+            pushFollow(FOLLOW_rule__Transition__StateAssignment_2_in_rule__Transition__Group__2__Impl2756);
             rule__Transition__StateAssignment_2();
 
             state._fsp--;
@@ -4531,278 +3701,22 @@
     // $ANTLR end "rule__Transition__Group__2__Impl"
 
 
-    // $ANTLR start "rule__Transition__Group__3"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1723:1: rule__Transition__Group__3 : rule__Transition__Group__3__Impl ;
-    public final void rule__Transition__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1727:1: ( rule__Transition__Group__3__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1728:2: rule__Transition__Group__3__Impl
-            {
-            pushFollow(FOLLOW_rule__Transition__Group__3__Impl_in_rule__Transition__Group__33396);
-            rule__Transition__Group__3__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Transition__Group__3"
-
-
-    // $ANTLR start "rule__Transition__Group__3__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1734:1: rule__Transition__Group__3__Impl : ( ( rule__Transition__Group_3__0 )? ) ;
-    public final void rule__Transition__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1738:1: ( ( ( rule__Transition__Group_3__0 )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1739:1: ( ( rule__Transition__Group_3__0 )? )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1739:1: ( ( rule__Transition__Group_3__0 )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1740:1: ( rule__Transition__Group_3__0 )?
-            {
-             before(grammarAccess.getTransitionAccess().getGroup_3()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1741:1: ( rule__Transition__Group_3__0 )?
-            int alt16=2;
-            int LA16_0 = input.LA(1);
-
-            if ( (LA16_0==18) ) {
-                alt16=1;
-            }
-            switch (alt16) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1741:2: rule__Transition__Group_3__0
-                    {
-                    pushFollow(FOLLOW_rule__Transition__Group_3__0_in_rule__Transition__Group__3__Impl3423);
-                    rule__Transition__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getTransitionAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Transition__Group__3__Impl"
-
-
-    // $ANTLR start "rule__Transition__Group_3__0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1759:1: rule__Transition__Group_3__0 : rule__Transition__Group_3__0__Impl rule__Transition__Group_3__1 ;
-    public final void rule__Transition__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1763:1: ( rule__Transition__Group_3__0__Impl rule__Transition__Group_3__1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1764:2: rule__Transition__Group_3__0__Impl rule__Transition__Group_3__1
-            {
-            pushFollow(FOLLOW_rule__Transition__Group_3__0__Impl_in_rule__Transition__Group_3__03462);
-            rule__Transition__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FOLLOW_rule__Transition__Group_3__1_in_rule__Transition__Group_3__03465);
-            rule__Transition__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Transition__Group_3__0"
-
-
-    // $ANTLR start "rule__Transition__Group_3__0__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1771:1: rule__Transition__Group_3__0__Impl : ( 'debug' ) ;
-    public final void rule__Transition__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1775:1: ( ( 'debug' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1776:1: ( 'debug' )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1776:1: ( 'debug' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1777:1: 'debug'
-            {
-             before(grammarAccess.getTransitionAccess().getDebugKeyword_3_0()); 
-            match(input,18,FOLLOW_18_in_rule__Transition__Group_3__0__Impl3493); 
-             after(grammarAccess.getTransitionAccess().getDebugKeyword_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Transition__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__Transition__Group_3__1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1790:1: rule__Transition__Group_3__1 : rule__Transition__Group_3__1__Impl ;
-    public final void rule__Transition__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1794:1: ( rule__Transition__Group_3__1__Impl )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1795:2: rule__Transition__Group_3__1__Impl
-            {
-            pushFollow(FOLLOW_rule__Transition__Group_3__1__Impl_in_rule__Transition__Group_3__13524);
-            rule__Transition__Group_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Transition__Group_3__1"
-
-
-    // $ANTLR start "rule__Transition__Group_3__1__Impl"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1801:1: rule__Transition__Group_3__1__Impl : ( ( rule__Transition__DbgNameAssignment_3_1 ) ) ;
-    public final void rule__Transition__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1805:1: ( ( ( rule__Transition__DbgNameAssignment_3_1 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1806:1: ( ( rule__Transition__DbgNameAssignment_3_1 ) )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1806:1: ( ( rule__Transition__DbgNameAssignment_3_1 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1807:1: ( rule__Transition__DbgNameAssignment_3_1 )
-            {
-             before(grammarAccess.getTransitionAccess().getDbgNameAssignment_3_1()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1808:1: ( rule__Transition__DbgNameAssignment_3_1 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1808:2: rule__Transition__DbgNameAssignment_3_1
-            {
-            pushFollow(FOLLOW_rule__Transition__DbgNameAssignment_3_1_in_rule__Transition__Group_3__1__Impl3551);
-            rule__Transition__DbgNameAssignment_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getTransitionAccess().getDbgNameAssignment_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Transition__Group_3__1__Impl"
-
-
     // $ANTLR start "rule__Module__NameAssignment_1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1823:1: rule__Module__NameAssignment_1 : ( ( rule__Module__NameAlternatives_1_0 ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1425:1: rule__Module__NameAssignment_1 : ( RULE_STRING ) ;
     public final void rule__Module__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1827:1: ( ( ( rule__Module__NameAlternatives_1_0 ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1828:1: ( ( rule__Module__NameAlternatives_1_0 ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1429:1: ( ( RULE_STRING ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1430:1: ( RULE_STRING )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1828:1: ( ( rule__Module__NameAlternatives_1_0 ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1829:1: ( rule__Module__NameAlternatives_1_0 )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1430:1: ( RULE_STRING )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1431:1: RULE_STRING
             {
-             before(grammarAccess.getModuleAccess().getNameAlternatives_1_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1830:1: ( rule__Module__NameAlternatives_1_0 )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1830:2: rule__Module__NameAlternatives_1_0
-            {
-            pushFollow(FOLLOW_rule__Module__NameAlternatives_1_0_in_rule__Module__NameAssignment_13590);
-            rule__Module__NameAlternatives_1_0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getModuleAccess().getNameAlternatives_1_0()); 
+             before(grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0()); 
+            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Module__NameAssignment_12797); 
+             after(grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0()); 
 
             }
 
@@ -4825,20 +3739,20 @@
 
 
     // $ANTLR start "rule__Module__MachinesAssignment_2"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1839:1: rule__Module__MachinesAssignment_2 : ( ruleStatemachine ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1440:1: rule__Module__MachinesAssignment_2 : ( ruleStatemachine ) ;
     public final void rule__Module__MachinesAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1843:1: ( ( ruleStatemachine ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1844:1: ( ruleStatemachine )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1444:1: ( ( ruleStatemachine ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1445:1: ( ruleStatemachine )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1844:1: ( ruleStatemachine )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1845:1: ruleStatemachine
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1445:1: ( ruleStatemachine )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1446:1: ruleStatemachine
             {
              before(grammarAccess.getModuleAccess().getMachinesStatemachineParserRuleCall_2_0()); 
-            pushFollow(FOLLOW_ruleStatemachine_in_rule__Module__MachinesAssignment_23623);
+            pushFollow(FOLLOW_ruleStatemachine_in_rule__Module__MachinesAssignment_22828);
             ruleStatemachine();
 
             state._fsp--;
@@ -4866,24 +3780,24 @@
 
 
     // $ANTLR start "rule__Statemachine__InitialAssignment_0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1854:1: rule__Statemachine__InitialAssignment_0 : ( ( 'initial' ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1455:1: rule__Statemachine__InitialAssignment_0 : ( ( 'initial' ) ) ;
     public final void rule__Statemachine__InitialAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1858:1: ( ( ( 'initial' ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1859:1: ( ( 'initial' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1459:1: ( ( ( 'initial' ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1460:1: ( ( 'initial' ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1859:1: ( ( 'initial' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1860:1: ( 'initial' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1460:1: ( ( 'initial' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1461:1: ( 'initial' )
             {
              before(grammarAccess.getStatemachineAccess().getInitialInitialKeyword_0_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1861:1: ( 'initial' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1862:1: 'initial'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1462:1: ( 'initial' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1463:1: 'initial'
             {
              before(grammarAccess.getStatemachineAccess().getInitialInitialKeyword_0_0()); 
-            match(input,23,FOLLOW_23_in_rule__Statemachine__InitialAssignment_03659); 
+            match(input,22,FOLLOW_22_in_rule__Statemachine__InitialAssignment_02864); 
              after(grammarAccess.getStatemachineAccess().getInitialInitialKeyword_0_0()); 
 
             }
@@ -4911,20 +3825,20 @@
 
 
     // $ANTLR start "rule__Statemachine__NameAssignment_2"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1877:1: rule__Statemachine__NameAssignment_2 : ( RULE_ID ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1478:1: rule__Statemachine__NameAssignment_2 : ( RULE_ID ) ;
     public final void rule__Statemachine__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1881:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1882:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1482:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1483:1: ( RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1882:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1883:1: RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1483:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1484:1: RULE_ID
             {
              before(grammarAccess.getStatemachineAccess().getNameIDTerminalRuleCall_2_0()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Statemachine__NameAssignment_23698); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Statemachine__NameAssignment_22903); 
              after(grammarAccess.getStatemachineAccess().getNameIDTerminalRuleCall_2_0()); 
 
             }
@@ -4948,20 +3862,20 @@
 
 
     // $ANTLR start "rule__Statemachine__ValueAssignment_3_1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1892:1: rule__Statemachine__ValueAssignment_3_1 : ( RULE_INT ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1493:1: rule__Statemachine__ValueAssignment_3_1 : ( RULE_INT ) ;
     public final void rule__Statemachine__ValueAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1896:1: ( ( RULE_INT ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1897:1: ( RULE_INT )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1497:1: ( ( RULE_INT ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1498:1: ( RULE_INT )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1897:1: ( RULE_INT )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1898:1: RULE_INT
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1498:1: ( RULE_INT )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1499:1: RULE_INT
             {
              before(grammarAccess.getStatemachineAccess().getValueINTTerminalRuleCall_3_1_0()); 
-            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Statemachine__ValueAssignment_3_13729); 
+            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Statemachine__ValueAssignment_3_12934); 
              after(grammarAccess.getStatemachineAccess().getValueINTTerminalRuleCall_3_1_0()); 
 
             }
@@ -4985,20 +3899,20 @@
 
 
     // $ANTLR start "rule__Statemachine__EventsAssignment_6"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1907:1: rule__Statemachine__EventsAssignment_6 : ( ruleEvent ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1508:1: rule__Statemachine__EventsAssignment_6 : ( ruleEvent ) ;
     public final void rule__Statemachine__EventsAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1911:1: ( ( ruleEvent ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1912:1: ( ruleEvent )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1512:1: ( ( ruleEvent ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1513:1: ( ruleEvent )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1912:1: ( ruleEvent )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1913:1: ruleEvent
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1513:1: ( ruleEvent )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1514:1: ruleEvent
             {
              before(grammarAccess.getStatemachineAccess().getEventsEventParserRuleCall_6_0()); 
-            pushFollow(FOLLOW_ruleEvent_in_rule__Statemachine__EventsAssignment_63760);
+            pushFollow(FOLLOW_ruleEvent_in_rule__Statemachine__EventsAssignment_62965);
             ruleEvent();
 
             state._fsp--;
@@ -5026,20 +3940,20 @@
 
 
     // $ANTLR start "rule__Statemachine__StatesAssignment_8"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1922:1: rule__Statemachine__StatesAssignment_8 : ( ruleState ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1523:1: rule__Statemachine__StatesAssignment_8 : ( ruleState ) ;
     public final void rule__Statemachine__StatesAssignment_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1926:1: ( ( ruleState ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1927:1: ( ruleState )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1527:1: ( ( ruleState ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1528:1: ( ruleState )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1927:1: ( ruleState )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1928:1: ruleState
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1528:1: ( ruleState )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1529:1: ruleState
             {
              before(grammarAccess.getStatemachineAccess().getStatesStateParserRuleCall_8_0()); 
-            pushFollow(FOLLOW_ruleState_in_rule__Statemachine__StatesAssignment_83791);
+            pushFollow(FOLLOW_ruleState_in_rule__Statemachine__StatesAssignment_82996);
             ruleState();
 
             state._fsp--;
@@ -5066,58 +3980,21 @@
     // $ANTLR end "rule__Statemachine__StatesAssignment_8"
 
 
-    // $ANTLR start "rule__Statemachine__DbgNameAssignment_10_1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1937:1: rule__Statemachine__DbgNameAssignment_10_1 : ( RULE_ID ) ;
-    public final void rule__Statemachine__DbgNameAssignment_10_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1941:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1942:1: ( RULE_ID )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1942:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1943:1: RULE_ID
-            {
-             before(grammarAccess.getStatemachineAccess().getDbgNameIDTerminalRuleCall_10_1_0()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Statemachine__DbgNameAssignment_10_13822); 
-             after(grammarAccess.getStatemachineAccess().getDbgNameIDTerminalRuleCall_10_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Statemachine__DbgNameAssignment_10_1"
-
-
     // $ANTLR start "rule__Event__NameAssignment"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1952:1: rule__Event__NameAssignment : ( RULE_ID ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1538:1: rule__Event__NameAssignment : ( RULE_ID ) ;
     public final void rule__Event__NameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1956:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1957:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1542:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1543:1: ( RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1957:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1958:1: RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1543:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1544:1: RULE_ID
             {
              before(grammarAccess.getEventAccess().getNameIDTerminalRuleCall_0()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Event__NameAssignment3853); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Event__NameAssignment3027); 
              after(grammarAccess.getEventAccess().getNameIDTerminalRuleCall_0()); 
 
             }
@@ -5141,24 +4018,24 @@
 
 
     // $ANTLR start "rule__SimpleState__InitialAssignment_0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1967:1: rule__SimpleState__InitialAssignment_0 : ( ( 'initial' ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1553:1: rule__SimpleState__InitialAssignment_0 : ( ( 'initial' ) ) ;
     public final void rule__SimpleState__InitialAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1971:1: ( ( ( 'initial' ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1972:1: ( ( 'initial' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1557:1: ( ( ( 'initial' ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1558:1: ( ( 'initial' ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1972:1: ( ( 'initial' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1973:1: ( 'initial' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1558:1: ( ( 'initial' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1559:1: ( 'initial' )
             {
              before(grammarAccess.getSimpleStateAccess().getInitialInitialKeyword_0_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1974:1: ( 'initial' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1975:1: 'initial'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1560:1: ( 'initial' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1561:1: 'initial'
             {
              before(grammarAccess.getSimpleStateAccess().getInitialInitialKeyword_0_0()); 
-            match(input,23,FOLLOW_23_in_rule__SimpleState__InitialAssignment_03889); 
+            match(input,22,FOLLOW_22_in_rule__SimpleState__InitialAssignment_03063); 
              after(grammarAccess.getSimpleStateAccess().getInitialInitialKeyword_0_0()); 
 
             }
@@ -5186,20 +4063,20 @@
 
 
     // $ANTLR start "rule__SimpleState__NameAssignment_2"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1990:1: rule__SimpleState__NameAssignment_2 : ( RULE_ID ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1576:1: rule__SimpleState__NameAssignment_2 : ( RULE_ID ) ;
     public final void rule__SimpleState__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1994:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1995:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1580:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1581:1: ( RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1995:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1996:1: RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1581:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1582:1: RULE_ID
             {
              before(grammarAccess.getSimpleStateAccess().getNameIDTerminalRuleCall_2_0()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__SimpleState__NameAssignment_23928); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__SimpleState__NameAssignment_23102); 
              after(grammarAccess.getSimpleStateAccess().getNameIDTerminalRuleCall_2_0()); 
 
             }
@@ -5223,20 +4100,20 @@
 
 
     // $ANTLR start "rule__SimpleState__ValueAssignment_3_1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2005:1: rule__SimpleState__ValueAssignment_3_1 : ( RULE_INT ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1591:1: rule__SimpleState__ValueAssignment_3_1 : ( RULE_INT ) ;
     public final void rule__SimpleState__ValueAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2009:1: ( ( RULE_INT ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2010:1: ( RULE_INT )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1595:1: ( ( RULE_INT ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1596:1: ( RULE_INT )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2010:1: ( RULE_INT )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2011:1: RULE_INT
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1596:1: ( RULE_INT )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1597:1: RULE_INT
             {
              before(grammarAccess.getSimpleStateAccess().getValueINTTerminalRuleCall_3_1_0()); 
-            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__SimpleState__ValueAssignment_3_13959); 
+            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__SimpleState__ValueAssignment_3_13133); 
              after(grammarAccess.getSimpleStateAccess().getValueINTTerminalRuleCall_3_1_0()); 
 
             }
@@ -5260,20 +4137,20 @@
 
 
     // $ANTLR start "rule__SimpleState__TransitionsAssignment_5"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2020:1: rule__SimpleState__TransitionsAssignment_5 : ( ruleTransition ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1606:1: rule__SimpleState__TransitionsAssignment_5 : ( ruleTransition ) ;
     public final void rule__SimpleState__TransitionsAssignment_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2024:1: ( ( ruleTransition ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2025:1: ( ruleTransition )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1610:1: ( ( ruleTransition ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1611:1: ( ruleTransition )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2025:1: ( ruleTransition )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2026:1: ruleTransition
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1611:1: ( ruleTransition )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1612:1: ruleTransition
             {
              before(grammarAccess.getSimpleStateAccess().getTransitionsTransitionParserRuleCall_5_0()); 
-            pushFollow(FOLLOW_ruleTransition_in_rule__SimpleState__TransitionsAssignment_53990);
+            pushFollow(FOLLOW_ruleTransition_in_rule__SimpleState__TransitionsAssignment_53164);
             ruleTransition();
 
             state._fsp--;
@@ -5300,62 +4177,25 @@
     // $ANTLR end "rule__SimpleState__TransitionsAssignment_5"
 
 
-    // $ANTLR start "rule__SimpleState__DbgNameAssignment_7_1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2035:1: rule__SimpleState__DbgNameAssignment_7_1 : ( RULE_ID ) ;
-    public final void rule__SimpleState__DbgNameAssignment_7_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2039:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2040:1: ( RULE_ID )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2040:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2041:1: RULE_ID
-            {
-             before(grammarAccess.getSimpleStateAccess().getDbgNameIDTerminalRuleCall_7_1_0()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__SimpleState__DbgNameAssignment_7_14021); 
-             after(grammarAccess.getSimpleStateAccess().getDbgNameIDTerminalRuleCall_7_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SimpleState__DbgNameAssignment_7_1"
-
-
     // $ANTLR start "rule__CompoundState__InitialAssignment_1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2050:1: rule__CompoundState__InitialAssignment_1 : ( ( 'initial' ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1621:1: rule__CompoundState__InitialAssignment_1 : ( ( 'initial' ) ) ;
     public final void rule__CompoundState__InitialAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2054:1: ( ( ( 'initial' ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2055:1: ( ( 'initial' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1625:1: ( ( ( 'initial' ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1626:1: ( ( 'initial' ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2055:1: ( ( 'initial' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2056:1: ( 'initial' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1626:1: ( ( 'initial' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1627:1: ( 'initial' )
             {
              before(grammarAccess.getCompoundStateAccess().getInitialInitialKeyword_1_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2057:1: ( 'initial' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2058:1: 'initial'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1628:1: ( 'initial' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1629:1: 'initial'
             {
              before(grammarAccess.getCompoundStateAccess().getInitialInitialKeyword_1_0()); 
-            match(input,23,FOLLOW_23_in_rule__CompoundState__InitialAssignment_14057); 
+            match(input,22,FOLLOW_22_in_rule__CompoundState__InitialAssignment_13200); 
              after(grammarAccess.getCompoundStateAccess().getInitialInitialKeyword_1_0()); 
 
             }
@@ -5383,20 +4223,20 @@
 
 
     // $ANTLR start "rule__CompoundState__NameAssignment_3"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2073:1: rule__CompoundState__NameAssignment_3 : ( RULE_ID ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1644:1: rule__CompoundState__NameAssignment_3 : ( RULE_ID ) ;
     public final void rule__CompoundState__NameAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2077:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2078:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1648:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1649:1: ( RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2078:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2079:1: RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1649:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1650:1: RULE_ID
             {
              before(grammarAccess.getCompoundStateAccess().getNameIDTerminalRuleCall_3_0()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__CompoundState__NameAssignment_34096); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__CompoundState__NameAssignment_33239); 
              after(grammarAccess.getCompoundStateAccess().getNameIDTerminalRuleCall_3_0()); 
 
             }
@@ -5420,24 +4260,24 @@
 
 
     // $ANTLR start "rule__CompoundState__MachineAssignment_5"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2088:1: rule__CompoundState__MachineAssignment_5 : ( ( RULE_ID ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1659:1: rule__CompoundState__MachineAssignment_5 : ( ( RULE_ID ) ) ;
     public final void rule__CompoundState__MachineAssignment_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2092:1: ( ( ( RULE_ID ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2093:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1663:1: ( ( ( RULE_ID ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1664:1: ( ( RULE_ID ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2093:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2094:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1664:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1665:1: ( RULE_ID )
             {
              before(grammarAccess.getCompoundStateAccess().getMachineStatemachineCrossReference_5_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2095:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2096:1: RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1666:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1667:1: RULE_ID
             {
              before(grammarAccess.getCompoundStateAccess().getMachineStatemachineIDTerminalRuleCall_5_0_1()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__CompoundState__MachineAssignment_54131); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__CompoundState__MachineAssignment_53274); 
              after(grammarAccess.getCompoundStateAccess().getMachineStatemachineIDTerminalRuleCall_5_0_1()); 
 
             }
@@ -5465,20 +4305,20 @@
 
 
     // $ANTLR start "rule__CompoundState__TransitionsAssignment_7"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2107:1: rule__CompoundState__TransitionsAssignment_7 : ( ruleTransition ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1678:1: rule__CompoundState__TransitionsAssignment_7 : ( ruleTransition ) ;
     public final void rule__CompoundState__TransitionsAssignment_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2111:1: ( ( ruleTransition ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2112:1: ( ruleTransition )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1682:1: ( ( ruleTransition ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1683:1: ( ruleTransition )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2112:1: ( ruleTransition )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2113:1: ruleTransition
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1683:1: ( ruleTransition )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1684:1: ruleTransition
             {
              before(grammarAccess.getCompoundStateAccess().getTransitionsTransitionParserRuleCall_7_0()); 
-            pushFollow(FOLLOW_ruleTransition_in_rule__CompoundState__TransitionsAssignment_74166);
+            pushFollow(FOLLOW_ruleTransition_in_rule__CompoundState__TransitionsAssignment_73309);
             ruleTransition();
 
             state._fsp--;
@@ -5505,62 +4345,25 @@
     // $ANTLR end "rule__CompoundState__TransitionsAssignment_7"
 
 
-    // $ANTLR start "rule__CompoundState__DbgNameAssignment_9_1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2122:1: rule__CompoundState__DbgNameAssignment_9_1 : ( RULE_ID ) ;
-    public final void rule__CompoundState__DbgNameAssignment_9_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2126:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2127:1: ( RULE_ID )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2127:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2128:1: RULE_ID
-            {
-             before(grammarAccess.getCompoundStateAccess().getDbgNameIDTerminalRuleCall_9_1_0()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__CompoundState__DbgNameAssignment_9_14197); 
-             after(grammarAccess.getCompoundStateAccess().getDbgNameIDTerminalRuleCall_9_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompoundState__DbgNameAssignment_9_1"
-
-
     // $ANTLR start "rule__Transition__EventAssignment_0"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2137:1: rule__Transition__EventAssignment_0 : ( ( RULE_ID ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1693:1: rule__Transition__EventAssignment_0 : ( ( RULE_ID ) ) ;
     public final void rule__Transition__EventAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2141:1: ( ( ( RULE_ID ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2142:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1697:1: ( ( ( RULE_ID ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1698:1: ( ( RULE_ID ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2142:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2143:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1698:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1699:1: ( RULE_ID )
             {
              before(grammarAccess.getTransitionAccess().getEventEventCrossReference_0_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2144:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2145:1: RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1700:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1701:1: RULE_ID
             {
              before(grammarAccess.getTransitionAccess().getEventEventIDTerminalRuleCall_0_0_1()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Transition__EventAssignment_04232); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Transition__EventAssignment_03344); 
              after(grammarAccess.getTransitionAccess().getEventEventIDTerminalRuleCall_0_0_1()); 
 
             }
@@ -5588,24 +4391,24 @@
 
 
     // $ANTLR start "rule__Transition__StateAssignment_2"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2156:1: rule__Transition__StateAssignment_2 : ( ( RULE_ID ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1712:1: rule__Transition__StateAssignment_2 : ( ( RULE_ID ) ) ;
     public final void rule__Transition__StateAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2160:1: ( ( ( RULE_ID ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2161:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1716:1: ( ( ( RULE_ID ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1717:1: ( ( RULE_ID ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2161:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2162:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1717:1: ( ( RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1718:1: ( RULE_ID )
             {
              before(grammarAccess.getTransitionAccess().getStateStateCrossReference_2_0()); 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2163:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2164:1: RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1719:1: ( RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:1720:1: RULE_ID
             {
              before(grammarAccess.getTransitionAccess().getStateStateIDTerminalRuleCall_2_0_1()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Transition__StateAssignment_24271); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Transition__StateAssignment_23383); 
              after(grammarAccess.getTransitionAccess().getStateStateIDTerminalRuleCall_2_0_1()); 
 
             }
@@ -5631,43 +4434,6 @@
     }
     // $ANTLR end "rule__Transition__StateAssignment_2"
 
-
-    // $ANTLR start "rule__Transition__DbgNameAssignment_3_1"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2175:1: rule__Transition__DbgNameAssignment_3_1 : ( RULE_ID ) ;
-    public final void rule__Transition__DbgNameAssignment_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2179:1: ( ( RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2180:1: ( RULE_ID )
-            {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2180:1: ( RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states.ui/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/ui/contentassist/antlr/internal/InternalStates.g:2181:1: RULE_ID
-            {
-             before(grammarAccess.getTransitionAccess().getDbgNameIDTerminalRuleCall_3_1_0()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Transition__DbgNameAssignment_3_14306); 
-             after(grammarAccess.getTransitionAccess().getDbgNameIDTerminalRuleCall_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Transition__DbgNameAssignment_3_1"
-
     // Delegated rules
 
 
@@ -5694,164 +4460,126 @@
     public static final BitSet FOLLOW_ruleTransition_in_entryRuleTransition421 = new BitSet(new long[]{0x0000000000000000L});
     public static final BitSet FOLLOW_EOF_in_entryRuleTransition428 = new BitSet(new long[]{0x0000000000000002L});
     public static final BitSet FOLLOW_rule__Transition__Group__0_in_ruleTransition454 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_STRING_in_rule__Module__NameAlternatives_1_0490 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__Module__NameAlternatives_1_0507 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleSimpleState_in_rule__State__Alternatives539 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleCompoundState_in_rule__State__Alternatives556 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Module__Group__0__Impl_in_rule__Module__Group__0586 = new BitSet(new long[]{0x0000000000000030L});
-    public static final BitSet FOLLOW_rule__Module__Group__1_in_rule__Module__Group__0589 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_11_in_rule__Module__Group__0__Impl617 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Module__Group__1__Impl_in_rule__Module__Group__1648 = new BitSet(new long[]{0x0000000000801000L});
-    public static final BitSet FOLLOW_rule__Module__Group__2_in_rule__Module__Group__1651 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Module__NameAssignment_1_in_rule__Module__Group__1__Impl678 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Module__Group__2__Impl_in_rule__Module__Group__2708 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Module__MachinesAssignment_2_in_rule__Module__Group__2__Impl735 = new BitSet(new long[]{0x0000000000801002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__0__Impl_in_rule__Statemachine__Group__0772 = new BitSet(new long[]{0x0000000000801000L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__1_in_rule__Statemachine__Group__0775 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__InitialAssignment_0_in_rule__Statemachine__Group__0__Impl802 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__1__Impl_in_rule__Statemachine__Group__1833 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__2_in_rule__Statemachine__Group__1836 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_12_in_rule__Statemachine__Group__1__Impl864 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__2__Impl_in_rule__Statemachine__Group__2895 = new BitSet(new long[]{0x0000000000022000L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__3_in_rule__Statemachine__Group__2898 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__NameAssignment_2_in_rule__Statemachine__Group__2__Impl925 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__3__Impl_in_rule__Statemachine__Group__3955 = new BitSet(new long[]{0x0000000000022000L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__4_in_rule__Statemachine__Group__3958 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group_3__0_in_rule__Statemachine__Group__3__Impl985 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__4__Impl_in_rule__Statemachine__Group__41016 = new BitSet(new long[]{0x0000000000004000L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__5_in_rule__Statemachine__Group__41019 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_13_in_rule__Statemachine__Group__4__Impl1047 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__5__Impl_in_rule__Statemachine__Group__51078 = new BitSet(new long[]{0x0000000000008020L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__6_in_rule__Statemachine__Group__51081 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_14_in_rule__Statemachine__Group__5__Impl1109 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__6__Impl_in_rule__Statemachine__Group__61140 = new BitSet(new long[]{0x0000000000008020L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__7_in_rule__Statemachine__Group__61143 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__EventsAssignment_6_in_rule__Statemachine__Group__6__Impl1170 = new BitSet(new long[]{0x0000000000000022L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__7__Impl_in_rule__Statemachine__Group__71201 = new BitSet(new long[]{0x0000000000990000L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__8_in_rule__Statemachine__Group__71204 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_15_in_rule__Statemachine__Group__7__Impl1232 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__8__Impl_in_rule__Statemachine__Group__81263 = new BitSet(new long[]{0x0000000000990000L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__9_in_rule__Statemachine__Group__81266 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__StatesAssignment_8_in_rule__Statemachine__Group__8__Impl1293 = new BitSet(new long[]{0x0000000000980002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__9__Impl_in_rule__Statemachine__Group__91324 = new BitSet(new long[]{0x0000000000040000L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__10_in_rule__Statemachine__Group__91327 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_16_in_rule__Statemachine__Group__9__Impl1355 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group__10__Impl_in_rule__Statemachine__Group__101386 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group_10__0_in_rule__Statemachine__Group__10__Impl1413 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group_3__0__Impl_in_rule__Statemachine__Group_3__01466 = new BitSet(new long[]{0x0000000000000040L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group_3__1_in_rule__Statemachine__Group_3__01469 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_17_in_rule__Statemachine__Group_3__0__Impl1497 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group_3__1__Impl_in_rule__Statemachine__Group_3__11528 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__ValueAssignment_3_1_in_rule__Statemachine__Group_3__1__Impl1555 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group_10__0__Impl_in_rule__Statemachine__Group_10__01589 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group_10__1_in_rule__Statemachine__Group_10__01592 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_18_in_rule__Statemachine__Group_10__0__Impl1620 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__Group_10__1__Impl_in_rule__Statemachine__Group_10__11651 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Statemachine__DbgNameAssignment_10_1_in_rule__Statemachine__Group_10__1__Impl1678 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__0__Impl_in_rule__SimpleState__Group__01712 = new BitSet(new long[]{0x0000000000880000L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__1_in_rule__SimpleState__Group__01715 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__InitialAssignment_0_in_rule__SimpleState__Group__0__Impl1742 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__1__Impl_in_rule__SimpleState__Group__11773 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__2_in_rule__SimpleState__Group__11776 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_19_in_rule__SimpleState__Group__1__Impl1804 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__2__Impl_in_rule__SimpleState__Group__21835 = new BitSet(new long[]{0x0000000000022000L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__3_in_rule__SimpleState__Group__21838 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__NameAssignment_2_in_rule__SimpleState__Group__2__Impl1865 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__3__Impl_in_rule__SimpleState__Group__31895 = new BitSet(new long[]{0x0000000000022000L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__4_in_rule__SimpleState__Group__31898 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group_3__0_in_rule__SimpleState__Group__3__Impl1925 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__4__Impl_in_rule__SimpleState__Group__41956 = new BitSet(new long[]{0x0000000000010020L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__5_in_rule__SimpleState__Group__41959 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_13_in_rule__SimpleState__Group__4__Impl1987 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__5__Impl_in_rule__SimpleState__Group__52018 = new BitSet(new long[]{0x0000000000010020L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__6_in_rule__SimpleState__Group__52021 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__TransitionsAssignment_5_in_rule__SimpleState__Group__5__Impl2048 = new BitSet(new long[]{0x0000000000000022L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__6__Impl_in_rule__SimpleState__Group__62079 = new BitSet(new long[]{0x0000000000040000L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__7_in_rule__SimpleState__Group__62082 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_16_in_rule__SimpleState__Group__6__Impl2110 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group__7__Impl_in_rule__SimpleState__Group__72141 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group_7__0_in_rule__SimpleState__Group__7__Impl2168 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group_3__0__Impl_in_rule__SimpleState__Group_3__02215 = new BitSet(new long[]{0x0000000000000040L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group_3__1_in_rule__SimpleState__Group_3__02218 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_17_in_rule__SimpleState__Group_3__0__Impl2246 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group_3__1__Impl_in_rule__SimpleState__Group_3__12277 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__ValueAssignment_3_1_in_rule__SimpleState__Group_3__1__Impl2304 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group_7__0__Impl_in_rule__SimpleState__Group_7__02338 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group_7__1_in_rule__SimpleState__Group_7__02341 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_18_in_rule__SimpleState__Group_7__0__Impl2369 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__Group_7__1__Impl_in_rule__SimpleState__Group_7__12400 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__SimpleState__DbgNameAssignment_7_1_in_rule__SimpleState__Group_7__1__Impl2427 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__0__Impl_in_rule__CompoundState__Group__02461 = new BitSet(new long[]{0x0000000000880000L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__1_in_rule__CompoundState__Group__02464 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_20_in_rule__CompoundState__Group__0__Impl2492 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__1__Impl_in_rule__CompoundState__Group__12523 = new BitSet(new long[]{0x0000000000880000L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__2_in_rule__CompoundState__Group__12526 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__InitialAssignment_1_in_rule__CompoundState__Group__1__Impl2553 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__2__Impl_in_rule__CompoundState__Group__22584 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__3_in_rule__CompoundState__Group__22587 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_19_in_rule__CompoundState__Group__2__Impl2615 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__3__Impl_in_rule__CompoundState__Group__32646 = new BitSet(new long[]{0x0000000000200000L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__4_in_rule__CompoundState__Group__32649 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__NameAssignment_3_in_rule__CompoundState__Group__3__Impl2676 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__4__Impl_in_rule__CompoundState__Group__42706 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__5_in_rule__CompoundState__Group__42709 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_21_in_rule__CompoundState__Group__4__Impl2737 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__5__Impl_in_rule__CompoundState__Group__52768 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__6_in_rule__CompoundState__Group__52771 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__MachineAssignment_5_in_rule__CompoundState__Group__5__Impl2798 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__6__Impl_in_rule__CompoundState__Group__62828 = new BitSet(new long[]{0x0000000000010020L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__7_in_rule__CompoundState__Group__62831 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_13_in_rule__CompoundState__Group__6__Impl2859 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__7__Impl_in_rule__CompoundState__Group__72890 = new BitSet(new long[]{0x0000000000010020L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__8_in_rule__CompoundState__Group__72893 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__TransitionsAssignment_7_in_rule__CompoundState__Group__7__Impl2920 = new BitSet(new long[]{0x0000000000000022L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__8__Impl_in_rule__CompoundState__Group__82951 = new BitSet(new long[]{0x0000000000040000L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__9_in_rule__CompoundState__Group__82954 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_16_in_rule__CompoundState__Group__8__Impl2982 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group__9__Impl_in_rule__CompoundState__Group__93013 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group_9__0_in_rule__CompoundState__Group__9__Impl3040 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group_9__0__Impl_in_rule__CompoundState__Group_9__03091 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group_9__1_in_rule__CompoundState__Group_9__03094 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_18_in_rule__CompoundState__Group_9__0__Impl3122 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__Group_9__1__Impl_in_rule__CompoundState__Group_9__13153 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__CompoundState__DbgNameAssignment_9_1_in_rule__CompoundState__Group_9__1__Impl3180 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__Group__0__Impl_in_rule__Transition__Group__03214 = new BitSet(new long[]{0x0000000000400000L});
-    public static final BitSet FOLLOW_rule__Transition__Group__1_in_rule__Transition__Group__03217 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__EventAssignment_0_in_rule__Transition__Group__0__Impl3244 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__Group__1__Impl_in_rule__Transition__Group__13274 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_rule__Transition__Group__2_in_rule__Transition__Group__13277 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_22_in_rule__Transition__Group__1__Impl3305 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__Group__2__Impl_in_rule__Transition__Group__23336 = new BitSet(new long[]{0x0000000000040000L});
-    public static final BitSet FOLLOW_rule__Transition__Group__3_in_rule__Transition__Group__23339 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__StateAssignment_2_in_rule__Transition__Group__2__Impl3366 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__Group__3__Impl_in_rule__Transition__Group__33396 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__Group_3__0_in_rule__Transition__Group__3__Impl3423 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__Group_3__0__Impl_in_rule__Transition__Group_3__03462 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_rule__Transition__Group_3__1_in_rule__Transition__Group_3__03465 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_18_in_rule__Transition__Group_3__0__Impl3493 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__Group_3__1__Impl_in_rule__Transition__Group_3__13524 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Transition__DbgNameAssignment_3_1_in_rule__Transition__Group_3__1__Impl3551 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Module__NameAlternatives_1_0_in_rule__Module__NameAssignment_13590 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleStatemachine_in_rule__Module__MachinesAssignment_23623 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_23_in_rule__Statemachine__InitialAssignment_03659 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__Statemachine__NameAssignment_23698 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_INT_in_rule__Statemachine__ValueAssignment_3_13729 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleEvent_in_rule__Statemachine__EventsAssignment_63760 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleState_in_rule__Statemachine__StatesAssignment_83791 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__Statemachine__DbgNameAssignment_10_13822 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__Event__NameAssignment3853 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_23_in_rule__SimpleState__InitialAssignment_03889 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__SimpleState__NameAssignment_23928 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_INT_in_rule__SimpleState__ValueAssignment_3_13959 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleTransition_in_rule__SimpleState__TransitionsAssignment_53990 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__SimpleState__DbgNameAssignment_7_14021 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_23_in_rule__CompoundState__InitialAssignment_14057 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__CompoundState__NameAssignment_34096 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__CompoundState__MachineAssignment_54131 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleTransition_in_rule__CompoundState__TransitionsAssignment_74166 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__CompoundState__DbgNameAssignment_9_14197 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__Transition__EventAssignment_04232 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__Transition__StateAssignment_24271 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__Transition__DbgNameAssignment_3_14306 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSimpleState_in_rule__State__Alternatives490 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleCompoundState_in_rule__State__Alternatives507 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Module__Group__0__Impl_in_rule__Module__Group__0537 = new BitSet(new long[]{0x0000000000000010L});
+    public static final BitSet FOLLOW_rule__Module__Group__1_in_rule__Module__Group__0540 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_11_in_rule__Module__Group__0__Impl568 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Module__Group__1__Impl_in_rule__Module__Group__1599 = new BitSet(new long[]{0x0000000000401000L});
+    public static final BitSet FOLLOW_rule__Module__Group__2_in_rule__Module__Group__1602 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Module__NameAssignment_1_in_rule__Module__Group__1__Impl629 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Module__Group__2__Impl_in_rule__Module__Group__2659 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Module__MachinesAssignment_2_in_rule__Module__Group__2__Impl686 = new BitSet(new long[]{0x0000000000401002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__0__Impl_in_rule__Statemachine__Group__0723 = new BitSet(new long[]{0x0000000000401000L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__1_in_rule__Statemachine__Group__0726 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__InitialAssignment_0_in_rule__Statemachine__Group__0__Impl753 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__1__Impl_in_rule__Statemachine__Group__1784 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__2_in_rule__Statemachine__Group__1787 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_12_in_rule__Statemachine__Group__1__Impl815 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__2__Impl_in_rule__Statemachine__Group__2846 = new BitSet(new long[]{0x0000000000022000L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__3_in_rule__Statemachine__Group__2849 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__NameAssignment_2_in_rule__Statemachine__Group__2__Impl876 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__3__Impl_in_rule__Statemachine__Group__3906 = new BitSet(new long[]{0x0000000000022000L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__4_in_rule__Statemachine__Group__3909 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group_3__0_in_rule__Statemachine__Group__3__Impl936 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__4__Impl_in_rule__Statemachine__Group__4967 = new BitSet(new long[]{0x0000000000004000L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__5_in_rule__Statemachine__Group__4970 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_13_in_rule__Statemachine__Group__4__Impl998 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__5__Impl_in_rule__Statemachine__Group__51029 = new BitSet(new long[]{0x0000000000008020L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__6_in_rule__Statemachine__Group__51032 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_14_in_rule__Statemachine__Group__5__Impl1060 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__6__Impl_in_rule__Statemachine__Group__61091 = new BitSet(new long[]{0x0000000000008020L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__7_in_rule__Statemachine__Group__61094 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__EventsAssignment_6_in_rule__Statemachine__Group__6__Impl1121 = new BitSet(new long[]{0x0000000000000022L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__7__Impl_in_rule__Statemachine__Group__71152 = new BitSet(new long[]{0x00000000004D0000L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__8_in_rule__Statemachine__Group__71155 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_15_in_rule__Statemachine__Group__7__Impl1183 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__8__Impl_in_rule__Statemachine__Group__81214 = new BitSet(new long[]{0x00000000004D0000L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__9_in_rule__Statemachine__Group__81217 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__StatesAssignment_8_in_rule__Statemachine__Group__8__Impl1244 = new BitSet(new long[]{0x00000000004C0002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group__9__Impl_in_rule__Statemachine__Group__91275 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_16_in_rule__Statemachine__Group__9__Impl1303 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group_3__0__Impl_in_rule__Statemachine__Group_3__01354 = new BitSet(new long[]{0x0000000000000040L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group_3__1_in_rule__Statemachine__Group_3__01357 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_17_in_rule__Statemachine__Group_3__0__Impl1385 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__Group_3__1__Impl_in_rule__Statemachine__Group_3__11416 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Statemachine__ValueAssignment_3_1_in_rule__Statemachine__Group_3__1__Impl1443 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__0__Impl_in_rule__SimpleState__Group__01477 = new BitSet(new long[]{0x0000000000440000L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__1_in_rule__SimpleState__Group__01480 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__InitialAssignment_0_in_rule__SimpleState__Group__0__Impl1507 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__1__Impl_in_rule__SimpleState__Group__11538 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__2_in_rule__SimpleState__Group__11541 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_18_in_rule__SimpleState__Group__1__Impl1569 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__2__Impl_in_rule__SimpleState__Group__21600 = new BitSet(new long[]{0x0000000000022000L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__3_in_rule__SimpleState__Group__21603 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__NameAssignment_2_in_rule__SimpleState__Group__2__Impl1630 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__3__Impl_in_rule__SimpleState__Group__31660 = new BitSet(new long[]{0x0000000000022000L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__4_in_rule__SimpleState__Group__31663 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group_3__0_in_rule__SimpleState__Group__3__Impl1690 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__4__Impl_in_rule__SimpleState__Group__41721 = new BitSet(new long[]{0x0000000000010020L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__5_in_rule__SimpleState__Group__41724 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_13_in_rule__SimpleState__Group__4__Impl1752 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__5__Impl_in_rule__SimpleState__Group__51783 = new BitSet(new long[]{0x0000000000010020L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__6_in_rule__SimpleState__Group__51786 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__TransitionsAssignment_5_in_rule__SimpleState__Group__5__Impl1813 = new BitSet(new long[]{0x0000000000000022L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group__6__Impl_in_rule__SimpleState__Group__61844 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_16_in_rule__SimpleState__Group__6__Impl1872 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group_3__0__Impl_in_rule__SimpleState__Group_3__01917 = new BitSet(new long[]{0x0000000000000040L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group_3__1_in_rule__SimpleState__Group_3__01920 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_17_in_rule__SimpleState__Group_3__0__Impl1948 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__Group_3__1__Impl_in_rule__SimpleState__Group_3__11979 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SimpleState__ValueAssignment_3_1_in_rule__SimpleState__Group_3__1__Impl2006 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__0__Impl_in_rule__CompoundState__Group__02040 = new BitSet(new long[]{0x0000000000440000L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__1_in_rule__CompoundState__Group__02043 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_19_in_rule__CompoundState__Group__0__Impl2071 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__1__Impl_in_rule__CompoundState__Group__12102 = new BitSet(new long[]{0x0000000000440000L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__2_in_rule__CompoundState__Group__12105 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__InitialAssignment_1_in_rule__CompoundState__Group__1__Impl2132 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__2__Impl_in_rule__CompoundState__Group__22163 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__3_in_rule__CompoundState__Group__22166 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_18_in_rule__CompoundState__Group__2__Impl2194 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__3__Impl_in_rule__CompoundState__Group__32225 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__4_in_rule__CompoundState__Group__32228 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__NameAssignment_3_in_rule__CompoundState__Group__3__Impl2255 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__4__Impl_in_rule__CompoundState__Group__42285 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__5_in_rule__CompoundState__Group__42288 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_20_in_rule__CompoundState__Group__4__Impl2316 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__5__Impl_in_rule__CompoundState__Group__52347 = new BitSet(new long[]{0x0000000000002000L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__6_in_rule__CompoundState__Group__52350 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__MachineAssignment_5_in_rule__CompoundState__Group__5__Impl2377 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__6__Impl_in_rule__CompoundState__Group__62407 = new BitSet(new long[]{0x0000000000010020L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__7_in_rule__CompoundState__Group__62410 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_13_in_rule__CompoundState__Group__6__Impl2438 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__7__Impl_in_rule__CompoundState__Group__72469 = new BitSet(new long[]{0x0000000000010020L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__8_in_rule__CompoundState__Group__72472 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__CompoundState__TransitionsAssignment_7_in_rule__CompoundState__Group__7__Impl2499 = new BitSet(new long[]{0x0000000000000022L});
+    public static final BitSet FOLLOW_rule__CompoundState__Group__8__Impl_in_rule__CompoundState__Group__82530 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_16_in_rule__CompoundState__Group__8__Impl2558 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Transition__Group__0__Impl_in_rule__Transition__Group__02607 = new BitSet(new long[]{0x0000000000200000L});
+    public static final BitSet FOLLOW_rule__Transition__Group__1_in_rule__Transition__Group__02610 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Transition__EventAssignment_0_in_rule__Transition__Group__0__Impl2637 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Transition__Group__1__Impl_in_rule__Transition__Group__12667 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_rule__Transition__Group__2_in_rule__Transition__Group__12670 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_21_in_rule__Transition__Group__1__Impl2698 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Transition__Group__2__Impl_in_rule__Transition__Group__22729 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Transition__StateAssignment_2_in_rule__Transition__Group__2__Impl2756 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_STRING_in_rule__Module__NameAssignment_12797 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleStatemachine_in_rule__Module__MachinesAssignment_22828 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_22_in_rule__Statemachine__InitialAssignment_02864 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_rule__Statemachine__NameAssignment_22903 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_INT_in_rule__Statemachine__ValueAssignment_3_12934 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleEvent_in_rule__Statemachine__EventsAssignment_62965 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleState_in_rule__Statemachine__StatesAssignment_82996 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_rule__Event__NameAssignment3027 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_22_in_rule__SimpleState__InitialAssignment_03063 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_rule__SimpleState__NameAssignment_23102 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_INT_in_rule__SimpleState__ValueAssignment_3_13133 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleTransition_in_rule__SimpleState__TransitionsAssignment_53164 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_22_in_rule__CompoundState__InitialAssignment_13200 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_rule__CompoundState__NameAssignment_33239 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_rule__CompoundState__MachineAssignment_53274 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleTransition_in_rule__CompoundState__TransitionsAssignment_73309 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_rule__Transition__EventAssignment_03344 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_rule__Transition__StateAssignment_23383 = new BitSet(new long[]{0x0000000000000002L});
 
 }
\ No newline at end of file
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/.cvsignore b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/.cvsignore
index 6371894..88521cc 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/.cvsignore
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/.cvsignore
@@ -1,2 +1,3 @@
 bin
 .antlr-generator-3.2.0.jar
+plugin.xml_gen
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore
index 06fb1ac..d8a5c7c 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore
@@ -19,7 +19,6 @@
     <eStructuralFeatures xsi:type="ecore:EReference" name="states" upperBound="-1"
         eType="ecore:EClass platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//State"
         containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dbgName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Event">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -30,7 +29,6 @@
     <eStructuralFeatures xsi:type="ecore:EReference" name="transitions" upperBound="-1"
         eType="ecore:EClass platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Transition"
         containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dbgName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="SimpleState" eSuperTypes="platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//State">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
@@ -41,6 +39,5 @@
   <eClassifiers xsi:type="ecore:EClass" name="Transition">
     <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="ecore:EClass platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Event"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="state" eType="ecore:EClass platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//State"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dbgName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
   </eClassifiers>
 </ecore:EPackage>
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.genmodel b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.genmodel
index ebc8975..e2e6382 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.genmodel
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.genmodel
@@ -19,7 +19,6 @@
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Statemachine/value"/>
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Statemachine/events"/>
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Statemachine/states"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Statemachine/dbgName"/>
     </genClasses>
     <genClasses ecoreClass="platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Event">
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Event/name"/>
@@ -28,7 +27,6 @@
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//State/initial"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//State/name"/>
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//State/transitions"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//State/dbgName"/>
     </genClasses>
     <genClasses ecoreClass="platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//SimpleState">
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//SimpleState/value"/>
@@ -39,7 +37,6 @@
     <genClasses ecoreClass="platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Transition">
       <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Transition/event"/>
       <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Transition/state"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute platform:/resource/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.ecore#//Transition/dbgName"/>
     </genClasses>
   </genPackages>
 </genmodel:GenModel>
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.xmi b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.xmi
index 003848c..c6cec05 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.xmi
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/States.xmi
@@ -11,10 +11,7 @@
       <alternatives xsi:type="xtext:Group">
         <elements xsi:type="xtext:Keyword" value="module"/>
         <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:Alternatives">
-            <elements xsi:type="xtext:RuleCall" rule="/1/@rules.2"/>
-            <elements xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
-          </terminal>
+          <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.2"/>
         </elements>
         <elements xsi:type="xtext:Assignment" cardinality="*" feature="machines" operator="+=">
           <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.1"/>
@@ -49,12 +46,6 @@
           <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.3"/>
         </elements>
         <elements xsi:type="xtext:Keyword" value="}"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="debug"/>
-          <elements xsi:type="xtext:Assignment" feature="dbgName" operator="=">
-            <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
-          </elements>
-        </elements>
       </alternatives>
     </rules>
     <rules xsi:type="xtext:ParserRule" name="Event">
@@ -97,12 +88,6 @@
           <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
         </elements>
         <elements xsi:type="xtext:Keyword" value="}"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="debug"/>
-          <elements xsi:type="xtext:Assignment" feature="dbgName" operator="=">
-            <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
-          </elements>
-        </elements>
       </alternatives>
     </rules>
     <rules xsi:type="xtext:ParserRule" name="CompoundState">
@@ -132,12 +117,6 @@
           <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
         </elements>
         <elements xsi:type="xtext:Keyword" value="}"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="debug"/>
-          <elements xsi:type="xtext:Assignment" feature="dbgName" operator="=">
-            <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
-          </elements>
-        </elements>
       </alternatives>
     </rules>
     <rules xsi:type="xtext:ParserRule" name="Transition">
@@ -162,12 +141,6 @@
             <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
           </terminal>
         </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="debug"/>
-          <elements xsi:type="xtext:Assignment" feature="dbgName" operator="=">
-            <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
-          </elements>
-        </elements>
       </alternatives>
     </rules>
   </xtext:Grammar>
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parseTreeConstruction/StatesParsetreeConstructor.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parseTreeConstruction/StatesParsetreeConstructor.java
index 6e1b226..28ee895 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parseTreeConstruction/StatesParsetreeConstructor.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parseTreeConstruction/StatesParsetreeConstructor.java
@@ -47,11 +47,11 @@
 /************ begin Rule Module ****************
  *
  * Module:
- * 	"module" name=(STRING | ID) machines+=Statemachine*;
+ * 	"module" name=STRING machines+=Statemachine*;
  *
  **/
 
-// "module" name=(STRING | ID) machines+=Statemachine*
+// "module" name=STRING machines+=Statemachine*
 protected class Module_Group extends GroupToken {
 	
 	public Module_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -102,7 +102,7 @@
 
 }
 
-// name=(STRING | ID)
+// name=STRING
 protected class Module_NameAssignment_1 extends AssignmentToken  {
 	
 	public Module_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -126,14 +126,9 @@
 	public IEObjectConsumer tryConsume() {
 		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
 		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0_0(), value, null)) {
+		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) {
 			type = AssignmentType.TERMINAL_RULE_CALL;
-			element = grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0_0();
-			return obj;
-		}
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getModuleAccess().getNameIDTerminalRuleCall_1_0_1(), value, null)) {
-			type = AssignmentType.TERMINAL_RULE_CALL;
-			element = grammarAccess.getModuleAccess().getNameIDTerminalRuleCall_1_0_1();
+			element = grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0();
 			return obj;
 		}
 		return null;
@@ -195,13 +190,11 @@
 /************ begin Rule Statemachine ****************
  *
  * Statemachine:
- * 	initial?="initial"? "statemachine" name=ID ("value" value=INT)? "{" "events" events+=Event* ";" states+=State* "}"
- * 	("debug" dbgName=ID)?;
+ * 	initial?="initial"? "statemachine" name=ID ("value" value=INT)? "{" "events" events+=Event* ";" states+=State* "}";
  *
  **/
 
 // initial?="initial"? "statemachine" name=ID ("value" value=INT)? "{" "events" events+=Event* ";" states+=State* "}"
-// ("debug" dbgName=ID)?
 protected class Statemachine_Group extends GroupToken {
 	
 	public Statemachine_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -216,8 +209,7 @@
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new Statemachine_Group_10(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Statemachine_RightCurlyBracketKeyword_9(lastRuleCallOrigin, this, 1, inst);
+			case 0: return new Statemachine_RightCurlyBracketKeyword_9(lastRuleCallOrigin, this, 0, inst);
 			default: return null;
 		}	
 	}
@@ -584,85 +576,6 @@
 
 }
 
-// ("debug" dbgName=ID)?
-protected class Statemachine_Group_10 extends GroupToken {
-	
-	public Statemachine_Group_10(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getStatemachineAccess().getGroup_10();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Statemachine_DbgNameAssignment_10_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "debug"
-protected class Statemachine_DebugKeyword_10_0 extends KeywordToken  {
-	
-	public Statemachine_DebugKeyword_10_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getStatemachineAccess().getDebugKeyword_10_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Statemachine_RightCurlyBracketKeyword_9(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// dbgName=ID
-protected class Statemachine_DbgNameAssignment_10_1 extends AssignmentToken  {
-	
-	public Statemachine_DbgNameAssignment_10_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getStatemachineAccess().getDbgNameAssignment_10_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Statemachine_DebugKeyword_10_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("dbgName",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dbgName");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getStatemachineAccess().getDbgNameIDTerminalRuleCall_10_1_0(), value, null)) {
-			type = AssignmentType.TERMINAL_RULE_CALL;
-			element = grammarAccess.getStatemachineAccess().getDbgNameIDTerminalRuleCall_10_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-
 
 /************ end Rule Statemachine ****************/
 
@@ -829,11 +742,11 @@
 /************ begin Rule SimpleState ****************
  *
  * SimpleState:
- * 	initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}" ("debug" dbgName=ID)?;
+ * 	initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}";
  *
  **/
 
-// initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}" ("debug" dbgName=ID)?
+// initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}"
 protected class SimpleState_Group extends GroupToken {
 	
 	public SimpleState_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -848,8 +761,7 @@
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new SimpleState_Group_7(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SimpleState_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 1, inst);
+			case 0: return new SimpleState_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 0, inst);
 			default: return null;
 		}	
 	}
@@ -1124,85 +1036,6 @@
 
 }
 
-// ("debug" dbgName=ID)?
-protected class SimpleState_Group_7 extends GroupToken {
-	
-	public SimpleState_Group_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSimpleStateAccess().getGroup_7();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SimpleState_DbgNameAssignment_7_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "debug"
-protected class SimpleState_DebugKeyword_7_0 extends KeywordToken  {
-	
-	public SimpleState_DebugKeyword_7_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSimpleStateAccess().getDebugKeyword_7_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SimpleState_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// dbgName=ID
-protected class SimpleState_DbgNameAssignment_7_1 extends AssignmentToken  {
-	
-	public SimpleState_DbgNameAssignment_7_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSimpleStateAccess().getDbgNameAssignment_7_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SimpleState_DebugKeyword_7_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("dbgName",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dbgName");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getSimpleStateAccess().getDbgNameIDTerminalRuleCall_7_1_0(), value, null)) {
-			type = AssignmentType.TERMINAL_RULE_CALL;
-			element = grammarAccess.getSimpleStateAccess().getDbgNameIDTerminalRuleCall_7_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-
 
 /************ end Rule SimpleState ****************/
 
@@ -1210,13 +1043,11 @@
 /************ begin Rule CompoundState ****************
  *
  * CompoundState:
- * 	"compound" initial?="initial"? "state" name=ID "machine" machine=[Statemachine] "{" transitions+=Transition* "}"
- * 	("debug" dbgName=ID)?;
+ * 	"compound" initial?="initial"? "state" name=ID "machine" machine=[Statemachine] "{" transitions+=Transition* "}";
  *
  **/
 
 // "compound" initial?="initial"? "state" name=ID "machine" machine=[Statemachine] "{" transitions+=Transition* "}"
-// ("debug" dbgName=ID)?
 protected class CompoundState_Group extends GroupToken {
 	
 	public CompoundState_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -1231,8 +1062,7 @@
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new CompoundState_Group_9(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompoundState_RightCurlyBracketKeyword_8(lastRuleCallOrigin, this, 1, inst);
+			case 0: return new CompoundState_RightCurlyBracketKeyword_8(lastRuleCallOrigin, this, 0, inst);
 			default: return null;
 		}	
 	}
@@ -1509,85 +1339,6 @@
 
 }
 
-// ("debug" dbgName=ID)?
-protected class CompoundState_Group_9 extends GroupToken {
-	
-	public CompoundState_Group_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompoundStateAccess().getGroup_9();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompoundState_DbgNameAssignment_9_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "debug"
-protected class CompoundState_DebugKeyword_9_0 extends KeywordToken  {
-	
-	public CompoundState_DebugKeyword_9_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompoundStateAccess().getDebugKeyword_9_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompoundState_RightCurlyBracketKeyword_8(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// dbgName=ID
-protected class CompoundState_DbgNameAssignment_9_1 extends AssignmentToken  {
-	
-	public CompoundState_DbgNameAssignment_9_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompoundStateAccess().getDbgNameAssignment_9_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompoundState_DebugKeyword_9_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("dbgName",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dbgName");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getCompoundStateAccess().getDbgNameIDTerminalRuleCall_9_1_0(), value, null)) {
-			type = AssignmentType.TERMINAL_RULE_CALL;
-			element = grammarAccess.getCompoundStateAccess().getDbgNameIDTerminalRuleCall_9_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-
 
 /************ end Rule CompoundState ****************/
 
@@ -1595,11 +1346,11 @@
 /************ begin Rule Transition ****************
  *
  * Transition:
- * 	event=[Event] "=>" state=[State] ("debug" dbgName=ID)?;
+ * 	event=[Event] "=>" state=[State];
  *
  **/
 
-// event=[Event] "=>" state=[State] ("debug" dbgName=ID)?
+// event=[Event] "=>" state=[State]
 protected class Transition_Group extends GroupToken {
 	
 	public Transition_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -1614,8 +1365,7 @@
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new Transition_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Transition_StateAssignment_2(lastRuleCallOrigin, this, 1, inst);
+			case 0: return new Transition_StateAssignment_2(lastRuleCallOrigin, this, 0, inst);
 			default: return null;
 		}	
 	}
@@ -1724,85 +1474,6 @@
 
 }
 
-// ("debug" dbgName=ID)?
-protected class Transition_Group_3 extends GroupToken {
-	
-	public Transition_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getTransitionAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Transition_DbgNameAssignment_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "debug"
-protected class Transition_DebugKeyword_3_0 extends KeywordToken  {
-	
-	public Transition_DebugKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getTransitionAccess().getDebugKeyword_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Transition_StateAssignment_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// dbgName=ID
-protected class Transition_DbgNameAssignment_3_1 extends AssignmentToken  {
-	
-	public Transition_DbgNameAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getTransitionAccess().getDbgNameAssignment_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Transition_DebugKeyword_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("dbgName",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dbgName");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getTransitionAccess().getDbgNameIDTerminalRuleCall_3_1_0(), value, null)) {
-			type = AssignmentType.TERMINAL_RULE_CALL;
-			element = grammarAccess.getTransitionAccess().getDbgNameIDTerminalRuleCall_3_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-
 
 /************ end Rule Transition ****************/
 
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g
index 76eba67..c7e33f1 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g
@@ -83,10 +83,9 @@
     }
 (
 (
-(
-		lv_name_1_1=RULE_STRING
+		lv_name_1_0=RULE_STRING
 		{
-			newLeafNode(lv_name_1_1, grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0_0()); 
+			newLeafNode(lv_name_1_0, grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0()); 
 		}
 		{
 	        if ($current==null) {
@@ -95,27 +94,10 @@
        		setWithLastConsumed(
        			$current, 
        			"name",
-        		lv_name_1_1, 
+        		lv_name_1_0, 
         		"STRING");
 	    }
 
-    |		lv_name_1_2=RULE_ID
-		{
-			newLeafNode(lv_name_1_2, grammarAccess.getModuleAccess().getNameIDTerminalRuleCall_1_0_1()); 
-		}
-		{
-	        if ($current==null) {
-	            $current = createModelElement(grammarAccess.getModuleRule());
-	        }
-       		setWithLastConsumed(
-       			$current, 
-       			"name",
-        		lv_name_1_2, 
-        		"ID");
-	    }
-
-)
-
 )
 )(
 (
@@ -267,29 +249,7 @@
     {
     	newLeafNode(otherlv_10, grammarAccess.getStatemachineAccess().getRightCurlyBracketKeyword_9());
     }
-(	otherlv_11='debug' 
-    {
-    	newLeafNode(otherlv_11, grammarAccess.getStatemachineAccess().getDebugKeyword_10_0());
-    }
-(
-(
-		lv_dbgName_12_0=RULE_ID
-		{
-			newLeafNode(lv_dbgName_12_0, grammarAccess.getStatemachineAccess().getDbgNameIDTerminalRuleCall_10_1_0()); 
-		}
-		{
-	        if ($current==null) {
-	            $current = createModelElement(grammarAccess.getStatemachineRule());
-	        }
-       		setWithLastConsumed(
-       			$current, 
-       			"dbgName",
-        		lv_dbgName_12_0, 
-        		"ID");
-	    }
-
 )
-))?)
 ;
 
 
@@ -474,29 +434,7 @@
     {
     	newLeafNode(otherlv_7, grammarAccess.getSimpleStateAccess().getRightCurlyBracketKeyword_6());
     }
-(	otherlv_8='debug' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getSimpleStateAccess().getDebugKeyword_7_0());
-    }
-(
-(
-		lv_dbgName_9_0=RULE_ID
-		{
-			newLeafNode(lv_dbgName_9_0, grammarAccess.getSimpleStateAccess().getDbgNameIDTerminalRuleCall_7_1_0()); 
-		}
-		{
-	        if ($current==null) {
-	            $current = createModelElement(grammarAccess.getSimpleStateRule());
-	        }
-       		setWithLastConsumed(
-       			$current, 
-       			"dbgName",
-        		lv_dbgName_9_0, 
-        		"ID");
-	    }
-
 )
-))?)
 ;
 
 
@@ -601,29 +539,7 @@
     {
     	newLeafNode(otherlv_8, grammarAccess.getCompoundStateAccess().getRightCurlyBracketKeyword_8());
     }
-(	otherlv_9='debug' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getCompoundStateAccess().getDebugKeyword_9_0());
-    }
-(
-(
-		lv_dbgName_10_0=RULE_ID
-		{
-			newLeafNode(lv_dbgName_10_0, grammarAccess.getCompoundStateAccess().getDbgNameIDTerminalRuleCall_9_1_0()); 
-		}
-		{
-	        if ($current==null) {
-	            $current = createModelElement(grammarAccess.getCompoundStateRule());
-	        }
-       		setWithLastConsumed(
-       			$current, 
-       			"dbgName",
-        		lv_dbgName_10_0, 
-        		"ID");
-	    }
-
 )
-))?)
 ;
 
 
@@ -674,29 +590,7 @@
 	}
 
 )
-)(	otherlv_3='debug' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getTransitionAccess().getDebugKeyword_3_0());
-    }
-(
-(
-		lv_dbgName_4_0=RULE_ID
-		{
-			newLeafNode(lv_dbgName_4_0, grammarAccess.getTransitionAccess().getDbgNameIDTerminalRuleCall_3_1_0()); 
-		}
-		{
-	        if ($current==null) {
-	            $current = createModelElement(grammarAccess.getTransitionRule());
-	        }
-       		setWithLastConsumed(
-       			$current, 
-       			"dbgName",
-        		lv_dbgName_4_0, 
-        		"ID");
-	    }
-
-)
-))?)
+))
 ;
 
 
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.tokens b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.tokens
index daaf659..7f236a7 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.tokens
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.tokens
@@ -1,7 +1,6 @@
 RULE_ML_COMMENT=7
 T__12=12
 RULE_ID=5
-T__23=23
 T__20=20
 T__13=13
 RULE_STRING=4
@@ -19,15 +18,14 @@
 T__18=18
 T__15=15
 'statemachine'=13
-'compound'=21
-'events'=16
-'debug'=19
-'=>'=23
-'machine'=22
-'{'=15
-';'=17
 'module'=11
 'initial'=12
 'value'=14
-'state'=20
+'compound'=20
+'events'=16
+'=>'=22
+'state'=19
+'machine'=21
 '}'=18
+';'=17
+'{'=15
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStatesLexer.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStatesLexer.java
index bff41c0..8c61139 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStatesLexer.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStatesLexer.java
@@ -15,7 +15,6 @@
     public static final int RULE_ML_COMMENT=7;
     public static final int RULE_ID=5;
     public static final int T__12=12;
-    public static final int T__23=23;
     public static final int T__20=20;
     public static final int T__13=13;
     public static final int RULE_STRING=4;
@@ -217,10 +216,10 @@
         try {
             int _type = T__19;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:19:7: ( 'debug' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:19:9: 'debug'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:19:7: ( 'state' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:19:9: 'state'
             {
-            match("debug"); 
+            match("state"); 
 
 
             }
@@ -238,10 +237,10 @@
         try {
             int _type = T__20;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:20:7: ( 'state' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:20:9: 'state'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:20:7: ( 'compound' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:20:9: 'compound'
             {
-            match("state"); 
+            match("compound"); 
 
 
             }
@@ -259,10 +258,10 @@
         try {
             int _type = T__21;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:21:7: ( 'compound' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:21:9: 'compound'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:21:7: ( 'machine' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:21:9: 'machine'
             {
-            match("compound"); 
+            match("machine"); 
 
 
             }
@@ -280,29 +279,8 @@
         try {
             int _type = T__22;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:22:7: ( 'machine' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:22:9: 'machine'
-            {
-            match("machine"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__22"
-
-    // $ANTLR start "T__23"
-    public final void mT__23() throws RecognitionException {
-        try {
-            int _type = T__23;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:23:7: ( '=>' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:23:9: '=>'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:22:7: ( '=>' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:22:9: '=>'
             {
             match("=>"); 
 
@@ -315,17 +293,17 @@
         finally {
         }
     }
-    // $ANTLR end "T__23"
+    // $ANTLR end "T__22"
 
     // $ANTLR start "RULE_ID"
     public final void mRULE_ID() throws RecognitionException {
         try {
             int _type = RULE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:706:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:706:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:600:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:600:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:706:11: ( '^' )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:600:11: ( '^' )?
             int alt1=2;
             int LA1_0 = input.LA(1);
 
@@ -334,7 +312,7 @@
             }
             switch (alt1) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:706:11: '^'
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:600:11: '^'
                     {
                     match('^'); 
 
@@ -352,7 +330,7 @@
                 recover(mse);
                 throw mse;}
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:706:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:600:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             loop2:
             do {
                 int alt2=2;
@@ -401,10 +379,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:708:10: ( ( '0' .. '9' )+ )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:708:12: ( '0' .. '9' )+
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:602:10: ( ( '0' .. '9' )+ )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:602:12: ( '0' .. '9' )+
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:708:12: ( '0' .. '9' )+
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:602:12: ( '0' .. '9' )+
             int cnt3=0;
             loop3:
             do {
@@ -418,7 +396,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:708:13: '0' .. '9'
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:602:13: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -450,10 +428,10 @@
         try {
             int _type = RULE_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             int alt6=2;
             int LA6_0 = input.LA(1);
 
@@ -471,10 +449,10 @@
             }
             switch (alt6) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
                     {
                     match('\"'); 
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
                     loop4:
                     do {
                         int alt4=3;
@@ -490,7 +468,7 @@
 
                         switch (alt4) {
                     	case 1 :
-                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -506,7 +484,7 @@
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:66: ~ ( ( '\\\\' | '\"' ) )
+                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:66: ~ ( ( '\\\\' | '\"' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
                     	        input.consume();
@@ -531,10 +509,10 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
                     {
                     match('\''); 
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
                     loop5:
                     do {
                         int alt5=3;
@@ -550,7 +528,7 @@
 
                         switch (alt5) {
                     	case 1 :
-                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -566,7 +544,7 @@
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:710:137: ~ ( ( '\\\\' | '\\'' ) )
+                    	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:137: ~ ( ( '\\\\' | '\\'' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
                     	        input.consume();
@@ -609,12 +587,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:712:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:712:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:606:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:606:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*"); 
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:712:24: ( options {greedy=false; } : . )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:606:24: ( options {greedy=false; } : . )*
             loop7:
             do {
                 int alt7=2;
@@ -639,7 +617,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:712:52: .
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:606:52: .
             	    {
             	    matchAny(); 
 
@@ -669,12 +647,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:714:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:714:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:608:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:608:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("//"); 
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:714:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:608:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop8:
             do {
                 int alt8=2;
@@ -687,7 +665,7 @@
 
                 switch (alt8) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:714:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:608:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -707,7 +685,7 @@
                 }
             } while (true);
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:714:40: ( ( '\\r' )? '\\n' )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:608:40: ( ( '\\r' )? '\\n' )?
             int alt10=2;
             int LA10_0 = input.LA(1);
 
@@ -716,9 +694,9 @@
             }
             switch (alt10) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:714:41: ( '\\r' )? '\\n'
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:608:41: ( '\\r' )? '\\n'
                     {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:714:41: ( '\\r' )?
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:608:41: ( '\\r' )?
                     int alt9=2;
                     int LA9_0 = input.LA(1);
 
@@ -727,7 +705,7 @@
                     }
                     switch (alt9) {
                         case 1 :
-                            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:714:41: '\\r'
+                            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:608:41: '\\r'
                             {
                             match('\r'); 
 
@@ -759,10 +737,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:716:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:716:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:610:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:610:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:716:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:610:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt11=0;
             loop11:
             do {
@@ -816,8 +794,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:718:16: ( . )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:718:18: .
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:612:16: ( . )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:612:18: .
             {
             matchAny(); 
 
@@ -832,8 +810,8 @@
     // $ANTLR end "RULE_ANY_OTHER"
 
     public void mTokens() throws RecognitionException {
-        // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
-        int alt12=20;
+        // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+        int alt12=19;
         alt12 = dfa12.predict(input);
         switch (alt12) {
             case 1 :
@@ -921,56 +899,49 @@
                 }
                 break;
             case 13 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:82: T__23
-                {
-                mT__23(); 
-
-                }
-                break;
-            case 14 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:88: RULE_ID
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:82: RULE_ID
                 {
                 mRULE_ID(); 
 
                 }
                 break;
-            case 15 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:96: RULE_INT
+            case 14 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:90: RULE_INT
                 {
                 mRULE_INT(); 
 
                 }
                 break;
-            case 16 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:105: RULE_STRING
+            case 15 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:99: RULE_STRING
                 {
                 mRULE_STRING(); 
 
                 }
                 break;
-            case 17 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:117: RULE_ML_COMMENT
+            case 16 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:111: RULE_ML_COMMENT
                 {
                 mRULE_ML_COMMENT(); 
 
                 }
                 break;
-            case 18 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:133: RULE_SL_COMMENT
+            case 17 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:127: RULE_SL_COMMENT
                 {
                 mRULE_SL_COMMENT(); 
 
                 }
                 break;
-            case 19 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:149: RULE_WS
+            case 18 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:143: RULE_WS
                 {
                 mRULE_WS(); 
 
                 }
                 break;
-            case 20 :
-                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:157: RULE_ANY_OTHER
+            case 19 :
+                // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:1:151: RULE_ANY_OTHER
                 {
                 mRULE_ANY_OTHER(); 
 
@@ -984,78 +955,78 @@
 
     protected DFA12 dfa12 = new DFA12(this);
     static final String DFA12_eotS =
-        "\1\uffff\4\26\1\uffff\1\26\2\uffff\2\26\2\23\2\uffff\3\23\2\uffff"+
-        "\2\26\1\uffff\3\26\1\uffff\1\26\2\uffff\2\26\6\uffff\23\26\1\102"+
-        "\1\103\1\26\1\105\1\26\1\107\3\26\2\uffff\1\113\1\uffff\1\26\1\uffff"+
-        "\1\115\1\116\1\26\1\uffff\1\26\2\uffff\1\26\1\122\1\26\1\uffff\2"+
-        "\26\1\126\1\uffff";
+        "\1\uffff\4\25\1\uffff\1\25\2\uffff\1\25\2\22\2\uffff\3\22\2\uffff"+
+        "\2\25\1\uffff\3\25\1\uffff\1\25\2\uffff\1\25\6\uffff\21\25\1\75"+
+        "\1\76\2\25\1\101\3\25\2\uffff\1\105\1\25\1\uffff\1\107\1\110\1\25"+
+        "\1\uffff\1\25\2\uffff\1\25\1\114\1\25\1\uffff\2\25\1\120\1\uffff";
     static final String DFA12_eofS =
-        "\127\uffff";
+        "\121\uffff";
     static final String DFA12_minS =
-        "\1\0\1\141\1\156\1\164\1\141\1\uffff\1\166\2\uffff\1\145\1\157"+
-        "\1\76\1\101\2\uffff\2\0\1\52\2\uffff\1\144\1\143\1\uffff\1\151\1"+
-        "\141\1\154\1\uffff\1\145\2\uffff\1\142\1\155\6\uffff\1\165\1\150"+
-        "\2\164\1\165\1\156\1\165\1\160\1\154\2\151\2\145\1\164\1\147\1\157"+
-        "\1\145\1\156\1\141\2\60\1\163\1\60\1\165\1\60\1\145\1\154\1\141"+
-        "\2\uffff\1\60\1\uffff\1\156\1\uffff\2\60\1\143\1\uffff\1\144\2\uffff"+
-        "\1\150\1\60\1\151\1\uffff\1\156\1\145\1\60\1\uffff";
+        "\1\0\1\141\1\156\1\164\1\141\1\uffff\1\166\2\uffff\1\157\1\76\1"+
+        "\101\2\uffff\2\0\1\52\2\uffff\1\144\1\143\1\uffff\1\151\1\141\1"+
+        "\154\1\uffff\1\145\2\uffff\1\155\6\uffff\1\165\1\150\2\164\1\165"+
+        "\1\156\1\160\1\154\2\151\2\145\1\164\1\157\1\145\1\156\1\141\2\60"+
+        "\1\163\1\165\1\60\1\145\1\154\1\141\2\uffff\1\60\1\156\1\uffff\2"+
+        "\60\1\143\1\uffff\1\144\2\uffff\1\150\1\60\1\151\1\uffff\1\156\1"+
+        "\145\1\60\1\uffff";
     static final String DFA12_maxS =
-        "\1\uffff\1\157\1\156\1\164\1\141\1\uffff\1\166\2\uffff\1\145\1"+
-        "\157\1\76\1\172\2\uffff\2\uffff\1\57\2\uffff\1\144\1\143\1\uffff"+
-        "\1\151\1\141\1\154\1\uffff\1\145\2\uffff\1\142\1\155\6\uffff\1\165"+
-        "\1\150\2\164\1\165\1\156\1\165\1\160\1\154\2\151\2\145\1\164\1\147"+
-        "\1\157\1\145\1\156\1\141\2\172\1\163\1\172\1\165\1\172\1\145\1\154"+
-        "\1\141\2\uffff\1\172\1\uffff\1\156\1\uffff\2\172\1\143\1\uffff\1"+
-        "\144\2\uffff\1\150\1\172\1\151\1\uffff\1\156\1\145\1\172\1\uffff";
+        "\1\uffff\1\157\1\156\1\164\1\141\1\uffff\1\166\2\uffff\1\157\1"+
+        "\76\1\172\2\uffff\2\uffff\1\57\2\uffff\1\144\1\143\1\uffff\1\151"+
+        "\1\141\1\154\1\uffff\1\145\2\uffff\1\155\6\uffff\1\165\1\150\2\164"+
+        "\1\165\1\156\1\160\1\154\2\151\2\145\1\164\1\157\1\145\1\156\1\141"+
+        "\2\172\1\163\1\165\1\172\1\145\1\154\1\141\2\uffff\1\172\1\156\1"+
+        "\uffff\2\172\1\143\1\uffff\1\144\2\uffff\1\150\1\172\1\151\1\uffff"+
+        "\1\156\1\145\1\172\1\uffff";
     static final String DFA12_acceptS =
-        "\5\uffff\1\5\1\uffff\1\7\1\10\4\uffff\1\16\1\17\3\uffff\1\23\1"+
-        "\24\2\uffff\1\16\3\uffff\1\5\1\uffff\1\7\1\10\2\uffff\1\15\1\17"+
-        "\1\20\1\21\1\22\1\23\34\uffff\1\12\1\4\1\uffff\1\11\1\uffff\1\1"+
-        "\3\uffff\1\6\1\uffff\1\14\1\2\3\uffff\1\13\3\uffff\1\3";
+        "\5\uffff\1\5\1\uffff\1\7\1\10\3\uffff\1\15\1\16\3\uffff\1\22\1"+
+        "\23\2\uffff\1\15\3\uffff\1\5\1\uffff\1\7\1\10\1\uffff\1\14\1\16"+
+        "\1\17\1\20\1\21\1\22\31\uffff\1\11\1\4\2\uffff\1\1\3\uffff\1\6\1"+
+        "\uffff\1\13\1\2\3\uffff\1\12\3\uffff\1\3";
     static final String DFA12_specialS =
-        "\1\2\16\uffff\1\0\1\1\106\uffff}>";
+        "\1\2\15\uffff\1\1\1\0\101\uffff}>";
     static final String[] DFA12_transitionS = {
-            "\11\23\2\22\2\23\1\22\22\23\1\22\1\23\1\17\4\23\1\20\7\23\1"+
-            "\21\12\16\1\23\1\7\1\23\1\13\3\23\32\15\3\23\1\14\1\15\1\23"+
-            "\2\15\1\12\1\11\1\6\3\15\1\2\3\15\1\1\5\15\1\3\2\15\1\4\4\15"+
-            "\1\5\1\23\1\10\uff82\23",
-            "\1\25\15\uffff\1\24",
+            "\11\22\2\21\2\22\1\21\22\22\1\21\1\22\1\16\4\22\1\17\7\22\1"+
+            "\20\12\15\1\22\1\7\1\22\1\12\3\22\32\14\3\22\1\13\1\14\1\22"+
+            "\2\14\1\11\1\14\1\6\3\14\1\2\3\14\1\1\5\14\1\3\2\14\1\4\4\14"+
+            "\1\5\1\22\1\10\uff82\22",
+            "\1\24\15\uffff\1\23",
+            "\1\26",
             "\1\27",
             "\1\30",
-            "\1\31",
             "",
-            "\1\33",
+            "\1\32",
             "",
             "",
+            "\1\35",
             "\1\36",
-            "\1\37",
-            "\1\40",
-            "\32\26\4\uffff\1\26\1\uffff\32\26",
+            "\32\25\4\uffff\1\25\1\uffff\32\25",
             "",
             "",
-            "\0\42",
-            "\0\42",
-            "\1\43\4\uffff\1\44",
+            "\0\40",
+            "\0\40",
+            "\1\41\4\uffff\1\42",
             "",
             "",
+            "\1\44",
+            "\1\45",
+            "",
             "\1\46",
             "\1\47",
-            "",
             "\1\50",
+            "",
             "\1\51",
+            "",
+            "",
             "\1\52",
             "",
+            "",
+            "",
+            "",
+            "",
+            "",
             "\1\53",
-            "",
-            "",
             "\1\54",
             "\1\55",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "",
             "\1\56",
             "\1\57",
             "\1\60",
@@ -1070,40 +1041,33 @@
             "\1\71",
             "\1\72",
             "\1\73",
-            "\1\74",
-            "\1\75",
-            "\1\76",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\14\25\1\74\15\25",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\77",
             "\1\100",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\14\26\1\101\15\26",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
+            "\1\102",
+            "\1\103",
             "\1\104",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
+            "",
+            "",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\106",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
-            "\1\110",
+            "",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\111",
+            "",
             "\1\112",
             "",
             "",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
+            "\1\113",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
+            "\1\115",
             "",
-            "\1\114",
-            "",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
+            "\1\116",
             "\1\117",
-            "",
-            "\1\120",
-            "",
-            "",
-            "\1\121",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
-            "\1\123",
-            "",
-            "\1\124",
-            "\1\125",
-            "\12\26\7\uffff\32\26\4\uffff\1\26\1\uffff\32\26",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             ""
     };
 
@@ -1137,7 +1101,7 @@
             this.transition = DFA12_transition;
         }
         public String getDescription() {
-            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
+            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             IntStream input = _input;
@@ -1147,19 +1111,19 @@
                         int LA12_15 = input.LA(1);
 
                         s = -1;
-                        if ( ((LA12_15>='\u0000' && LA12_15<='\uFFFF')) ) {s = 34;}
+                        if ( ((LA12_15>='\u0000' && LA12_15<='\uFFFF')) ) {s = 32;}
 
-                        else s = 19;
+                        else s = 18;
 
                         if ( s>=0 ) return s;
                         break;
                     case 1 : 
-                        int LA12_16 = input.LA(1);
+                        int LA12_14 = input.LA(1);
 
                         s = -1;
-                        if ( ((LA12_16>='\u0000' && LA12_16<='\uFFFF')) ) {s = 34;}
+                        if ( ((LA12_14>='\u0000' && LA12_14<='\uFFFF')) ) {s = 32;}
 
-                        else s = 19;
+                        else s = 18;
 
                         if ( s>=0 ) return s;
                         break;
@@ -1183,27 +1147,25 @@
 
                         else if ( (LA12_0=='}') ) {s = 8;}
 
-                        else if ( (LA12_0=='d') ) {s = 9;}
+                        else if ( (LA12_0=='c') ) {s = 9;}
 
-                        else if ( (LA12_0=='c') ) {s = 10;}
+                        else if ( (LA12_0=='=') ) {s = 10;}
 
-                        else if ( (LA12_0=='=') ) {s = 11;}
+                        else if ( (LA12_0=='^') ) {s = 11;}
 
-                        else if ( (LA12_0=='^') ) {s = 12;}
+                        else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='b')||LA12_0=='d'||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='l')||(LA12_0>='n' && LA12_0<='r')||(LA12_0>='t' && LA12_0<='u')||(LA12_0>='w' && LA12_0<='z')) ) {s = 12;}
 
-                        else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='a' && LA12_0<='b')||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='l')||(LA12_0>='n' && LA12_0<='r')||(LA12_0>='t' && LA12_0<='u')||(LA12_0>='w' && LA12_0<='z')) ) {s = 13;}
+                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 13;}
 
-                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 14;}
+                        else if ( (LA12_0=='\"') ) {s = 14;}
 
-                        else if ( (LA12_0=='\"') ) {s = 15;}
+                        else if ( (LA12_0=='\'') ) {s = 15;}
 
-                        else if ( (LA12_0=='\'') ) {s = 16;}
+                        else if ( (LA12_0=='/') ) {s = 16;}
 
-                        else if ( (LA12_0=='/') ) {s = 17;}
+                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 17;}
 
-                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 18;}
-
-                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='(' && LA12_0<='.')||LA12_0==':'||LA12_0=='<'||(LA12_0>='>' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 19;}
+                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='(' && LA12_0<='.')||LA12_0==':'||LA12_0=='<'||(LA12_0>='>' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 18;}
 
                         if ( s>=0 ) return s;
                         break;
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStatesParser.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStatesParser.java
index 62cfad4..8492448 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStatesParser.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStatesParser.java
@@ -21,12 +21,11 @@
 @SuppressWarnings("all")
 public class InternalStatesParser extends AbstractInternalAntlrParser {
     public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'module'", "'initial'", "'statemachine'", "'value'", "'{'", "'events'", "';'", "'}'", "'debug'", "'state'", "'compound'", "'machine'", "'=>'"
+        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'module'", "'initial'", "'statemachine'", "'value'", "'{'", "'events'", "';'", "'}'", "'state'", "'compound'", "'machine'", "'=>'"
     };
     public static final int RULE_ML_COMMENT=7;
     public static final int T__12=12;
     public static final int RULE_ID=5;
-    public static final int T__23=23;
     public static final int T__20=20;
     public static final int T__13=13;
     public static final int RULE_STRING=4;
@@ -120,123 +119,76 @@
 
 
     // $ANTLR start "ruleModule"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:76:1: ruleModule returns [EObject current=null] : (otherlv_0= 'module' ( ( (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID ) ) ) ( (lv_machines_2_0= ruleStatemachine ) )* ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:76:1: ruleModule returns [EObject current=null] : (otherlv_0= 'module' ( (lv_name_1_0= RULE_STRING ) ) ( (lv_machines_2_0= ruleStatemachine ) )* ) ;
     public final EObject ruleModule() throws RecognitionException {
         EObject current = null;
 
         Token otherlv_0=null;
-        Token lv_name_1_1=null;
-        Token lv_name_1_2=null;
+        Token lv_name_1_0=null;
         EObject lv_machines_2_0 = null;
 
 
          enterRule(); 
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:79:28: ( (otherlv_0= 'module' ( ( (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID ) ) ) ( (lv_machines_2_0= ruleStatemachine ) )* ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:80:1: (otherlv_0= 'module' ( ( (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID ) ) ) ( (lv_machines_2_0= ruleStatemachine ) )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:79:28: ( (otherlv_0= 'module' ( (lv_name_1_0= RULE_STRING ) ) ( (lv_machines_2_0= ruleStatemachine ) )* ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:80:1: (otherlv_0= 'module' ( (lv_name_1_0= RULE_STRING ) ) ( (lv_machines_2_0= ruleStatemachine ) )* )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:80:1: (otherlv_0= 'module' ( ( (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID ) ) ) ( (lv_machines_2_0= ruleStatemachine ) )* )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:80:3: otherlv_0= 'module' ( ( (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID ) ) ) ( (lv_machines_2_0= ruleStatemachine ) )*
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:80:1: (otherlv_0= 'module' ( (lv_name_1_0= RULE_STRING ) ) ( (lv_machines_2_0= ruleStatemachine ) )* )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:80:3: otherlv_0= 'module' ( (lv_name_1_0= RULE_STRING ) ) ( (lv_machines_2_0= ruleStatemachine ) )*
             {
             otherlv_0=(Token)match(input,11,FOLLOW_11_in_ruleModule122); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getModuleAccess().getModuleKeyword_0());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:84:1: ( ( (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:85:1: ( (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:84:1: ( (lv_name_1_0= RULE_STRING ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:85:1: (lv_name_1_0= RULE_STRING )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:85:1: ( (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:86:1: (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:85:1: (lv_name_1_0= RULE_STRING )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:86:3: lv_name_1_0= RULE_STRING
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:86:1: (lv_name_1_1= RULE_STRING | lv_name_1_2= RULE_ID )
-            int alt1=2;
-            int LA1_0 = input.LA(1);
+            lv_name_1_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleModule139); 
 
-            if ( (LA1_0==RULE_STRING) ) {
-                alt1=1;
-            }
-            else if ( (LA1_0==RULE_ID) ) {
-                alt1=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 1, 0, input);
+            			newLeafNode(lv_name_1_0, grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0()); 
+            		
 
-                throw nvae;
-            }
-            switch (alt1) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:87:3: lv_name_1_1= RULE_STRING
-                    {
-                    lv_name_1_1=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleModule141); 
-
-                    			newLeafNode(lv_name_1_1, grammarAccess.getModuleAccess().getNameSTRINGTerminalRuleCall_1_0_0()); 
-                    		
-
-                    	        if (current==null) {
-                    	            current = createModelElement(grammarAccess.getModuleRule());
-                    	        }
-                           		setWithLastConsumed(
-                           			current, 
-                           			"name",
-                            		lv_name_1_1, 
-                            		"STRING");
-                    	    
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:102:8: lv_name_1_2= RULE_ID
-                    {
-                    lv_name_1_2=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleModule161); 
-
-                    			newLeafNode(lv_name_1_2, grammarAccess.getModuleAccess().getNameIDTerminalRuleCall_1_0_1()); 
-                    		
-
-                    	        if (current==null) {
-                    	            current = createModelElement(grammarAccess.getModuleRule());
-                    	        }
-                           		setWithLastConsumed(
-                           			current, 
-                           			"name",
-                            		lv_name_1_2, 
-                            		"ID");
-                    	    
-
-                    }
-                    break;
+            	        if (current==null) {
+            	            current = createModelElement(grammarAccess.getModuleRule());
+            	        }
+                   		setWithLastConsumed(
+                   			current, 
+                   			"name",
+                    		lv_name_1_0, 
+                    		"STRING");
+            	    
 
             }
 
 
             }
 
-
-            }
-
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:120:2: ( (lv_machines_2_0= ruleStatemachine ) )*
-            loop2:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:102:2: ( (lv_machines_2_0= ruleStatemachine ) )*
+            loop1:
             do {
-                int alt2=2;
-                int LA2_0 = input.LA(1);
+                int alt1=2;
+                int LA1_0 = input.LA(1);
 
-                if ( ((LA2_0>=12 && LA2_0<=13)) ) {
-                    alt2=1;
+                if ( ((LA1_0>=12 && LA1_0<=13)) ) {
+                    alt1=1;
                 }
 
 
-                switch (alt2) {
+                switch (alt1) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:121:1: (lv_machines_2_0= ruleStatemachine )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:103:1: (lv_machines_2_0= ruleStatemachine )
             	    {
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:121:1: (lv_machines_2_0= ruleStatemachine )
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:122:3: lv_machines_2_0= ruleStatemachine
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:103:1: (lv_machines_2_0= ruleStatemachine )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:104:3: lv_machines_2_0= ruleStatemachine
             	    {
             	     
             	    	        newCompositeNode(grammarAccess.getModuleAccess().getMachinesStatemachineParserRuleCall_2_0()); 
             	    	    
-            	    pushFollow(FOLLOW_ruleStatemachine_in_ruleModule190);
+            	    pushFollow(FOLLOW_ruleStatemachine_in_ruleModule165);
             	    lv_machines_2_0=ruleStatemachine();
 
             	    state._fsp--;
@@ -260,7 +212,7 @@
             	    break;
 
             	default :
-            	    break loop2;
+            	    break loop1;
                 }
             } while (true);
 
@@ -285,7 +237,7 @@
 
 
     // $ANTLR start "entryRuleStatemachine"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:146:1: entryRuleStatemachine returns [EObject current=null] : iv_ruleStatemachine= ruleStatemachine EOF ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:128:1: entryRuleStatemachine returns [EObject current=null] : iv_ruleStatemachine= ruleStatemachine EOF ;
     public final EObject entryRuleStatemachine() throws RecognitionException {
         EObject current = null;
 
@@ -293,17 +245,17 @@
 
 
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:147:2: (iv_ruleStatemachine= ruleStatemachine EOF )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:148:2: iv_ruleStatemachine= ruleStatemachine EOF
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:129:2: (iv_ruleStatemachine= ruleStatemachine EOF )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:130:2: iv_ruleStatemachine= ruleStatemachine EOF
             {
              newCompositeNode(grammarAccess.getStatemachineRule()); 
-            pushFollow(FOLLOW_ruleStatemachine_in_entryRuleStatemachine227);
+            pushFollow(FOLLOW_ruleStatemachine_in_entryRuleStatemachine202);
             iv_ruleStatemachine=ruleStatemachine();
 
             state._fsp--;
 
              current =iv_ruleStatemachine; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleStatemachine237); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleStatemachine212); 
 
             }
 
@@ -321,7 +273,7 @@
 
 
     // $ANTLR start "ruleStatemachine"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:155:1: ruleStatemachine returns [EObject current=null] : ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}' (otherlv_11= 'debug' ( (lv_dbgName_12_0= RULE_ID ) ) )? ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:137:1: ruleStatemachine returns [EObject current=null] : ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}' ) ;
     public final EObject ruleStatemachine() throws RecognitionException {
         EObject current = null;
 
@@ -334,8 +286,6 @@
         Token otherlv_6=null;
         Token otherlv_8=null;
         Token otherlv_10=null;
-        Token otherlv_11=null;
-        Token lv_dbgName_12_0=null;
         EObject lv_events_7_0 = null;
 
         EObject lv_states_9_0 = null;
@@ -344,27 +294,27 @@
          enterRule(); 
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:158:28: ( ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}' (otherlv_11= 'debug' ( (lv_dbgName_12_0= RULE_ID ) ) )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:159:1: ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}' (otherlv_11= 'debug' ( (lv_dbgName_12_0= RULE_ID ) ) )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:140:28: ( ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:141:1: ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:159:1: ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}' (otherlv_11= 'debug' ( (lv_dbgName_12_0= RULE_ID ) ) )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:159:2: ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}' (otherlv_11= 'debug' ( (lv_dbgName_12_0= RULE_ID ) ) )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:141:1: ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:141:2: ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'statemachine' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' otherlv_6= 'events' ( (lv_events_7_0= ruleEvent ) )* otherlv_8= ';' ( (lv_states_9_0= ruleState ) )* otherlv_10= '}'
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:159:2: ( (lv_initial_0_0= 'initial' ) )?
-            int alt3=2;
-            int LA3_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:141:2: ( (lv_initial_0_0= 'initial' ) )?
+            int alt2=2;
+            int LA2_0 = input.LA(1);
 
-            if ( (LA3_0==12) ) {
-                alt3=1;
+            if ( (LA2_0==12) ) {
+                alt2=1;
             }
-            switch (alt3) {
+            switch (alt2) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:160:1: (lv_initial_0_0= 'initial' )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:142:1: (lv_initial_0_0= 'initial' )
                     {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:160:1: (lv_initial_0_0= 'initial' )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:161:3: lv_initial_0_0= 'initial'
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:142:1: (lv_initial_0_0= 'initial' )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:143:3: lv_initial_0_0= 'initial'
                     {
-                    lv_initial_0_0=(Token)match(input,12,FOLLOW_12_in_ruleStatemachine280); 
+                    lv_initial_0_0=(Token)match(input,12,FOLLOW_12_in_ruleStatemachine255); 
 
                             newLeafNode(lv_initial_0_0, grammarAccess.getStatemachineAccess().getInitialInitialKeyword_0_0());
                         
@@ -383,17 +333,17 @@
 
             }
 
-            otherlv_1=(Token)match(input,13,FOLLOW_13_in_ruleStatemachine306); 
+            otherlv_1=(Token)match(input,13,FOLLOW_13_in_ruleStatemachine281); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getStatemachineAccess().getStatemachineKeyword_1());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:178:1: ( (lv_name_2_0= RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:179:1: (lv_name_2_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:160:1: ( (lv_name_2_0= RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:161:1: (lv_name_2_0= RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:179:1: (lv_name_2_0= RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:180:3: lv_name_2_0= RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:161:1: (lv_name_2_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:162:3: lv_name_2_0= RULE_ID
             {
-            lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleStatemachine323); 
+            lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleStatemachine298); 
 
             			newLeafNode(lv_name_2_0, grammarAccess.getStatemachineAccess().getNameIDTerminalRuleCall_2_0()); 
             		
@@ -413,28 +363,28 @@
 
             }
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:196:2: (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )?
-            int alt4=2;
-            int LA4_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:178:2: (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )?
+            int alt3=2;
+            int LA3_0 = input.LA(1);
 
-            if ( (LA4_0==14) ) {
-                alt4=1;
+            if ( (LA3_0==14) ) {
+                alt3=1;
             }
-            switch (alt4) {
+            switch (alt3) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:196:4: otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:178:4: otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) )
                     {
-                    otherlv_3=(Token)match(input,14,FOLLOW_14_in_ruleStatemachine341); 
+                    otherlv_3=(Token)match(input,14,FOLLOW_14_in_ruleStatemachine316); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getStatemachineAccess().getValueKeyword_3_0());
                         
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:200:1: ( (lv_value_4_0= RULE_INT ) )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:201:1: (lv_value_4_0= RULE_INT )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:182:1: ( (lv_value_4_0= RULE_INT ) )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:183:1: (lv_value_4_0= RULE_INT )
                     {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:201:1: (lv_value_4_0= RULE_INT )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:202:3: lv_value_4_0= RULE_INT
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:183:1: (lv_value_4_0= RULE_INT )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:184:3: lv_value_4_0= RULE_INT
                     {
-                    lv_value_4_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleStatemachine358); 
+                    lv_value_4_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleStatemachine333); 
 
                     			newLeafNode(lv_value_4_0, grammarAccess.getStatemachineAccess().getValueINTTerminalRuleCall_3_1_0()); 
                     		
@@ -460,36 +410,36 @@
 
             }
 
-            otherlv_5=(Token)match(input,15,FOLLOW_15_in_ruleStatemachine377); 
+            otherlv_5=(Token)match(input,15,FOLLOW_15_in_ruleStatemachine352); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getStatemachineAccess().getLeftCurlyBracketKeyword_4());
                 
-            otherlv_6=(Token)match(input,16,FOLLOW_16_in_ruleStatemachine389); 
+            otherlv_6=(Token)match(input,16,FOLLOW_16_in_ruleStatemachine364); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getStatemachineAccess().getEventsKeyword_5());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:226:1: ( (lv_events_7_0= ruleEvent ) )*
-            loop5:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:208:1: ( (lv_events_7_0= ruleEvent ) )*
+            loop4:
             do {
-                int alt5=2;
-                int LA5_0 = input.LA(1);
+                int alt4=2;
+                int LA4_0 = input.LA(1);
 
-                if ( (LA5_0==RULE_ID) ) {
-                    alt5=1;
+                if ( (LA4_0==RULE_ID) ) {
+                    alt4=1;
                 }
 
 
-                switch (alt5) {
+                switch (alt4) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:227:1: (lv_events_7_0= ruleEvent )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:209:1: (lv_events_7_0= ruleEvent )
             	    {
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:227:1: (lv_events_7_0= ruleEvent )
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:228:3: lv_events_7_0= ruleEvent
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:209:1: (lv_events_7_0= ruleEvent )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:210:3: lv_events_7_0= ruleEvent
             	    {
             	     
             	    	        newCompositeNode(grammarAccess.getStatemachineAccess().getEventsEventParserRuleCall_6_0()); 
             	    	    
-            	    pushFollow(FOLLOW_ruleEvent_in_ruleStatemachine410);
+            	    pushFollow(FOLLOW_ruleEvent_in_ruleStatemachine385);
             	    lv_events_7_0=ruleEvent();
 
             	    state._fsp--;
@@ -513,36 +463,36 @@
             	    break;
 
             	default :
-            	    break loop5;
+            	    break loop4;
                 }
             } while (true);
 
-            otherlv_8=(Token)match(input,17,FOLLOW_17_in_ruleStatemachine423); 
+            otherlv_8=(Token)match(input,17,FOLLOW_17_in_ruleStatemachine398); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getStatemachineAccess().getSemicolonKeyword_7());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:248:1: ( (lv_states_9_0= ruleState ) )*
-            loop6:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:230:1: ( (lv_states_9_0= ruleState ) )*
+            loop5:
             do {
-                int alt6=2;
-                int LA6_0 = input.LA(1);
+                int alt5=2;
+                int LA5_0 = input.LA(1);
 
-                if ( (LA6_0==12||(LA6_0>=20 && LA6_0<=21)) ) {
-                    alt6=1;
+                if ( (LA5_0==12||(LA5_0>=19 && LA5_0<=20)) ) {
+                    alt5=1;
                 }
 
 
-                switch (alt6) {
+                switch (alt5) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:249:1: (lv_states_9_0= ruleState )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:231:1: (lv_states_9_0= ruleState )
             	    {
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:249:1: (lv_states_9_0= ruleState )
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:250:3: lv_states_9_0= ruleState
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:231:1: (lv_states_9_0= ruleState )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:232:3: lv_states_9_0= ruleState
             	    {
             	     
             	    	        newCompositeNode(grammarAccess.getStatemachineAccess().getStatesStateParserRuleCall_8_0()); 
             	    	    
-            	    pushFollow(FOLLOW_ruleState_in_ruleStatemachine444);
+            	    pushFollow(FOLLOW_ruleState_in_ruleStatemachine419);
             	    lv_states_9_0=ruleState();
 
             	    state._fsp--;
@@ -566,61 +516,14 @@
             	    break;
 
             	default :
-            	    break loop6;
+            	    break loop5;
                 }
             } while (true);
 
-            otherlv_10=(Token)match(input,18,FOLLOW_18_in_ruleStatemachine457); 
+            otherlv_10=(Token)match(input,18,FOLLOW_18_in_ruleStatemachine432); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getStatemachineAccess().getRightCurlyBracketKeyword_9());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:270:1: (otherlv_11= 'debug' ( (lv_dbgName_12_0= RULE_ID ) ) )?
-            int alt7=2;
-            int LA7_0 = input.LA(1);
-
-            if ( (LA7_0==19) ) {
-                alt7=1;
-            }
-            switch (alt7) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:270:3: otherlv_11= 'debug' ( (lv_dbgName_12_0= RULE_ID ) )
-                    {
-                    otherlv_11=(Token)match(input,19,FOLLOW_19_in_ruleStatemachine470); 
-
-                        	newLeafNode(otherlv_11, grammarAccess.getStatemachineAccess().getDebugKeyword_10_0());
-                        
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:274:1: ( (lv_dbgName_12_0= RULE_ID ) )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:275:1: (lv_dbgName_12_0= RULE_ID )
-                    {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:275:1: (lv_dbgName_12_0= RULE_ID )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:276:3: lv_dbgName_12_0= RULE_ID
-                    {
-                    lv_dbgName_12_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleStatemachine487); 
-
-                    			newLeafNode(lv_dbgName_12_0, grammarAccess.getStatemachineAccess().getDbgNameIDTerminalRuleCall_10_1_0()); 
-                    		
-
-                    	        if (current==null) {
-                    	            current = createModelElement(grammarAccess.getStatemachineRule());
-                    	        }
-                           		setWithLastConsumed(
-                           			current, 
-                           			"dbgName",
-                            		lv_dbgName_12_0, 
-                            		"ID");
-                    	    
-
-                    }
-
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
 
             }
 
@@ -642,7 +545,7 @@
 
 
     // $ANTLR start "entryRuleEvent"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:300:1: entryRuleEvent returns [EObject current=null] : iv_ruleEvent= ruleEvent EOF ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:260:1: entryRuleEvent returns [EObject current=null] : iv_ruleEvent= ruleEvent EOF ;
     public final EObject entryRuleEvent() throws RecognitionException {
         EObject current = null;
 
@@ -650,17 +553,17 @@
 
 
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:301:2: (iv_ruleEvent= ruleEvent EOF )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:302:2: iv_ruleEvent= ruleEvent EOF
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:261:2: (iv_ruleEvent= ruleEvent EOF )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:262:2: iv_ruleEvent= ruleEvent EOF
             {
              newCompositeNode(grammarAccess.getEventRule()); 
-            pushFollow(FOLLOW_ruleEvent_in_entryRuleEvent530);
+            pushFollow(FOLLOW_ruleEvent_in_entryRuleEvent468);
             iv_ruleEvent=ruleEvent();
 
             state._fsp--;
 
              current =iv_ruleEvent; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleEvent540); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleEvent478); 
 
             }
 
@@ -678,7 +581,7 @@
 
 
     // $ANTLR start "ruleEvent"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:309:1: ruleEvent returns [EObject current=null] : ( (lv_name_0_0= RULE_ID ) ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:269:1: ruleEvent returns [EObject current=null] : ( (lv_name_0_0= RULE_ID ) ) ;
     public final EObject ruleEvent() throws RecognitionException {
         EObject current = null;
 
@@ -687,16 +590,16 @@
          enterRule(); 
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:312:28: ( ( (lv_name_0_0= RULE_ID ) ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:313:1: ( (lv_name_0_0= RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:272:28: ( ( (lv_name_0_0= RULE_ID ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:273:1: ( (lv_name_0_0= RULE_ID ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:313:1: ( (lv_name_0_0= RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:314:1: (lv_name_0_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:273:1: ( (lv_name_0_0= RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:274:1: (lv_name_0_0= RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:314:1: (lv_name_0_0= RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:315:3: lv_name_0_0= RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:274:1: (lv_name_0_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:275:3: lv_name_0_0= RULE_ID
             {
-            lv_name_0_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleEvent581); 
+            lv_name_0_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleEvent519); 
 
             			newLeafNode(lv_name_0_0, grammarAccess.getEventAccess().getNameIDTerminalRuleCall_0()); 
             		
@@ -734,7 +637,7 @@
 
 
     // $ANTLR start "entryRuleState"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:339:1: entryRuleState returns [EObject current=null] : iv_ruleState= ruleState EOF ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:299:1: entryRuleState returns [EObject current=null] : iv_ruleState= ruleState EOF ;
     public final EObject entryRuleState() throws RecognitionException {
         EObject current = null;
 
@@ -742,17 +645,17 @@
 
 
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:340:2: (iv_ruleState= ruleState EOF )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:341:2: iv_ruleState= ruleState EOF
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:300:2: (iv_ruleState= ruleState EOF )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:301:2: iv_ruleState= ruleState EOF
             {
              newCompositeNode(grammarAccess.getStateRule()); 
-            pushFollow(FOLLOW_ruleState_in_entryRuleState621);
+            pushFollow(FOLLOW_ruleState_in_entryRuleState559);
             iv_ruleState=ruleState();
 
             state._fsp--;
 
              current =iv_ruleState; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleState631); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleState569); 
 
             }
 
@@ -770,7 +673,7 @@
 
 
     // $ANTLR start "ruleState"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:348:1: ruleState returns [EObject current=null] : (this_SimpleState_0= ruleSimpleState | this_CompoundState_1= ruleCompoundState ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:308:1: ruleState returns [EObject current=null] : (this_SimpleState_0= ruleSimpleState | this_CompoundState_1= ruleCompoundState ) ;
     public final EObject ruleState() throws RecognitionException {
         EObject current = null;
 
@@ -782,33 +685,33 @@
          enterRule(); 
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:351:28: ( (this_SimpleState_0= ruleSimpleState | this_CompoundState_1= ruleCompoundState ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:352:1: (this_SimpleState_0= ruleSimpleState | this_CompoundState_1= ruleCompoundState )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:311:28: ( (this_SimpleState_0= ruleSimpleState | this_CompoundState_1= ruleCompoundState ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:312:1: (this_SimpleState_0= ruleSimpleState | this_CompoundState_1= ruleCompoundState )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:352:1: (this_SimpleState_0= ruleSimpleState | this_CompoundState_1= ruleCompoundState )
-            int alt8=2;
-            int LA8_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:312:1: (this_SimpleState_0= ruleSimpleState | this_CompoundState_1= ruleCompoundState )
+            int alt6=2;
+            int LA6_0 = input.LA(1);
 
-            if ( (LA8_0==12||LA8_0==20) ) {
-                alt8=1;
+            if ( (LA6_0==12||LA6_0==19) ) {
+                alt6=1;
             }
-            else if ( (LA8_0==21) ) {
-                alt8=2;
+            else if ( (LA6_0==20) ) {
+                alt6=2;
             }
             else {
                 NoViableAltException nvae =
-                    new NoViableAltException("", 8, 0, input);
+                    new NoViableAltException("", 6, 0, input);
 
                 throw nvae;
             }
-            switch (alt8) {
+            switch (alt6) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:353:5: this_SimpleState_0= ruleSimpleState
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:313:5: this_SimpleState_0= ruleSimpleState
                     {
                      
                             newCompositeNode(grammarAccess.getStateAccess().getSimpleStateParserRuleCall_0()); 
                         
-                    pushFollow(FOLLOW_ruleSimpleState_in_ruleState678);
+                    pushFollow(FOLLOW_ruleSimpleState_in_ruleState616);
                     this_SimpleState_0=ruleSimpleState();
 
                     state._fsp--;
@@ -821,12 +724,12 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:363:5: this_CompoundState_1= ruleCompoundState
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:323:5: this_CompoundState_1= ruleCompoundState
                     {
                      
                             newCompositeNode(grammarAccess.getStateAccess().getCompoundStateParserRuleCall_1()); 
                         
-                    pushFollow(FOLLOW_ruleCompoundState_in_ruleState705);
+                    pushFollow(FOLLOW_ruleCompoundState_in_ruleState643);
                     this_CompoundState_1=ruleCompoundState();
 
                     state._fsp--;
@@ -859,7 +762,7 @@
 
 
     // $ANTLR start "entryRuleSimpleState"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:379:1: entryRuleSimpleState returns [EObject current=null] : iv_ruleSimpleState= ruleSimpleState EOF ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:339:1: entryRuleSimpleState returns [EObject current=null] : iv_ruleSimpleState= ruleSimpleState EOF ;
     public final EObject entryRuleSimpleState() throws RecognitionException {
         EObject current = null;
 
@@ -867,17 +770,17 @@
 
 
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:380:2: (iv_ruleSimpleState= ruleSimpleState EOF )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:381:2: iv_ruleSimpleState= ruleSimpleState EOF
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:340:2: (iv_ruleSimpleState= ruleSimpleState EOF )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:341:2: iv_ruleSimpleState= ruleSimpleState EOF
             {
              newCompositeNode(grammarAccess.getSimpleStateRule()); 
-            pushFollow(FOLLOW_ruleSimpleState_in_entryRuleSimpleState740);
+            pushFollow(FOLLOW_ruleSimpleState_in_entryRuleSimpleState678);
             iv_ruleSimpleState=ruleSimpleState();
 
             state._fsp--;
 
              current =iv_ruleSimpleState; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleSimpleState750); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleSimpleState688); 
 
             }
 
@@ -895,7 +798,7 @@
 
 
     // $ANTLR start "ruleSimpleState"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:388:1: ruleSimpleState returns [EObject current=null] : ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}' (otherlv_8= 'debug' ( (lv_dbgName_9_0= RULE_ID ) ) )? ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:348:1: ruleSimpleState returns [EObject current=null] : ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}' ) ;
     public final EObject ruleSimpleState() throws RecognitionException {
         EObject current = null;
 
@@ -906,35 +809,33 @@
         Token lv_value_4_0=null;
         Token otherlv_5=null;
         Token otherlv_7=null;
-        Token otherlv_8=null;
-        Token lv_dbgName_9_0=null;
         EObject lv_transitions_6_0 = null;
 
 
          enterRule(); 
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:391:28: ( ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}' (otherlv_8= 'debug' ( (lv_dbgName_9_0= RULE_ID ) ) )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:392:1: ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}' (otherlv_8= 'debug' ( (lv_dbgName_9_0= RULE_ID ) ) )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:351:28: ( ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:352:1: ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:392:1: ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}' (otherlv_8= 'debug' ( (lv_dbgName_9_0= RULE_ID ) ) )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:392:2: ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}' (otherlv_8= 'debug' ( (lv_dbgName_9_0= RULE_ID ) ) )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:352:1: ( ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:352:2: ( (lv_initial_0_0= 'initial' ) )? otherlv_1= 'state' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )? otherlv_5= '{' ( (lv_transitions_6_0= ruleTransition ) )* otherlv_7= '}'
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:392:2: ( (lv_initial_0_0= 'initial' ) )?
-            int alt9=2;
-            int LA9_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:352:2: ( (lv_initial_0_0= 'initial' ) )?
+            int alt7=2;
+            int LA7_0 = input.LA(1);
 
-            if ( (LA9_0==12) ) {
-                alt9=1;
+            if ( (LA7_0==12) ) {
+                alt7=1;
             }
-            switch (alt9) {
+            switch (alt7) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:393:1: (lv_initial_0_0= 'initial' )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:353:1: (lv_initial_0_0= 'initial' )
                     {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:393:1: (lv_initial_0_0= 'initial' )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:394:3: lv_initial_0_0= 'initial'
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:353:1: (lv_initial_0_0= 'initial' )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:354:3: lv_initial_0_0= 'initial'
                     {
-                    lv_initial_0_0=(Token)match(input,12,FOLLOW_12_in_ruleSimpleState793); 
+                    lv_initial_0_0=(Token)match(input,12,FOLLOW_12_in_ruleSimpleState731); 
 
                             newLeafNode(lv_initial_0_0, grammarAccess.getSimpleStateAccess().getInitialInitialKeyword_0_0());
                         
@@ -953,17 +854,17 @@
 
             }
 
-            otherlv_1=(Token)match(input,20,FOLLOW_20_in_ruleSimpleState819); 
+            otherlv_1=(Token)match(input,19,FOLLOW_19_in_ruleSimpleState757); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getSimpleStateAccess().getStateKeyword_1());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:411:1: ( (lv_name_2_0= RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:412:1: (lv_name_2_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:371:1: ( (lv_name_2_0= RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:372:1: (lv_name_2_0= RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:412:1: (lv_name_2_0= RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:413:3: lv_name_2_0= RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:372:1: (lv_name_2_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:373:3: lv_name_2_0= RULE_ID
             {
-            lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleSimpleState836); 
+            lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleSimpleState774); 
 
             			newLeafNode(lv_name_2_0, grammarAccess.getSimpleStateAccess().getNameIDTerminalRuleCall_2_0()); 
             		
@@ -983,28 +884,28 @@
 
             }
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:429:2: (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )?
-            int alt10=2;
-            int LA10_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:389:2: (otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) ) )?
+            int alt8=2;
+            int LA8_0 = input.LA(1);
 
-            if ( (LA10_0==14) ) {
-                alt10=1;
+            if ( (LA8_0==14) ) {
+                alt8=1;
             }
-            switch (alt10) {
+            switch (alt8) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:429:4: otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:389:4: otherlv_3= 'value' ( (lv_value_4_0= RULE_INT ) )
                     {
-                    otherlv_3=(Token)match(input,14,FOLLOW_14_in_ruleSimpleState854); 
+                    otherlv_3=(Token)match(input,14,FOLLOW_14_in_ruleSimpleState792); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getSimpleStateAccess().getValueKeyword_3_0());
                         
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:433:1: ( (lv_value_4_0= RULE_INT ) )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:434:1: (lv_value_4_0= RULE_INT )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:393:1: ( (lv_value_4_0= RULE_INT ) )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:394:1: (lv_value_4_0= RULE_INT )
                     {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:434:1: (lv_value_4_0= RULE_INT )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:435:3: lv_value_4_0= RULE_INT
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:394:1: (lv_value_4_0= RULE_INT )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:395:3: lv_value_4_0= RULE_INT
                     {
-                    lv_value_4_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleSimpleState871); 
+                    lv_value_4_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleSimpleState809); 
 
                     			newLeafNode(lv_value_4_0, grammarAccess.getSimpleStateAccess().getValueINTTerminalRuleCall_3_1_0()); 
                     		
@@ -1030,32 +931,32 @@
 
             }
 
-            otherlv_5=(Token)match(input,15,FOLLOW_15_in_ruleSimpleState890); 
+            otherlv_5=(Token)match(input,15,FOLLOW_15_in_ruleSimpleState828); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getSimpleStateAccess().getLeftCurlyBracketKeyword_4());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:455:1: ( (lv_transitions_6_0= ruleTransition ) )*
-            loop11:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:415:1: ( (lv_transitions_6_0= ruleTransition ) )*
+            loop9:
             do {
-                int alt11=2;
-                int LA11_0 = input.LA(1);
+                int alt9=2;
+                int LA9_0 = input.LA(1);
 
-                if ( (LA11_0==RULE_ID) ) {
-                    alt11=1;
+                if ( (LA9_0==RULE_ID) ) {
+                    alt9=1;
                 }
 
 
-                switch (alt11) {
+                switch (alt9) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:456:1: (lv_transitions_6_0= ruleTransition )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:416:1: (lv_transitions_6_0= ruleTransition )
             	    {
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:456:1: (lv_transitions_6_0= ruleTransition )
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:457:3: lv_transitions_6_0= ruleTransition
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:416:1: (lv_transitions_6_0= ruleTransition )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:417:3: lv_transitions_6_0= ruleTransition
             	    {
             	     
             	    	        newCompositeNode(grammarAccess.getSimpleStateAccess().getTransitionsTransitionParserRuleCall_5_0()); 
             	    	    
-            	    pushFollow(FOLLOW_ruleTransition_in_ruleSimpleState911);
+            	    pushFollow(FOLLOW_ruleTransition_in_ruleSimpleState849);
             	    lv_transitions_6_0=ruleTransition();
 
             	    state._fsp--;
@@ -1079,61 +980,14 @@
             	    break;
 
             	default :
-            	    break loop11;
+            	    break loop9;
                 }
             } while (true);
 
-            otherlv_7=(Token)match(input,18,FOLLOW_18_in_ruleSimpleState924); 
+            otherlv_7=(Token)match(input,18,FOLLOW_18_in_ruleSimpleState862); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getSimpleStateAccess().getRightCurlyBracketKeyword_6());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:477:1: (otherlv_8= 'debug' ( (lv_dbgName_9_0= RULE_ID ) ) )?
-            int alt12=2;
-            int LA12_0 = input.LA(1);
-
-            if ( (LA12_0==19) ) {
-                alt12=1;
-            }
-            switch (alt12) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:477:3: otherlv_8= 'debug' ( (lv_dbgName_9_0= RULE_ID ) )
-                    {
-                    otherlv_8=(Token)match(input,19,FOLLOW_19_in_ruleSimpleState937); 
-
-                        	newLeafNode(otherlv_8, grammarAccess.getSimpleStateAccess().getDebugKeyword_7_0());
-                        
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:481:1: ( (lv_dbgName_9_0= RULE_ID ) )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:482:1: (lv_dbgName_9_0= RULE_ID )
-                    {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:482:1: (lv_dbgName_9_0= RULE_ID )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:483:3: lv_dbgName_9_0= RULE_ID
-                    {
-                    lv_dbgName_9_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleSimpleState954); 
-
-                    			newLeafNode(lv_dbgName_9_0, grammarAccess.getSimpleStateAccess().getDbgNameIDTerminalRuleCall_7_1_0()); 
-                    		
-
-                    	        if (current==null) {
-                    	            current = createModelElement(grammarAccess.getSimpleStateRule());
-                    	        }
-                           		setWithLastConsumed(
-                           			current, 
-                           			"dbgName",
-                            		lv_dbgName_9_0, 
-                            		"ID");
-                    	    
-
-                    }
-
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
 
             }
 
@@ -1155,7 +1009,7 @@
 
 
     // $ANTLR start "entryRuleCompoundState"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:507:1: entryRuleCompoundState returns [EObject current=null] : iv_ruleCompoundState= ruleCompoundState EOF ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:445:1: entryRuleCompoundState returns [EObject current=null] : iv_ruleCompoundState= ruleCompoundState EOF ;
     public final EObject entryRuleCompoundState() throws RecognitionException {
         EObject current = null;
 
@@ -1163,17 +1017,17 @@
 
 
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:508:2: (iv_ruleCompoundState= ruleCompoundState EOF )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:509:2: iv_ruleCompoundState= ruleCompoundState EOF
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:446:2: (iv_ruleCompoundState= ruleCompoundState EOF )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:447:2: iv_ruleCompoundState= ruleCompoundState EOF
             {
              newCompositeNode(grammarAccess.getCompoundStateRule()); 
-            pushFollow(FOLLOW_ruleCompoundState_in_entryRuleCompoundState997);
+            pushFollow(FOLLOW_ruleCompoundState_in_entryRuleCompoundState898);
             iv_ruleCompoundState=ruleCompoundState();
 
             state._fsp--;
 
              current =iv_ruleCompoundState; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleCompoundState1007); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleCompoundState908); 
 
             }
 
@@ -1191,7 +1045,7 @@
 
 
     // $ANTLR start "ruleCompoundState"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:516:1: ruleCompoundState returns [EObject current=null] : (otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}' (otherlv_9= 'debug' ( (lv_dbgName_10_0= RULE_ID ) ) )? ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:454:1: ruleCompoundState returns [EObject current=null] : (otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}' ) ;
     public final EObject ruleCompoundState() throws RecognitionException {
         EObject current = null;
 
@@ -1203,39 +1057,37 @@
         Token otherlv_5=null;
         Token otherlv_6=null;
         Token otherlv_8=null;
-        Token otherlv_9=null;
-        Token lv_dbgName_10_0=null;
         EObject lv_transitions_7_0 = null;
 
 
          enterRule(); 
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:519:28: ( (otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}' (otherlv_9= 'debug' ( (lv_dbgName_10_0= RULE_ID ) ) )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:520:1: (otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}' (otherlv_9= 'debug' ( (lv_dbgName_10_0= RULE_ID ) ) )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:457:28: ( (otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}' ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:458:1: (otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}' )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:520:1: (otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}' (otherlv_9= 'debug' ( (lv_dbgName_10_0= RULE_ID ) ) )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:520:3: otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}' (otherlv_9= 'debug' ( (lv_dbgName_10_0= RULE_ID ) ) )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:458:1: (otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}' )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:458:3: otherlv_0= 'compound' ( (lv_initial_1_0= 'initial' ) )? otherlv_2= 'state' ( (lv_name_3_0= RULE_ID ) ) otherlv_4= 'machine' ( (otherlv_5= RULE_ID ) ) otherlv_6= '{' ( (lv_transitions_7_0= ruleTransition ) )* otherlv_8= '}'
             {
-            otherlv_0=(Token)match(input,21,FOLLOW_21_in_ruleCompoundState1044); 
+            otherlv_0=(Token)match(input,20,FOLLOW_20_in_ruleCompoundState945); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getCompoundStateAccess().getCompoundKeyword_0());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:524:1: ( (lv_initial_1_0= 'initial' ) )?
-            int alt13=2;
-            int LA13_0 = input.LA(1);
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:462:1: ( (lv_initial_1_0= 'initial' ) )?
+            int alt10=2;
+            int LA10_0 = input.LA(1);
 
-            if ( (LA13_0==12) ) {
-                alt13=1;
+            if ( (LA10_0==12) ) {
+                alt10=1;
             }
-            switch (alt13) {
+            switch (alt10) {
                 case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:525:1: (lv_initial_1_0= 'initial' )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:463:1: (lv_initial_1_0= 'initial' )
                     {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:525:1: (lv_initial_1_0= 'initial' )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:526:3: lv_initial_1_0= 'initial'
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:463:1: (lv_initial_1_0= 'initial' )
+                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:464:3: lv_initial_1_0= 'initial'
                     {
-                    lv_initial_1_0=(Token)match(input,12,FOLLOW_12_in_ruleCompoundState1062); 
+                    lv_initial_1_0=(Token)match(input,12,FOLLOW_12_in_ruleCompoundState963); 
 
                             newLeafNode(lv_initial_1_0, grammarAccess.getCompoundStateAccess().getInitialInitialKeyword_1_0());
                         
@@ -1254,17 +1106,17 @@
 
             }
 
-            otherlv_2=(Token)match(input,20,FOLLOW_20_in_ruleCompoundState1088); 
+            otherlv_2=(Token)match(input,19,FOLLOW_19_in_ruleCompoundState989); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getCompoundStateAccess().getStateKeyword_2());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:543:1: ( (lv_name_3_0= RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:544:1: (lv_name_3_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:481:1: ( (lv_name_3_0= RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:482:1: (lv_name_3_0= RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:544:1: (lv_name_3_0= RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:545:3: lv_name_3_0= RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:482:1: (lv_name_3_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:483:3: lv_name_3_0= RULE_ID
             {
-            lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleCompoundState1105); 
+            lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleCompoundState1006); 
 
             			newLeafNode(lv_name_3_0, grammarAccess.getCompoundStateAccess().getNameIDTerminalRuleCall_3_0()); 
             		
@@ -1284,22 +1136,22 @@
 
             }
 
-            otherlv_4=(Token)match(input,22,FOLLOW_22_in_ruleCompoundState1122); 
+            otherlv_4=(Token)match(input,21,FOLLOW_21_in_ruleCompoundState1023); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getCompoundStateAccess().getMachineKeyword_4());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:565:1: ( (otherlv_5= RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:566:1: (otherlv_5= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:503:1: ( (otherlv_5= RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:504:1: (otherlv_5= RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:566:1: (otherlv_5= RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:567:3: otherlv_5= RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:504:1: (otherlv_5= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:505:3: otherlv_5= RULE_ID
             {
 
             			if (current==null) {
             	            current = createModelElement(grammarAccess.getCompoundStateRule());
             	        }
                     
-            otherlv_5=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleCompoundState1142); 
+            otherlv_5=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleCompoundState1043); 
 
             		newLeafNode(otherlv_5, grammarAccess.getCompoundStateAccess().getMachineStatemachineCrossReference_5_0()); 
             	
@@ -1309,32 +1161,32 @@
 
             }
 
-            otherlv_6=(Token)match(input,15,FOLLOW_15_in_ruleCompoundState1154); 
+            otherlv_6=(Token)match(input,15,FOLLOW_15_in_ruleCompoundState1055); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getCompoundStateAccess().getLeftCurlyBracketKeyword_6());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:582:1: ( (lv_transitions_7_0= ruleTransition ) )*
-            loop14:
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:520:1: ( (lv_transitions_7_0= ruleTransition ) )*
+            loop11:
             do {
-                int alt14=2;
-                int LA14_0 = input.LA(1);
+                int alt11=2;
+                int LA11_0 = input.LA(1);
 
-                if ( (LA14_0==RULE_ID) ) {
-                    alt14=1;
+                if ( (LA11_0==RULE_ID) ) {
+                    alt11=1;
                 }
 
 
-                switch (alt14) {
+                switch (alt11) {
             	case 1 :
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:583:1: (lv_transitions_7_0= ruleTransition )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:521:1: (lv_transitions_7_0= ruleTransition )
             	    {
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:583:1: (lv_transitions_7_0= ruleTransition )
-            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:584:3: lv_transitions_7_0= ruleTransition
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:521:1: (lv_transitions_7_0= ruleTransition )
+            	    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:522:3: lv_transitions_7_0= ruleTransition
             	    {
             	     
             	    	        newCompositeNode(grammarAccess.getCompoundStateAccess().getTransitionsTransitionParserRuleCall_7_0()); 
             	    	    
-            	    pushFollow(FOLLOW_ruleTransition_in_ruleCompoundState1175);
+            	    pushFollow(FOLLOW_ruleTransition_in_ruleCompoundState1076);
             	    lv_transitions_7_0=ruleTransition();
 
             	    state._fsp--;
@@ -1358,61 +1210,14 @@
             	    break;
 
             	default :
-            	    break loop14;
+            	    break loop11;
                 }
             } while (true);
 
-            otherlv_8=(Token)match(input,18,FOLLOW_18_in_ruleCompoundState1188); 
+            otherlv_8=(Token)match(input,18,FOLLOW_18_in_ruleCompoundState1089); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getCompoundStateAccess().getRightCurlyBracketKeyword_8());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:1: (otherlv_9= 'debug' ( (lv_dbgName_10_0= RULE_ID ) ) )?
-            int alt15=2;
-            int LA15_0 = input.LA(1);
-
-            if ( (LA15_0==19) ) {
-                alt15=1;
-            }
-            switch (alt15) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:604:3: otherlv_9= 'debug' ( (lv_dbgName_10_0= RULE_ID ) )
-                    {
-                    otherlv_9=(Token)match(input,19,FOLLOW_19_in_ruleCompoundState1201); 
-
-                        	newLeafNode(otherlv_9, grammarAccess.getCompoundStateAccess().getDebugKeyword_9_0());
-                        
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:608:1: ( (lv_dbgName_10_0= RULE_ID ) )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:609:1: (lv_dbgName_10_0= RULE_ID )
-                    {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:609:1: (lv_dbgName_10_0= RULE_ID )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:610:3: lv_dbgName_10_0= RULE_ID
-                    {
-                    lv_dbgName_10_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleCompoundState1218); 
-
-                    			newLeafNode(lv_dbgName_10_0, grammarAccess.getCompoundStateAccess().getDbgNameIDTerminalRuleCall_9_1_0()); 
-                    		
-
-                    	        if (current==null) {
-                    	            current = createModelElement(grammarAccess.getCompoundStateRule());
-                    	        }
-                           		setWithLastConsumed(
-                           			current, 
-                           			"dbgName",
-                            		lv_dbgName_10_0, 
-                            		"ID");
-                    	    
-
-                    }
-
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
 
             }
 
@@ -1434,7 +1239,7 @@
 
 
     // $ANTLR start "entryRuleTransition"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:634:1: entryRuleTransition returns [EObject current=null] : iv_ruleTransition= ruleTransition EOF ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:550:1: entryRuleTransition returns [EObject current=null] : iv_ruleTransition= ruleTransition EOF ;
     public final EObject entryRuleTransition() throws RecognitionException {
         EObject current = null;
 
@@ -1442,17 +1247,17 @@
 
 
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:635:2: (iv_ruleTransition= ruleTransition EOF )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:636:2: iv_ruleTransition= ruleTransition EOF
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:551:2: (iv_ruleTransition= ruleTransition EOF )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:552:2: iv_ruleTransition= ruleTransition EOF
             {
              newCompositeNode(grammarAccess.getTransitionRule()); 
-            pushFollow(FOLLOW_ruleTransition_in_entryRuleTransition1261);
+            pushFollow(FOLLOW_ruleTransition_in_entryRuleTransition1125);
             iv_ruleTransition=ruleTransition();
 
             state._fsp--;
 
              current =iv_ruleTransition; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleTransition1271); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleTransition1135); 
 
             }
 
@@ -1470,37 +1275,35 @@
 
 
     // $ANTLR start "ruleTransition"
-    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:643:1: ruleTransition returns [EObject current=null] : ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) ) (otherlv_3= 'debug' ( (lv_dbgName_4_0= RULE_ID ) ) )? ) ;
+    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:559:1: ruleTransition returns [EObject current=null] : ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) ) ) ;
     public final EObject ruleTransition() throws RecognitionException {
         EObject current = null;
 
         Token otherlv_0=null;
         Token otherlv_1=null;
         Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token lv_dbgName_4_0=null;
 
          enterRule(); 
             
         try {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:646:28: ( ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) ) (otherlv_3= 'debug' ( (lv_dbgName_4_0= RULE_ID ) ) )? ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:647:1: ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) ) (otherlv_3= 'debug' ( (lv_dbgName_4_0= RULE_ID ) ) )? )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:562:28: ( ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:563:1: ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:647:1: ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) ) (otherlv_3= 'debug' ( (lv_dbgName_4_0= RULE_ID ) ) )? )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:647:2: ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) ) (otherlv_3= 'debug' ( (lv_dbgName_4_0= RULE_ID ) ) )?
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:563:1: ( ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:563:2: ( (otherlv_0= RULE_ID ) ) otherlv_1= '=>' ( (otherlv_2= RULE_ID ) )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:647:2: ( (otherlv_0= RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:648:1: (otherlv_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:563:2: ( (otherlv_0= RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:564:1: (otherlv_0= RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:648:1: (otherlv_0= RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:649:3: otherlv_0= RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:564:1: (otherlv_0= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:565:3: otherlv_0= RULE_ID
             {
 
             			if (current==null) {
             	            current = createModelElement(grammarAccess.getTransitionRule());
             	        }
                     
-            otherlv_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTransition1316); 
+            otherlv_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTransition1180); 
 
             		newLeafNode(otherlv_0, grammarAccess.getTransitionAccess().getEventEventCrossReference_0_0()); 
             	
@@ -1510,22 +1313,22 @@
 
             }
 
-            otherlv_1=(Token)match(input,23,FOLLOW_23_in_ruleTransition1328); 
+            otherlv_1=(Token)match(input,22,FOLLOW_22_in_ruleTransition1192); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getTransitionAccess().getEqualsSignGreaterThanSignKeyword_1());
                 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:664:1: ( (otherlv_2= RULE_ID ) )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:665:1: (otherlv_2= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:580:1: ( (otherlv_2= RULE_ID ) )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:581:1: (otherlv_2= RULE_ID )
             {
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:665:1: (otherlv_2= RULE_ID )
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:666:3: otherlv_2= RULE_ID
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:581:1: (otherlv_2= RULE_ID )
+            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:582:3: otherlv_2= RULE_ID
             {
 
             			if (current==null) {
             	            current = createModelElement(grammarAccess.getTransitionRule());
             	        }
                     
-            otherlv_2=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTransition1348); 
+            otherlv_2=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTransition1212); 
 
             		newLeafNode(otherlv_2, grammarAccess.getTransitionAccess().getStateStateCrossReference_2_0()); 
             	
@@ -1535,53 +1338,6 @@
 
             }
 
-            // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:677:2: (otherlv_3= 'debug' ( (lv_dbgName_4_0= RULE_ID ) ) )?
-            int alt16=2;
-            int LA16_0 = input.LA(1);
-
-            if ( (LA16_0==19) ) {
-                alt16=1;
-            }
-            switch (alt16) {
-                case 1 :
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:677:4: otherlv_3= 'debug' ( (lv_dbgName_4_0= RULE_ID ) )
-                    {
-                    otherlv_3=(Token)match(input,19,FOLLOW_19_in_ruleTransition1361); 
-
-                        	newLeafNode(otherlv_3, grammarAccess.getTransitionAccess().getDebugKeyword_3_0());
-                        
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:681:1: ( (lv_dbgName_4_0= RULE_ID ) )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:682:1: (lv_dbgName_4_0= RULE_ID )
-                    {
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:682:1: (lv_dbgName_4_0= RULE_ID )
-                    // ../org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/parser/antlr/internal/InternalStates.g:683:3: lv_dbgName_4_0= RULE_ID
-                    {
-                    lv_dbgName_4_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTransition1378); 
-
-                    			newLeafNode(lv_dbgName_4_0, grammarAccess.getTransitionAccess().getDbgNameIDTerminalRuleCall_3_1_0()); 
-                    		
-
-                    	        if (current==null) {
-                    	            current = createModelElement(grammarAccess.getTransitionRule());
-                    	        }
-                           		setWithLastConsumed(
-                           			current, 
-                           			"dbgName",
-                            		lv_dbgName_4_0, 
-                            		"ID");
-                    	    
-
-                    }
-
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
 
             }
 
@@ -1608,63 +1364,54 @@
 
     public static final BitSet FOLLOW_ruleModule_in_entryRuleModule75 = new BitSet(new long[]{0x0000000000000000L});
     public static final BitSet FOLLOW_EOF_in_entryRuleModule85 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_11_in_ruleModule122 = new BitSet(new long[]{0x0000000000000030L});
-    public static final BitSet FOLLOW_RULE_STRING_in_ruleModule141 = new BitSet(new long[]{0x0000000000003002L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleModule161 = new BitSet(new long[]{0x0000000000003002L});
-    public static final BitSet FOLLOW_ruleStatemachine_in_ruleModule190 = new BitSet(new long[]{0x0000000000003002L});
-    public static final BitSet FOLLOW_ruleStatemachine_in_entryRuleStatemachine227 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleStatemachine237 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_12_in_ruleStatemachine280 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_13_in_ruleStatemachine306 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleStatemachine323 = new BitSet(new long[]{0x000000000000C000L});
-    public static final BitSet FOLLOW_14_in_ruleStatemachine341 = new BitSet(new long[]{0x0000000000000040L});
-    public static final BitSet FOLLOW_RULE_INT_in_ruleStatemachine358 = new BitSet(new long[]{0x0000000000008000L});
-    public static final BitSet FOLLOW_15_in_ruleStatemachine377 = new BitSet(new long[]{0x0000000000010000L});
-    public static final BitSet FOLLOW_16_in_ruleStatemachine389 = new BitSet(new long[]{0x0000000000020020L});
-    public static final BitSet FOLLOW_ruleEvent_in_ruleStatemachine410 = new BitSet(new long[]{0x0000000000020020L});
-    public static final BitSet FOLLOW_17_in_ruleStatemachine423 = new BitSet(new long[]{0x0000000000341000L});
-    public static final BitSet FOLLOW_ruleState_in_ruleStatemachine444 = new BitSet(new long[]{0x0000000000341000L});
-    public static final BitSet FOLLOW_18_in_ruleStatemachine457 = new BitSet(new long[]{0x0000000000080002L});
-    public static final BitSet FOLLOW_19_in_ruleStatemachine470 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleStatemachine487 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleEvent_in_entryRuleEvent530 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleEvent540 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleEvent581 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleState_in_entryRuleState621 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleState631 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleSimpleState_in_ruleState678 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleCompoundState_in_ruleState705 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleSimpleState_in_entryRuleSimpleState740 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleSimpleState750 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_12_in_ruleSimpleState793 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_20_in_ruleSimpleState819 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleSimpleState836 = new BitSet(new long[]{0x000000000000C000L});
-    public static final BitSet FOLLOW_14_in_ruleSimpleState854 = new BitSet(new long[]{0x0000000000000040L});
-    public static final BitSet FOLLOW_RULE_INT_in_ruleSimpleState871 = new BitSet(new long[]{0x0000000000008000L});
-    public static final BitSet FOLLOW_15_in_ruleSimpleState890 = new BitSet(new long[]{0x0000000000040020L});
-    public static final BitSet FOLLOW_ruleTransition_in_ruleSimpleState911 = new BitSet(new long[]{0x0000000000040020L});
-    public static final BitSet FOLLOW_18_in_ruleSimpleState924 = new BitSet(new long[]{0x0000000000080002L});
-    public static final BitSet FOLLOW_19_in_ruleSimpleState937 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleSimpleState954 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleCompoundState_in_entryRuleCompoundState997 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleCompoundState1007 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_21_in_ruleCompoundState1044 = new BitSet(new long[]{0x0000000000101000L});
-    public static final BitSet FOLLOW_12_in_ruleCompoundState1062 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_20_in_ruleCompoundState1088 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleCompoundState1105 = new BitSet(new long[]{0x0000000000400000L});
-    public static final BitSet FOLLOW_22_in_ruleCompoundState1122 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleCompoundState1142 = new BitSet(new long[]{0x0000000000008000L});
-    public static final BitSet FOLLOW_15_in_ruleCompoundState1154 = new BitSet(new long[]{0x0000000000040020L});
-    public static final BitSet FOLLOW_ruleTransition_in_ruleCompoundState1175 = new BitSet(new long[]{0x0000000000040020L});
-    public static final BitSet FOLLOW_18_in_ruleCompoundState1188 = new BitSet(new long[]{0x0000000000080002L});
-    public static final BitSet FOLLOW_19_in_ruleCompoundState1201 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleCompoundState1218 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleTransition_in_entryRuleTransition1261 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleTransition1271 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleTransition1316 = new BitSet(new long[]{0x0000000000800000L});
-    public static final BitSet FOLLOW_23_in_ruleTransition1328 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleTransition1348 = new BitSet(new long[]{0x0000000000080002L});
-    public static final BitSet FOLLOW_19_in_ruleTransition1361 = new BitSet(new long[]{0x0000000000000020L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleTransition1378 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_11_in_ruleModule122 = new BitSet(new long[]{0x0000000000000010L});
+    public static final BitSet FOLLOW_RULE_STRING_in_ruleModule139 = new BitSet(new long[]{0x0000000000003002L});
+    public static final BitSet FOLLOW_ruleStatemachine_in_ruleModule165 = new BitSet(new long[]{0x0000000000003002L});
+    public static final BitSet FOLLOW_ruleStatemachine_in_entryRuleStatemachine202 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleStatemachine212 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_12_in_ruleStatemachine255 = new BitSet(new long[]{0x0000000000002000L});
+    public static final BitSet FOLLOW_13_in_ruleStatemachine281 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_RULE_ID_in_ruleStatemachine298 = new BitSet(new long[]{0x000000000000C000L});
+    public static final BitSet FOLLOW_14_in_ruleStatemachine316 = new BitSet(new long[]{0x0000000000000040L});
+    public static final BitSet FOLLOW_RULE_INT_in_ruleStatemachine333 = new BitSet(new long[]{0x0000000000008000L});
+    public static final BitSet FOLLOW_15_in_ruleStatemachine352 = new BitSet(new long[]{0x0000000000010000L});
+    public static final BitSet FOLLOW_16_in_ruleStatemachine364 = new BitSet(new long[]{0x0000000000020020L});
+    public static final BitSet FOLLOW_ruleEvent_in_ruleStatemachine385 = new BitSet(new long[]{0x0000000000020020L});
+    public static final BitSet FOLLOW_17_in_ruleStatemachine398 = new BitSet(new long[]{0x00000000001C1000L});
+    public static final BitSet FOLLOW_ruleState_in_ruleStatemachine419 = new BitSet(new long[]{0x00000000001C1000L});
+    public static final BitSet FOLLOW_18_in_ruleStatemachine432 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleEvent_in_entryRuleEvent468 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleEvent478 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_ruleEvent519 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleState_in_entryRuleState559 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleState569 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSimpleState_in_ruleState616 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleCompoundState_in_ruleState643 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSimpleState_in_entryRuleSimpleState678 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleSimpleState688 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_12_in_ruleSimpleState731 = new BitSet(new long[]{0x0000000000080000L});
+    public static final BitSet FOLLOW_19_in_ruleSimpleState757 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_RULE_ID_in_ruleSimpleState774 = new BitSet(new long[]{0x000000000000C000L});
+    public static final BitSet FOLLOW_14_in_ruleSimpleState792 = new BitSet(new long[]{0x0000000000000040L});
+    public static final BitSet FOLLOW_RULE_INT_in_ruleSimpleState809 = new BitSet(new long[]{0x0000000000008000L});
+    public static final BitSet FOLLOW_15_in_ruleSimpleState828 = new BitSet(new long[]{0x0000000000040020L});
+    public static final BitSet FOLLOW_ruleTransition_in_ruleSimpleState849 = new BitSet(new long[]{0x0000000000040020L});
+    public static final BitSet FOLLOW_18_in_ruleSimpleState862 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleCompoundState_in_entryRuleCompoundState898 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleCompoundState908 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_20_in_ruleCompoundState945 = new BitSet(new long[]{0x0000000000081000L});
+    public static final BitSet FOLLOW_12_in_ruleCompoundState963 = new BitSet(new long[]{0x0000000000080000L});
+    public static final BitSet FOLLOW_19_in_ruleCompoundState989 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_RULE_ID_in_ruleCompoundState1006 = new BitSet(new long[]{0x0000000000200000L});
+    public static final BitSet FOLLOW_21_in_ruleCompoundState1023 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_RULE_ID_in_ruleCompoundState1043 = new BitSet(new long[]{0x0000000000008000L});
+    public static final BitSet FOLLOW_15_in_ruleCompoundState1055 = new BitSet(new long[]{0x0000000000040020L});
+    public static final BitSet FOLLOW_ruleTransition_in_ruleCompoundState1076 = new BitSet(new long[]{0x0000000000040020L});
+    public static final BitSet FOLLOW_18_in_ruleCompoundState1089 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleTransition_in_entryRuleTransition1125 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleTransition1135 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_ruleTransition1180 = new BitSet(new long[]{0x0000000000400000L});
+    public static final BitSet FOLLOW_22_in_ruleTransition1192 = new BitSet(new long[]{0x0000000000000020L});
+    public static final BitSet FOLLOW_RULE_ID_in_ruleTransition1212 = new BitSet(new long[]{0x0000000000000002L});
 
 }
\ No newline at end of file
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/services/StatesGrammarAccess.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/services/StatesGrammarAccess.java
index 29fae42..ad81e6c 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/services/StatesGrammarAccess.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/services/StatesGrammarAccess.java
@@ -22,33 +22,25 @@
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Keyword cModuleKeyword_0 = (Keyword)cGroup.eContents().get(0);
 		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final Alternatives cNameAlternatives_1_0 = (Alternatives)cNameAssignment_1.eContents().get(0);
-		private final RuleCall cNameSTRINGTerminalRuleCall_1_0_0 = (RuleCall)cNameAlternatives_1_0.eContents().get(0);
-		private final RuleCall cNameIDTerminalRuleCall_1_0_1 = (RuleCall)cNameAlternatives_1_0.eContents().get(1);
+		private final RuleCall cNameSTRINGTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
 		private final Assignment cMachinesAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cMachinesStatemachineParserRuleCall_2_0 = (RuleCall)cMachinesAssignment_2.eContents().get(0);
 		
 		//Module:
-		//	"module" name=(STRING | ID) machines+=Statemachine*;
+		//	"module" name=STRING machines+=Statemachine*;
 		public ParserRule getRule() { return rule; }
 
-		//"module" name=(STRING | ID) machines+=Statemachine*
+		//"module" name=STRING machines+=Statemachine*
 		public Group getGroup() { return cGroup; }
 
 		//"module"
 		public Keyword getModuleKeyword_0() { return cModuleKeyword_0; }
 
-		//name=(STRING | ID)
+		//name=STRING
 		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
 
-		//STRING | ID
-		public Alternatives getNameAlternatives_1_0() { return cNameAlternatives_1_0; }
-
 		//STRING
-		public RuleCall getNameSTRINGTerminalRuleCall_1_0_0() { return cNameSTRINGTerminalRuleCall_1_0_0; }
-
-		//ID
-		public RuleCall getNameIDTerminalRuleCall_1_0_1() { return cNameIDTerminalRuleCall_1_0_1; }
+		public RuleCall getNameSTRINGTerminalRuleCall_1_0() { return cNameSTRINGTerminalRuleCall_1_0; }
 
 		//machines+=Statemachine*
 		public Assignment getMachinesAssignment_2() { return cMachinesAssignment_2; }
@@ -77,18 +69,12 @@
 		private final Assignment cStatesAssignment_8 = (Assignment)cGroup.eContents().get(8);
 		private final RuleCall cStatesStateParserRuleCall_8_0 = (RuleCall)cStatesAssignment_8.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9);
-		private final Group cGroup_10 = (Group)cGroup.eContents().get(10);
-		private final Keyword cDebugKeyword_10_0 = (Keyword)cGroup_10.eContents().get(0);
-		private final Assignment cDbgNameAssignment_10_1 = (Assignment)cGroup_10.eContents().get(1);
-		private final RuleCall cDbgNameIDTerminalRuleCall_10_1_0 = (RuleCall)cDbgNameAssignment_10_1.eContents().get(0);
 		
 		//Statemachine:
-		//	initial?="initial"? "statemachine" name=ID ("value" value=INT)? "{" "events" events+=Event* ";" states+=State* "}"
-		//	("debug" dbgName=ID)?;
+		//	initial?="initial"? "statemachine" name=ID ("value" value=INT)? "{" "events" events+=Event* ";" states+=State* "}";
 		public ParserRule getRule() { return rule; }
 
 		//initial?="initial"? "statemachine" name=ID ("value" value=INT)? "{" "events" events+=Event* ";" states+=State* "}"
-		//("debug" dbgName=ID)?
 		public Group getGroup() { return cGroup; }
 
 		//initial?="initial"?
@@ -141,18 +127,6 @@
 
 		//"}"
 		public Keyword getRightCurlyBracketKeyword_9() { return cRightCurlyBracketKeyword_9; }
-
-		//("debug" dbgName=ID)?
-		public Group getGroup_10() { return cGroup_10; }
-
-		//"debug"
-		public Keyword getDebugKeyword_10_0() { return cDebugKeyword_10_0; }
-
-		//dbgName=ID
-		public Assignment getDbgNameAssignment_10_1() { return cDbgNameAssignment_10_1; }
-
-		//ID
-		public RuleCall getDbgNameIDTerminalRuleCall_10_1_0() { return cDbgNameIDTerminalRuleCall_10_1_0; }
 	}
 
 	public class EventElements extends AbstractParserRuleElementFinder {
@@ -207,16 +181,12 @@
 		private final Assignment cTransitionsAssignment_5 = (Assignment)cGroup.eContents().get(5);
 		private final RuleCall cTransitionsTransitionParserRuleCall_5_0 = (RuleCall)cTransitionsAssignment_5.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
-		private final Group cGroup_7 = (Group)cGroup.eContents().get(7);
-		private final Keyword cDebugKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0);
-		private final Assignment cDbgNameAssignment_7_1 = (Assignment)cGroup_7.eContents().get(1);
-		private final RuleCall cDbgNameIDTerminalRuleCall_7_1_0 = (RuleCall)cDbgNameAssignment_7_1.eContents().get(0);
 		
 		//SimpleState:
-		//	initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}" ("debug" dbgName=ID)?;
+		//	initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}";
 		public ParserRule getRule() { return rule; }
 
-		//initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}" ("debug" dbgName=ID)?
+		//initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}"
 		public Group getGroup() { return cGroup; }
 
 		//initial?="initial"?
@@ -257,18 +227,6 @@
 
 		//"}"
 		public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
-
-		//("debug" dbgName=ID)?
-		public Group getGroup_7() { return cGroup_7; }
-
-		//"debug"
-		public Keyword getDebugKeyword_7_0() { return cDebugKeyword_7_0; }
-
-		//dbgName=ID
-		public Assignment getDbgNameAssignment_7_1() { return cDbgNameAssignment_7_1; }
-
-		//ID
-		public RuleCall getDbgNameIDTerminalRuleCall_7_1_0() { return cDbgNameIDTerminalRuleCall_7_1_0; }
 	}
 
 	public class CompoundStateElements extends AbstractParserRuleElementFinder {
@@ -288,18 +246,12 @@
 		private final Assignment cTransitionsAssignment_7 = (Assignment)cGroup.eContents().get(7);
 		private final RuleCall cTransitionsTransitionParserRuleCall_7_0 = (RuleCall)cTransitionsAssignment_7.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
-		private final Group cGroup_9 = (Group)cGroup.eContents().get(9);
-		private final Keyword cDebugKeyword_9_0 = (Keyword)cGroup_9.eContents().get(0);
-		private final Assignment cDbgNameAssignment_9_1 = (Assignment)cGroup_9.eContents().get(1);
-		private final RuleCall cDbgNameIDTerminalRuleCall_9_1_0 = (RuleCall)cDbgNameAssignment_9_1.eContents().get(0);
 		
 		//CompoundState:
-		//	"compound" initial?="initial"? "state" name=ID "machine" machine=[Statemachine] "{" transitions+=Transition* "}"
-		//	("debug" dbgName=ID)?;
+		//	"compound" initial?="initial"? "state" name=ID "machine" machine=[Statemachine] "{" transitions+=Transition* "}";
 		public ParserRule getRule() { return rule; }
 
 		//"compound" initial?="initial"? "state" name=ID "machine" machine=[Statemachine] "{" transitions+=Transition* "}"
-		//("debug" dbgName=ID)?
 		public Group getGroup() { return cGroup; }
 
 		//"compound"
@@ -343,18 +295,6 @@
 
 		//"}"
 		public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; }
-
-		//("debug" dbgName=ID)?
-		public Group getGroup_9() { return cGroup_9; }
-
-		//"debug"
-		public Keyword getDebugKeyword_9_0() { return cDebugKeyword_9_0; }
-
-		//dbgName=ID
-		public Assignment getDbgNameAssignment_9_1() { return cDbgNameAssignment_9_1; }
-
-		//ID
-		public RuleCall getDbgNameIDTerminalRuleCall_9_1_0() { return cDbgNameIDTerminalRuleCall_9_1_0; }
 	}
 
 	public class TransitionElements extends AbstractParserRuleElementFinder {
@@ -367,16 +307,12 @@
 		private final Assignment cStateAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final CrossReference cStateStateCrossReference_2_0 = (CrossReference)cStateAssignment_2.eContents().get(0);
 		private final RuleCall cStateStateIDTerminalRuleCall_2_0_1 = (RuleCall)cStateStateCrossReference_2_0.eContents().get(1);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Keyword cDebugKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
-		private final Assignment cDbgNameAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
-		private final RuleCall cDbgNameIDTerminalRuleCall_3_1_0 = (RuleCall)cDbgNameAssignment_3_1.eContents().get(0);
 		
 		//Transition:
-		//	event=[Event] "=>" state=[State] ("debug" dbgName=ID)?;
+		//	event=[Event] "=>" state=[State];
 		public ParserRule getRule() { return rule; }
 
-		//event=[Event] "=>" state=[State] ("debug" dbgName=ID)?
+		//event=[Event] "=>" state=[State]
 		public Group getGroup() { return cGroup; }
 
 		//event=[Event]
@@ -399,18 +335,6 @@
 
 		//ID
 		public RuleCall getStateStateIDTerminalRuleCall_2_0_1() { return cStateStateIDTerminalRuleCall_2_0_1; }
-
-		//("debug" dbgName=ID)?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//"debug"
-		public Keyword getDebugKeyword_3_0() { return cDebugKeyword_3_0; }
-
-		//dbgName=ID
-		public Assignment getDbgNameAssignment_3_1() { return cDbgNameAssignment_3_1; }
-
-		//ID
-		public RuleCall getDbgNameIDTerminalRuleCall_3_1_0() { return cDbgNameIDTerminalRuleCall_3_1_0; }
 	}
 	
 	
@@ -444,7 +368,7 @@
 
 	
 	//Module:
-	//	"module" name=(STRING | ID) machines+=Statemachine*;
+	//	"module" name=STRING machines+=Statemachine*;
 	public ModuleElements getModuleAccess() {
 		return (pModule != null) ? pModule : (pModule = new ModuleElements());
 	}
@@ -454,8 +378,7 @@
 	}
 
 	//Statemachine:
-	//	initial?="initial"? "statemachine" name=ID ("value" value=INT)? "{" "events" events+=Event* ";" states+=State* "}"
-	//	("debug" dbgName=ID)?;
+	//	initial?="initial"? "statemachine" name=ID ("value" value=INT)? "{" "events" events+=Event* ";" states+=State* "}";
 	public StatemachineElements getStatemachineAccess() {
 		return (pStatemachine != null) ? pStatemachine : (pStatemachine = new StatemachineElements());
 	}
@@ -485,7 +408,7 @@
 	}
 
 	//SimpleState:
-	//	initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}" ("debug" dbgName=ID)?;
+	//	initial?="initial"? "state" name=ID ("value" value=INT)? "{" transitions+=Transition* "}";
 	public SimpleStateElements getSimpleStateAccess() {
 		return (pSimpleState != null) ? pSimpleState : (pSimpleState = new SimpleStateElements());
 	}
@@ -495,8 +418,7 @@
 	}
 
 	//CompoundState:
-	//	"compound" initial?="initial"? "state" name=ID "machine" machine=[Statemachine] "{" transitions+=Transition* "}"
-	//	("debug" dbgName=ID)?;
+	//	"compound" initial?="initial"? "state" name=ID "machine" machine=[Statemachine] "{" transitions+=Transition* "}";
 	public CompoundStateElements getCompoundStateAccess() {
 		return (pCompoundState != null) ? pCompoundState : (pCompoundState = new CompoundStateElements());
 	}
@@ -506,7 +428,7 @@
 	}
 
 	//Transition:
-	//	event=[Event] "=>" state=[State] ("debug" dbgName=ID)?;
+	//	event=[Event] "=>" state=[State];
 	public TransitionElements getTransitionAccess() {
 		return (pTransition != null) ? pTransition : (pTransition = new TransitionElements());
 	}
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/State.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/State.java
index a8e1ae6..c9f6728 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/State.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/State.java
@@ -21,7 +21,6 @@
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.State#isInitial <em>Initial</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.State#getName <em>Name</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.State#getTransitions <em>Transitions</em>}</li>
- *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.State#getDbgName <em>Dbg Name</em>}</li>
  * </ul>
  * </p>
  *
@@ -99,30 +98,4 @@
    */
   EList<Transition> getTransitions();
 
-  /**
-   * Returns the value of the '<em><b>Dbg Name</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Dbg Name</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Dbg Name</em>' attribute.
-   * @see #setDbgName(String)
-   * @see org.eclipse.ocl.tutorial.eclipsecon2011.states.StatesPackage#getState_DbgName()
-   * @model
-   * @generated
-   */
-  String getDbgName();
-
-  /**
-   * Sets the value of the '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.State#getDbgName <em>Dbg Name</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Dbg Name</em>' attribute.
-   * @see #getDbgName()
-   * @generated
-   */
-  void setDbgName(String value);
-
 } // State
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/Statemachine.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/Statemachine.java
index 50e9747..4c4d0cc 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/Statemachine.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/Statemachine.java
@@ -23,7 +23,6 @@
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Statemachine#getValue <em>Value</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Statemachine#getEvents <em>Events</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Statemachine#getStates <em>States</em>}</li>
- *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Statemachine#getDbgName <em>Dbg Name</em>}</li>
  * </ul>
  * </p>
  *
@@ -143,30 +142,4 @@
    */
   EList<State> getStates();
 
-  /**
-   * Returns the value of the '<em><b>Dbg Name</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Dbg Name</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Dbg Name</em>' attribute.
-   * @see #setDbgName(String)
-   * @see org.eclipse.ocl.tutorial.eclipsecon2011.states.StatesPackage#getStatemachine_DbgName()
-   * @model
-   * @generated
-   */
-  String getDbgName();
-
-  /**
-   * Sets the value of the '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Statemachine#getDbgName <em>Dbg Name</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Dbg Name</em>' attribute.
-   * @see #getDbgName()
-   * @generated
-   */
-  void setDbgName(String value);
-
 } // Statemachine
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/StatesPackage.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/StatesPackage.java
index b8c11f3..2727f62 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/StatesPackage.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/StatesPackage.java
@@ -153,22 +153,13 @@
   int STATEMACHINE__STATES = 4;
 
   /**
-   * The feature id for the '<em><b>Dbg Name</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
-  int STATEMACHINE__DBG_NAME = 5;
-
-  /**
    * The number of structural features of the '<em>Statemachine</em>' class.
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
    * @generated
    * @ordered
    */
-  int STATEMACHINE_FEATURE_COUNT = 6;
+  int STATEMACHINE_FEATURE_COUNT = 5;
 
   /**
    * The meta object id for the '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.EventImpl <em>Event</em>}' class.
@@ -236,22 +227,13 @@
   int STATE__TRANSITIONS = 2;
 
   /**
-   * The feature id for the '<em><b>Dbg Name</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
-  int STATE__DBG_NAME = 3;
-
-  /**
    * The number of structural features of the '<em>State</em>' class.
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
    * @generated
    * @ordered
    */
-  int STATE_FEATURE_COUNT = 4;
+  int STATE_FEATURE_COUNT = 3;
 
   /**
    * The meta object id for the '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.SimpleStateImpl <em>Simple State</em>}' class.
@@ -291,15 +273,6 @@
   int SIMPLE_STATE__TRANSITIONS = STATE__TRANSITIONS;
 
   /**
-   * The feature id for the '<em><b>Dbg Name</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
-  int SIMPLE_STATE__DBG_NAME = STATE__DBG_NAME;
-
-  /**
    * The feature id for the '<em><b>Value</b></em>' attribute.
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
@@ -355,15 +328,6 @@
   int COMPOUND_STATE__TRANSITIONS = STATE__TRANSITIONS;
 
   /**
-   * The feature id for the '<em><b>Dbg Name</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
-  int COMPOUND_STATE__DBG_NAME = STATE__DBG_NAME;
-
-  /**
    * The feature id for the '<em><b>Machine</b></em>' reference.
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
@@ -410,22 +374,13 @@
   int TRANSITION__STATE = 1;
 
   /**
-   * The feature id for the '<em><b>Dbg Name</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
-  int TRANSITION__DBG_NAME = 2;
-
-  /**
    * The number of structural features of the '<em>Transition</em>' class.
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
    * @generated
    * @ordered
    */
-  int TRANSITION_FEATURE_COUNT = 3;
+  int TRANSITION_FEATURE_COUNT = 2;
 
 
   /**
@@ -526,17 +481,6 @@
   EReference getStatemachine_States();
 
   /**
-   * Returns the meta object for the attribute '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Statemachine#getDbgName <em>Dbg Name</em>}'.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @return the meta object for the attribute '<em>Dbg Name</em>'.
-   * @see org.eclipse.ocl.tutorial.eclipsecon2011.states.Statemachine#getDbgName()
-   * @see #getStatemachine()
-   * @generated
-   */
-  EAttribute getStatemachine_DbgName();
-
-  /**
    * Returns the meta object for class '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Event <em>Event</em>}'.
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
@@ -601,17 +545,6 @@
   EReference getState_Transitions();
 
   /**
-   * Returns the meta object for the attribute '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.State#getDbgName <em>Dbg Name</em>}'.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @return the meta object for the attribute '<em>Dbg Name</em>'.
-   * @see org.eclipse.ocl.tutorial.eclipsecon2011.states.State#getDbgName()
-   * @see #getState()
-   * @generated
-   */
-  EAttribute getState_DbgName();
-
-  /**
    * Returns the meta object for class '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.SimpleState <em>Simple State</em>}'.
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
@@ -686,17 +619,6 @@
   EReference getTransition_State();
 
   /**
-   * Returns the meta object for the attribute '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Transition#getDbgName <em>Dbg Name</em>}'.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @return the meta object for the attribute '<em>Dbg Name</em>'.
-   * @see org.eclipse.ocl.tutorial.eclipsecon2011.states.Transition#getDbgName()
-   * @see #getTransition()
-   * @generated
-   */
-  EAttribute getTransition_DbgName();
-
-  /**
    * Returns the factory that creates the instances of the model.
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
@@ -796,14 +718,6 @@
     EReference STATEMACHINE__STATES = eINSTANCE.getStatemachine_States();
 
     /**
-     * The meta object literal for the '<em><b>Dbg Name</b></em>' attribute feature.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    EAttribute STATEMACHINE__DBG_NAME = eINSTANCE.getStatemachine_DbgName();
-
-    /**
      * The meta object literal for the '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.EventImpl <em>Event</em>}' class.
      * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
@@ -856,14 +770,6 @@
     EReference STATE__TRANSITIONS = eINSTANCE.getState_Transitions();
 
     /**
-     * The meta object literal for the '<em><b>Dbg Name</b></em>' attribute feature.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    EAttribute STATE__DBG_NAME = eINSTANCE.getState_DbgName();
-
-    /**
      * The meta object literal for the '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.SimpleStateImpl <em>Simple State</em>}' class.
      * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
@@ -925,14 +831,6 @@
      */
     EReference TRANSITION__STATE = eINSTANCE.getTransition_State();
 
-    /**
-     * The meta object literal for the '<em><b>Dbg Name</b></em>' attribute feature.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    EAttribute TRANSITION__DBG_NAME = eINSTANCE.getTransition_DbgName();
-
   }
 
 } //StatesPackage
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/Transition.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/Transition.java
index f208a06..98a1923 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/Transition.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/Transition.java
@@ -18,7 +18,6 @@
  * <ul>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Transition#getEvent <em>Event</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Transition#getState <em>State</em>}</li>
- *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Transition#getDbgName <em>Dbg Name</em>}</li>
  * </ul>
  * </p>
  *
@@ -80,30 +79,4 @@
    */
   void setState(State value);
 
-  /**
-   * Returns the value of the '<em><b>Dbg Name</b></em>' attribute.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Dbg Name</em>' attribute isn't clear,
-   * there really should be more of a description here...
-   * </p>
-   * <!-- end-user-doc -->
-   * @return the value of the '<em>Dbg Name</em>' attribute.
-   * @see #setDbgName(String)
-   * @see org.eclipse.ocl.tutorial.eclipsecon2011.states.StatesPackage#getTransition_DbgName()
-   * @model
-   * @generated
-   */
-  String getDbgName();
-
-  /**
-   * Sets the value of the '{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.Transition#getDbgName <em>Dbg Name</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Dbg Name</em>' attribute.
-   * @see #getDbgName()
-   * @generated
-   */
-  void setDbgName(String value);
-
 } // Transition
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/CompoundStateImpl.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/CompoundStateImpl.java
index 02fd71a..a697bb6 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/CompoundStateImpl.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/CompoundStateImpl.java
@@ -173,20 +173,4 @@
     return super.eIsSet(featureID);
   }
 
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  @Override
-  public String toString()
-  {
-    if (eIsProxy()) return super.toString();
-
-    StringBuffer result = new StringBuffer();
-    result.append("CompoundState: ");
-    result.append(name);
-    return result.toString();
-  }
-
 } //CompoundStateImpl
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/EventImpl.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/EventImpl.java
index 02346d9..1099619 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/EventImpl.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/EventImpl.java
@@ -164,16 +164,17 @@
   /**
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated NOT
+   * @generated
    */
   @Override
   public String toString()
   {
     if (eIsProxy()) return super.toString();
 
-    StringBuffer result = new StringBuffer();
-    result.append("Event: ");
+    StringBuffer result = new StringBuffer(super.toString());
+    result.append(" (name: ");
     result.append(name);
+    result.append(')');
     return result.toString();
   }
 
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/SimpleStateImpl.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/SimpleStateImpl.java
index 5112ada..6a6344e 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/SimpleStateImpl.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/SimpleStateImpl.java
@@ -163,16 +163,17 @@
   /**
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated NOT
+   * @generated
    */
   @Override
   public String toString()
   {
     if (eIsProxy()) return super.toString();
 
-    StringBuffer result = new StringBuffer();
-    result.append("SimpleState: ");
-    result.append(name);
+    StringBuffer result = new StringBuffer(super.toString());
+    result.append(" (value: ");
+    result.append(value);
+    result.append(')');
     return result.toString();
   }
 
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StateImpl.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StateImpl.java
index e5532d5..e0a65fb 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StateImpl.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StateImpl.java
@@ -36,7 +36,6 @@
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.StateImpl#isInitial <em>Initial</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.StateImpl#getName <em>Name</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.StateImpl#getTransitions <em>Transitions</em>}</li>
- *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.StateImpl#getDbgName <em>Dbg Name</em>}</li>
  * </ul>
  * </p>
  *
@@ -95,26 +94,6 @@
   protected EList<Transition> transitions;
 
   /**
-   * The default value of the '{@link #getDbgName() <em>Dbg Name</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getDbgName()
-   * @generated
-   * @ordered
-   */
-  protected static final String DBG_NAME_EDEFAULT = null;
-
-  /**
-   * The cached value of the '{@link #getDbgName() <em>Dbg Name</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getDbgName()
-   * @generated
-   * @ordered
-   */
-  protected String dbgName = DBG_NAME_EDEFAULT;
-
-  /**
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
    * @generated
@@ -200,29 +179,6 @@
    * <!-- end-user-doc -->
    * @generated
    */
-  public String getDbgName()
-  {
-    return dbgName;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setDbgName(String newDbgName)
-  {
-    String oldDbgName = dbgName;
-    dbgName = newDbgName;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StatesPackage.STATE__DBG_NAME, oldDbgName, dbgName));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
   @Override
   public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
   {
@@ -250,8 +206,6 @@
         return getName();
       case StatesPackage.STATE__TRANSITIONS:
         return getTransitions();
-      case StatesPackage.STATE__DBG_NAME:
-        return getDbgName();
     }
     return super.eGet(featureID, resolve, coreType);
   }
@@ -277,9 +231,6 @@
         getTransitions().clear();
         getTransitions().addAll((Collection<? extends Transition>)newValue);
         return;
-      case StatesPackage.STATE__DBG_NAME:
-        setDbgName((String)newValue);
-        return;
     }
     super.eSet(featureID, newValue);
   }
@@ -303,9 +254,6 @@
       case StatesPackage.STATE__TRANSITIONS:
         getTransitions().clear();
         return;
-      case StatesPackage.STATE__DBG_NAME:
-        setDbgName(DBG_NAME_EDEFAULT);
-        return;
     }
     super.eUnset(featureID);
   }
@@ -326,8 +274,6 @@
         return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
       case StatesPackage.STATE__TRANSITIONS:
         return transitions != null && !transitions.isEmpty();
-      case StatesPackage.STATE__DBG_NAME:
-        return DBG_NAME_EDEFAULT == null ? dbgName != null : !DBG_NAME_EDEFAULT.equals(dbgName);
     }
     return super.eIsSet(featureID);
   }
@@ -347,8 +293,6 @@
     result.append(initial);
     result.append(", name: ");
     result.append(name);
-    result.append(", dbgName: ");
-    result.append(dbgName);
     result.append(')');
     return result.toString();
   }
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StatemachineImpl.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StatemachineImpl.java
index 72aca6f..5c1fdf5 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StatemachineImpl.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StatemachineImpl.java
@@ -39,7 +39,6 @@
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.StatemachineImpl#getValue <em>Value</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.StatemachineImpl#getEvents <em>Events</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.StatemachineImpl#getStates <em>States</em>}</li>
- *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.StatemachineImpl#getDbgName <em>Dbg Name</em>}</li>
  * </ul>
  * </p>
  *
@@ -128,26 +127,6 @@
   protected EList<State> states;
 
   /**
-   * The default value of the '{@link #getDbgName() <em>Dbg Name</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getDbgName()
-   * @generated
-   * @ordered
-   */
-  protected static final String DBG_NAME_EDEFAULT = null;
-
-  /**
-   * The cached value of the '{@link #getDbgName() <em>Dbg Name</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getDbgName()
-   * @generated
-   * @ordered
-   */
-  protected String dbgName = DBG_NAME_EDEFAULT;
-
-  /**
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
    * @generated
@@ -270,29 +249,6 @@
    * <!-- end-user-doc -->
    * @generated
    */
-  public String getDbgName()
-  {
-    return dbgName;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setDbgName(String newDbgName)
-  {
-    String oldDbgName = dbgName;
-    dbgName = newDbgName;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StatesPackage.STATEMACHINE__DBG_NAME, oldDbgName, dbgName));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
   @Override
   public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
   {
@@ -326,8 +282,6 @@
         return getEvents();
       case StatesPackage.STATEMACHINE__STATES:
         return getStates();
-      case StatesPackage.STATEMACHINE__DBG_NAME:
-        return getDbgName();
     }
     return super.eGet(featureID, resolve, coreType);
   }
@@ -360,9 +314,6 @@
         getStates().clear();
         getStates().addAll((Collection<? extends State>)newValue);
         return;
-      case StatesPackage.STATEMACHINE__DBG_NAME:
-        setDbgName((String)newValue);
-        return;
     }
     super.eSet(featureID, newValue);
   }
@@ -392,9 +343,6 @@
       case StatesPackage.STATEMACHINE__STATES:
         getStates().clear();
         return;
-      case StatesPackage.STATEMACHINE__DBG_NAME:
-        setDbgName(DBG_NAME_EDEFAULT);
-        return;
     }
     super.eUnset(featureID);
   }
@@ -419,8 +367,6 @@
         return events != null && !events.isEmpty();
       case StatesPackage.STATEMACHINE__STATES:
         return states != null && !states.isEmpty();
-      case StatesPackage.STATEMACHINE__DBG_NAME:
-        return DBG_NAME_EDEFAULT == null ? dbgName != null : !DBG_NAME_EDEFAULT.equals(dbgName);
     }
     return super.eIsSet(featureID);
   }
@@ -442,8 +388,6 @@
     result.append(name);
     result.append(", value: ");
     result.append(value);
-    result.append(", dbgName: ");
-    result.append(dbgName);
     result.append(')');
     return result.toString();
   }
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StatesPackageImpl.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StatesPackageImpl.java
index 639a2af..3eafd14 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StatesPackageImpl.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/StatesPackageImpl.java
@@ -238,16 +238,6 @@
    * <!-- end-user-doc -->
    * @generated
    */
-  public EAttribute getStatemachine_DbgName()
-  {
-    return (EAttribute)statemachineEClass.getEStructuralFeatures().get(5);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
   public EClass getEvent()
   {
     return eventEClass;
@@ -308,16 +298,6 @@
    * <!-- end-user-doc -->
    * @generated
    */
-  public EAttribute getState_DbgName()
-  {
-    return (EAttribute)stateEClass.getEStructuralFeatures().get(3);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
   public EClass getSimpleState()
   {
     return simpleStateEClass;
@@ -388,16 +368,6 @@
    * <!-- end-user-doc -->
    * @generated
    */
-  public EAttribute getTransition_DbgName()
-  {
-    return (EAttribute)transitionEClass.getEStructuralFeatures().get(2);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
   public StatesFactory getStatesFactory()
   {
     return (StatesFactory)getEFactoryInstance();
@@ -433,7 +403,6 @@
     createEAttribute(statemachineEClass, STATEMACHINE__VALUE);
     createEReference(statemachineEClass, STATEMACHINE__EVENTS);
     createEReference(statemachineEClass, STATEMACHINE__STATES);
-    createEAttribute(statemachineEClass, STATEMACHINE__DBG_NAME);
 
     eventEClass = createEClass(EVENT);
     createEAttribute(eventEClass, EVENT__NAME);
@@ -442,7 +411,6 @@
     createEAttribute(stateEClass, STATE__INITIAL);
     createEAttribute(stateEClass, STATE__NAME);
     createEReference(stateEClass, STATE__TRANSITIONS);
-    createEAttribute(stateEClass, STATE__DBG_NAME);
 
     simpleStateEClass = createEClass(SIMPLE_STATE);
     createEAttribute(simpleStateEClass, SIMPLE_STATE__VALUE);
@@ -453,7 +421,6 @@
     transitionEClass = createEClass(TRANSITION);
     createEReference(transitionEClass, TRANSITION__EVENT);
     createEReference(transitionEClass, TRANSITION__STATE);
-    createEAttribute(transitionEClass, TRANSITION__DBG_NAME);
   }
 
   /**
@@ -499,7 +466,6 @@
     initEAttribute(getStatemachine_Value(), ecorePackage.getEInt(), "value", null, 0, 1, Statemachine.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
     initEReference(getStatemachine_Events(), this.getEvent(), null, "events", null, 0, -1, Statemachine.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
     initEReference(getStatemachine_States(), this.getState(), null, "states", null, 0, -1, Statemachine.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-    initEAttribute(getStatemachine_DbgName(), ecorePackage.getEString(), "dbgName", null, 0, 1, Statemachine.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
     initEClass(eventEClass, Event.class, "Event", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
     initEAttribute(getEvent_Name(), ecorePackage.getEString(), "name", null, 0, 1, Event.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -508,7 +474,6 @@
     initEAttribute(getState_Initial(), ecorePackage.getEBoolean(), "initial", null, 0, 1, State.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
     initEAttribute(getState_Name(), ecorePackage.getEString(), "name", null, 0, 1, State.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
     initEReference(getState_Transitions(), this.getTransition(), null, "transitions", null, 0, -1, State.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-    initEAttribute(getState_DbgName(), ecorePackage.getEString(), "dbgName", null, 0, 1, State.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
     initEClass(simpleStateEClass, SimpleState.class, "SimpleState", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
     initEAttribute(getSimpleState_Value(), ecorePackage.getEInt(), "value", null, 0, 1, SimpleState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -519,7 +484,6 @@
     initEClass(transitionEClass, Transition.class, "Transition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
     initEReference(getTransition_Event(), this.getEvent(), null, "event", null, 0, 1, Transition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
     initEReference(getTransition_State(), this.getState(), null, "state", null, 0, 1, Transition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-    initEAttribute(getTransition_DbgName(), ecorePackage.getEString(), "dbgName", null, 0, 1, Transition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
     // Create resource
     createResource(eNS_URI);
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/TransitionImpl.java b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/TransitionImpl.java
index 052b0e2..63d922c 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/TransitionImpl.java
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src-gen/org/eclipse/ocl/tutorial/eclipsecon2011/states/impl/TransitionImpl.java
@@ -28,7 +28,6 @@
  * <ul>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.TransitionImpl#getEvent <em>Event</em>}</li>
  *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.TransitionImpl#getState <em>State</em>}</li>
- *   <li>{@link org.eclipse.ocl.tutorial.eclipsecon2011.states.impl.TransitionImpl#getDbgName <em>Dbg Name</em>}</li>
  * </ul>
  * </p>
  *
@@ -57,26 +56,6 @@
   protected State state;
 
   /**
-   * The default value of the '{@link #getDbgName() <em>Dbg Name</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getDbgName()
-   * @generated
-   * @ordered
-   */
-  protected static final String DBG_NAME_EDEFAULT = null;
-
-  /**
-   * The cached value of the '{@link #getDbgName() <em>Dbg Name</em>}' attribute.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getDbgName()
-   * @generated
-   * @ordered
-   */
-  protected String dbgName = DBG_NAME_EDEFAULT;
-
-  /**
    * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
    * @generated
@@ -188,29 +167,6 @@
    * <!-- end-user-doc -->
    * @generated
    */
-  public String getDbgName()
-  {
-    return dbgName;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setDbgName(String newDbgName)
-  {
-    String oldDbgName = dbgName;
-    dbgName = newDbgName;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, StatesPackage.TRANSITION__DBG_NAME, oldDbgName, dbgName));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
   @Override
   public Object eGet(int featureID, boolean resolve, boolean coreType)
   {
@@ -222,8 +178,6 @@
       case StatesPackage.TRANSITION__STATE:
         if (resolve) return getState();
         return basicGetState();
-      case StatesPackage.TRANSITION__DBG_NAME:
-        return getDbgName();
     }
     return super.eGet(featureID, resolve, coreType);
   }
@@ -244,9 +198,6 @@
       case StatesPackage.TRANSITION__STATE:
         setState((State)newValue);
         return;
-      case StatesPackage.TRANSITION__DBG_NAME:
-        setDbgName((String)newValue);
-        return;
     }
     super.eSet(featureID, newValue);
   }
@@ -267,9 +218,6 @@
       case StatesPackage.TRANSITION__STATE:
         setState((State)null);
         return;
-      case StatesPackage.TRANSITION__DBG_NAME:
-        setDbgName(DBG_NAME_EDEFAULT);
-        return;
     }
     super.eUnset(featureID);
   }
@@ -288,28 +236,8 @@
         return event != null;
       case StatesPackage.TRANSITION__STATE:
         return state != null;
-      case StatesPackage.TRANSITION__DBG_NAME:
-        return DBG_NAME_EDEFAULT == null ? dbgName != null : !DBG_NAME_EDEFAULT.equals(dbgName);
     }
     return super.eIsSet(featureID);
   }
 
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated NOT
-   */
-  @Override
-  public String toString()
-  {
-    if (eIsProxy()) return super.toString();
-
-    StringBuffer result = new StringBuffer();
-    result.append("Transition: ");
-    result.append(event.getName());
-    result.append(" => ");
-    result.append(state.getName());
-    return result.toString();
-  }
-
 } //TransitionImpl
diff --git a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src/org/eclipse/ocl/tutorial/eclipsecon2011/States.xtext b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src/org/eclipse/ocl/tutorial/eclipsecon2011/States.xtext
index 3a339f2..b6f7eb1 100644
--- a/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src/org/eclipse/ocl/tutorial/eclipsecon2011/States.xtext
+++ b/docs/publications/EclipseCon2011Tutorial/org.eclipse.ocl.tutorial.eclipsecon2011.states/src/org/eclipse/ocl/tutorial/eclipsecon2011/States.xtext
@@ -12,21 +12,21 @@
  *
  * </copyright>
  *
- * $Id: States.xtext,v 1.1 2011/03/12 20:46:05 ewillink Exp $
+ * $Id: States.xtext,v 1.2 2011/03/12 22:29:41 ewillink Exp $
  */
 grammar org.eclipse.ocl.tutorial.eclipsecon2011.States with org.eclipse.xtext.common.Terminals
 
 generate states "http://ocl.eclipse.org/tutorial/eclipsecon2011/States"
 
 Module:
-	'module' name=(STRING|ID)
+	'module' name=STRING
 	(machines+=Statemachine)*
 ;
 
 Statemachine:
 	(initial?='initial')? 'statemachine' name=ID ('value' value=INT)? '{'
 	'events' (events+=Event)* ';'
-	(states+=State)* '}' ('debug' dbgName=ID)?
+	(states+=State)* '}'
 ;
 
 Event:
@@ -36,14 +36,15 @@
 
 SimpleState:
 	(initial?='initial')? 'state' name=ID ('value' value=INT)?
-	'{' (transitions+=Transition)* '}' ('debug' dbgName=ID)?
+	'{' (transitions+=Transition)* '}'
 ;
 
 CompoundState:
-	'compound' (initial?='initial')? 'state' name=ID 'machine' machine=[Statemachine]
-	'{' (transitions+=Transition)* '}' ('debug' dbgName=ID)?
+	'compound' (initial?='initial')? 'state' name=ID
+	'machine' machine=[Statemachine]
+	'{' (transitions+=Transition)* '}'
 ;
 
 Transition:
-	event=[Event] '=>' state=[State] ('debug' dbgName=ID)?
+	event=[Event] '=>' state=[State]
 ;