Bug 522296 - [Designer, example models] SimpleSM SM contains deadlock

- Remove deadlock from SimpleSM and ComplexSM.

- Since SimpleSM is not really a good example of a simpleSM, rename it to SMwithJunction
- Create a new simpler version of a simple state-machine with additional comments
- Update example description

Signed-off-by: Ansgar Radermacher <ansgar.radermacher@cea.fr>
Change-Id: If43eb89c7b54268e553182e44a03760bdd1ac60a
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/ComplexSM/ComplexSM.notation b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/ComplexSM/ComplexSM.notation
index cfcb5cf..d6a21d7 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/ComplexSM/ComplexSM.notation
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/ComplexSM/ComplexSM.notation
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style_1="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
   <notation:Diagram xmi:id="_XSHWMF36Ed-UvNEDwY5GNg" type="PapyrusUMLClassDiagram" name="Interfaces" measurementUnit="Pixel">
     <children xmi:type="notation:Shape" xmi:id="_MTW5IDcZEeGPyrZ5I3hMlA" type="Interface_Shape" fontName="Sans Serif" lineColor="0">
       <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MTYuUDcZEeGPyrZ5I3hMlA" source="ShadowFigure">
@@ -156,7 +156,7 @@
         <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LKHvoHn3EeOfttgBwSq-Ig" key="gradient" value="true"/>
       </eAnnotations>
       <children xmi:type="notation:DecorationNode" xmi:id="_0MCIuOYXEeCBL_IbXY9ofw" type="StateMachine_NameLabel">
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIueYXEeCBL_IbXY9ofw" width="981" height="20"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIueYXEeCBL_IbXY9ofw" width="981" height="19"/>
       </children>
       <children xmi:type="notation:BasicCompartment" xmi:id="_JVovMPX4EeWa_pjn9guopQ" type="StateMachine_RegionCompartment">
         <children xmi:type="notation:Shape" xmi:id="_0MCIu-YXEeCBL_IbXY9ofw" type="Region_Shape" fontName="Sans Serif" lineColor="0" lineWidth="1">
@@ -210,20 +210,20 @@
                 <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_53f2suYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
               </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_53f2s-YXEeCBL_IbXY9ofw" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7PRh8OYXEeCBL_IbXY9ofw" width="99" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7PRh8OYXEeCBL_IbXY9ofw" width="99" height="19"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_JVp9UPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
                 <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PvBTIPX4EeWa_pjn9guopQ" source="PapyrusCSSForceValue">
                   <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PvB6MPX4EeWa_pjn9guopQ" key="visible" value="true"/>
                 </eAnnotations>
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53f2teYXEeCBL_IbXY9ofw" y="20" width="99" height="43"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53f2teYXEeCBL_IbXY9ofw" y="19" width="99" height="43"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_h9cHkFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
                 <styles xmi:type="notation:TitleStyle" xmi:id="_h9cHkVbmEeObiJAlOlmjpQ"/>
                 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9cHklbmEeObiJAlOlmjpQ"/>
               </children>
               <element xmi:type="uml:State" href="ComplexSM.uml#_53E_8OYXEeCBL_IbXY9ofw"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53eokeYXEeCBL_IbXY9ofw" x="180" y="40" width="99" height="63"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53eokeYXEeCBL_IbXY9ofw" x="180" y="40" width="99" height="62"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_8AQS8OYXEeCBL_IbXY9ofw" type="State_Shape" fontName="Sans Serif" lineColor="0">
               <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_8AQ6AOYXEeCBL_IbXY9ofw" source="ShadowFigure">
@@ -236,17 +236,17 @@
                 <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_8ARhFOYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
               </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_8ARhFeYXEeCBL_IbXY9ofw" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8A06sOYXEeCBL_IbXY9ofw" width="100" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8A06sOYXEeCBL_IbXY9ofw" width="100" height="19"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_JVrLcPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8ARhF-YXEeCBL_IbXY9ofw" y="20" width="100" height="42"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8ARhF-YXEeCBL_IbXY9ofw" y="19" width="100" height="42"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_h9ej0FbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
                 <styles xmi:type="notation:TitleStyle" xmi:id="_h9ej0VbmEeObiJAlOlmjpQ"/>
                 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9ej0lbmEeObiJAlOlmjpQ"/>
               </children>
               <element xmi:type="uml:State" href="ComplexSM.uml#_7_1cMOYXEeCBL_IbXY9ofw"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8AQS8eYXEeCBL_IbXY9ofw" x="179" y="238" width="100" height="62"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8AQS8eYXEeCBL_IbXY9ofw" x="179" y="238" width="100" height="61"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_oxRiMCjmEeaJJusTB1aIbg" type="State_Shape">
               <children xmi:type="notation:DecorationNode" xmi:id="_oxSwUCjmEeaJJusTB1aIbg" type="State_NameLabel">
@@ -281,7 +281,7 @@
             </children>
             <children xmi:type="notation:Shape" xmi:id="_mySKUCkEEeaWptp_P1JVYQ" type="State_Shape">
               <children xmi:type="notation:DecorationNode" xmi:id="_myTYcCkEEeaWptp_P1JVYQ" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nRa9YCkEEeaWptp_P1JVYQ" width="421" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nRa9YCkEEeaWptp_P1JVYQ" width="421" height="19"/>
               </children>
               <children xmi:type="notation:DecorationNode" xmi:id="_myTYcSkEEeaWptp_P1JVYQ" type="State_FloatingNameLabel">
                 <layoutConstraint xmi:type="notation:Location" xmi:id="_myTYcikEEeaWptp_P1JVYQ" x="40"/>
@@ -336,10 +336,10 @@
                   <element xmi:type="uml:Region" href="ComplexSM.uml#_pXD0MCkEEeaWptp_P1JVYQ"/>
                   <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pXLI8SkEEeaWptp_P1JVYQ" width="421" height="181"/>
                 </children>
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_myTYdCkEEeaWptp_P1JVYQ" y="20" width="421" height="181"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_myTYdCkEEeaWptp_P1JVYQ" y="19" width="421" height="181"/>
               </children>
               <element xmi:type="uml:State" href="ComplexSM.uml#_mxZZgCkEEeaWptp_P1JVYQ"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mySKUSkEEeaWptp_P1JVYQ" x="539" y="240" width="421" height="201"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mySKUSkEEeaWptp_P1JVYQ" x="539" y="240" width="421" height="200"/>
             </children>
             <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIxeYXEeCBL_IbXY9ofw"/>
           </children>
@@ -350,7 +350,7 @@
           <element xmi:type="uml:Region" href="ComplexSM.uml#_0Lv00OYXEeCBL_IbXY9ofw"/>
           <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIxuYXEeCBL_IbXY9ofw" width="981" height="461"/>
         </children>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIx-YXEeCBL_IbXY9ofw" y="20" width="981" height="461"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIx-YXEeCBL_IbXY9ofw" y="19" width="981" height="462"/>
       </children>
       <children xmi:type="notation:BasicCompartment" xmi:id="_h9ULwFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
         <styles xmi:type="notation:TitleStyle" xmi:id="_h9ULwVbmEeObiJAlOlmjpQ"/>
@@ -449,7 +449,7 @@
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_rgndUijmEeaJJusTB1aIbg" type="Transition_GuardLabel">
         <styles xmi:type="notation:BooleanValueStyle" xmi:id="_l4T1YCkEEeaWptp_P1JVYQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_rgndUyjmEeaJJusTB1aIbg" x="-140" y="-25"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_rgndUyjmEeaJJusTB1aIbg" x="-4" y="-26"/>
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_rgndVCjmEeaJJusTB1aIbg" type="Transition_StereotypeLabel">
         <styles xmi:type="notation:BooleanValueStyle" xmi:id="_l48HgCkEEeaWptp_P1JVYQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
@@ -649,7 +649,7 @@
     </children>
     <styles xmi:type="notation:StringValueStyle" xmi:id="_nrBwYZcGEeanRKHSrFuDZA" name="diagram_compatibility_version" stringValue="1.2.0"/>
     <styles xmi:type="notation:DiagramStyle" xmi:id="_nrBwYpcGEeanRKHSrFuDZA"/>
-    <styles xmi:type="style:PapyrusViewStyle" xmi:id="_nrBwY5cGEeanRKHSrFuDZA">
+    <styles xmi:type="style_1:PapyrusViewStyle" xmi:id="_nrBwY5cGEeanRKHSrFuDZA">
       <owner xmi:type="uml:Package" href="ComplexSM.uml#_LOqIEDLaEd2qeKRLMdIx_A"/>
     </styles>
     <element xmi:type="uml:Package" href="ComplexSM.uml#_LOqIEDLaEd2qeKRLMdIx_A"/>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/ComplexSM/ComplexSM.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/ComplexSM/ComplexSM.uml
index 50df9dd..3652f98 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/ComplexSM/ComplexSM.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/ComplexSM/ComplexSM.uml
@@ -106,10 +106,9 @@
               <trigger xmi:type="uml:Trigger" xmi:id="_rHpXoOtoEeCjb9i0gG4phA" event="_rHoJgOtoEeCjb9i0gG4phA"/>
             </transition>
             <transition xmi:type="uml:Transition" xmi:id="_OH_UYOYYEeCBL_IbXY9ofw" name="Transition2" source="_7_1cMOYXEeCBL_IbXY9ofw" target="_53E_8OYXEeCBL_IbXY9ofw">
-              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_CAWpgSSoEeG6GJ4vU06VYQ" name="add" isAbstract="true">
+              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_CAWpgSSoEeG6GJ4vU06VYQ" name="mult" isAbstract="true">
                 <language>C/C++</language>
-                <body>add(2,3);&#xD;
-mult(3,5);&#xD;
+                <body>mult(3,5);&#xD;
 std::cout &lt;&lt;&quot;From State1 to State0 \n&quot;;</body>
               </effect>
               <trigger xmi:type="uml:Trigger" xmi:id="_-aQtACaeEeG4fZdVXNtoOQ" event="_-PMFcCaeEeG4fZdVXNtoOQ"/>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/HelloWorldCpp/HelloWorldCpp.notation b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/HelloWorldCpp/HelloWorldCpp.notation
index 3431232..3b474d9 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/HelloWorldCpp/HelloWorldCpp.notation
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/HelloWorldCpp/HelloWorldCpp.notation
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:style_1="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style_1="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
   <notation:Diagram xmi:id="_U1UegPcXEd-KM6l7lmIPkw" type="PapyrusUMLClassDiagram" name="deployment" measurementUnit="Pixel">
     <children xmi:type="notation:Shape" xmi:id="_gdmuADefEeGPyrZ5I3hMlA" type="Comment_Shape" fontName="Sans Serif" lineColor="0">
       <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_gdmuAjefEeGPyrZ5I3hMlA" source="ShadowFigure">
@@ -102,7 +102,7 @@
       <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qX0z0rYoEeWaTqnU44XdvA" x="220" y="200"/>
     </children>
     <styles xmi:type="notation:DiagramStyle" xmi:id="_U1UegfcXEd-KM6l7lmIPkw"/>
-    <styles xmi:type="notation:StringValueStyle" xmi:id="_qOX84rYoEeWaTqnU44XdvA" name="diagram_compatibility_version" stringValue="1.3.0"/>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_qOX84rYoEeWaTqnU44XdvA" name="diagram_compatibility_version" stringValue="1.2.0"/>
     <element xmi:type="uml:Package" href="HelloWorldCpp.uml#_234GEDLiEd2RVeNawwNNzg"/>
     <edges xmi:type="notation:Connector" xmi:id="_Sqs9MFWkEeKOivupHOJ8Ew" type="Comment_AnnotatedElementEdge" source="_obNuEFWiEeKOivupHOJ8Ew" target="_-4h4YFWREeKdxoQIVxFNNg" routing="Rectilinear" lineColor="0">
       <styles xmi:type="notation:FontStyle" xmi:id="_Sqs9MVWkEeKOivupHOJ8Ew" fontName="Sans Serif"/>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SMwithJunction/SMwithJunction.di b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SMwithJunction/SMwithJunction.di
new file mode 100644
index 0000000..bf9abab
--- /dev/null
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SMwithJunction/SMwithJunction.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SMwithJunction/SMwithJunction.notation b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SMwithJunction/SMwithJunction.notation
new file mode 100644
index 0000000..fc3782b
--- /dev/null
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SMwithJunction/SMwithJunction.notation
@@ -0,0 +1,453 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+  <notation:Diagram xmi:id="_6FvnwGONEd-seu3qyZgHfg" type="PapyrusUMLClassDiagram" name="deployment plans" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_RzEEkG-0Eea89JTVlr8RHA" type="Package_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_RzFSsG-0Eea89JTVlr8RHA" type="Package_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RzFSsW-0Eea89JTVlr8RHA" type="Package_PackagedElementCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RzFSsm-0Eea89JTVlr8RHA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RzFSs2-0Eea89JTVlr8RHA"/>
+      </children>
+      <element xmi:type="uml:Package" href="SMwithJunction.uml#_GYFZYG-QEea89JTVlr8RHA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RzEEkW-0Eea89JTVlr8RHA" x="59" y="62" width="242" height="110"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_fDkCkG-6Eea89JTVlr8RHA" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_fDkCkW-6Eea89JTVlr8RHA"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_fDkCk2-6Eea89JTVlr8RHA" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Package" href="SMwithJunction.uml#_GYFZYG-QEea89JTVlr8RHA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fDkCkm-6Eea89JTVlr8RHA" x="259" y="62"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_ssMsMJl4Eee5eLTvguUsew" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_ssPIcJl4Eee5eLTvguUsew" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="SMwithJunction.uml#_ssEwYJl4Eee5eLTvguUsew"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ssMsMZl4Eee5eLTvguUsew" x="380" y="80" width="281" height="81"/>
+    </children>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_6FvnwWONEd-seu3qyZgHfg"/>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_X3OnwGkLEeWakucY9QdE0g" name="diagram_compatibility_version" stringValue="1.2.0"/>
+    <element xmi:type="uml:Package" href="SMwithJunction.uml#_234GEDLiEd2RVeNawwNNzg"/>
+    <edges xmi:type="notation:Connector" xmi:id="_fDkClG-6Eea89JTVlr8RHA" type="StereotypeCommentLink" source="_RzEEkG-0Eea89JTVlr8RHA" target="_fDkCkG-6Eea89JTVlr8RHA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_fDkClW-6Eea89JTVlr8RHA"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_fDkCmW-6Eea89JTVlr8RHA" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Package" href="SMwithJunction.uml#_GYFZYG-QEea89JTVlr8RHA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_fDkClm-6Eea89JTVlr8RHA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fDkCl2-6Eea89JTVlr8RHA"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fDkCmG-6Eea89JTVlr8RHA"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_-2BYUJl4Eee5eLTvguUsew" type="Comment_AnnotatedElementEdge" source="_ssMsMJl4Eee5eLTvguUsew" target="_RzEEkG-0Eea89JTVlr8RHA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_-2BYUZl4Eee5eLTvguUsew"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-2BYUpl4Eee5eLTvguUsew" points="[380, 140, -643984, -643984]$[301, 140, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-213sJl4Eee5eLTvguUsew" id="(0.0,0.625)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-213sZl4Eee5eLTvguUsew" id="(1.0,0.7090909090909091)"/>
+    </edges>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_0MCIsOYXEeCBL_IbXY9ofw" type="PapyrusUMLStateMachineDiagram" name="SM diagram" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_0MCIseYXEeCBL_IbXY9ofw" type="StateMachine_Shape" fontName="Sans Serif" lineColor="0">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0MCIsuYXEeCBL_IbXY9ofw" source="ShadowFigure">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0MCIs-YXEeCBL_IbXY9ofw" key="ShadowFigure_Value" value="false"/>
+      </eAnnotations>
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0MCItOYXEeCBL_IbXY9ofw" source="displayNameLabelIcon">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0MCIteYXEeCBL_IbXY9ofw" key="displayNameLabelIcon_value" value="false"/>
+      </eAnnotations>
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0MCItuYXEeCBL_IbXY9ofw" source="QualifiedName">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0MCIt-YXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
+      </eAnnotations>
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_JlR4wHn3EeOfttgBwSq-Ig" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_JlR4wXn3EeOfttgBwSq-Ig" key="fillColor" value="true"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LKHvoHn3EeOfttgBwSq-Ig" key="gradient" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_0MCIuOYXEeCBL_IbXY9ofw" type="StateMachine_NameLabel">
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIueYXEeCBL_IbXY9ofw" width="872" height="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_JVovMPX4EeWa_pjn9guopQ" type="StateMachine_RegionCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_0MCIu-YXEeCBL_IbXY9ofw" type="Region_Shape" fontName="Sans Serif" lineColor="0" lineWidth="1">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0MCIvOYXEeCBL_IbXY9ofw" source="ShadowFigure">
+            <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0MCIveYXEeCBL_IbXY9ofw" key="ShadowFigure_Value" value="false"/>
+          </eAnnotations>
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0MCIvuYXEeCBL_IbXY9ofw" source="displayNameLabelIcon">
+            <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0MCIv-YXEeCBL_IbXY9ofw" key="displayNameLabelIcon_value" value="false"/>
+          </eAnnotations>
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0MCIwOYXEeCBL_IbXY9ofw" source="QualifiedName">
+            <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0MCIweYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
+          </eAnnotations>
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0MCIwuYXEeCBL_IbXY9ofw" source="RegionAnnotationKey">
+            <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0MCIw-YXEeCBL_IbXY9ofw" key="RegionZoneKey" value=""/>
+          </eAnnotations>
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_TbH8gHn3EeOfttgBwSq-Ig" source="PapyrusCSSForceValue">
+            <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TbH8gXn3EeOfttgBwSq-Ig" key="fillColor" value="true"/>
+            <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uP7skPZMEeWa_pjn9guopQ" key="lineWidth" value="true"/>
+          </eAnnotations>
+          <children xmi:type="notation:BasicCompartment" xmi:id="_JVpWQPX4EeWa_pjn9guopQ" type="Region_SubvertexCompartment">
+            <children xmi:type="notation:Shape" xmi:id="_1U-twOYXEeCBL_IbXY9ofw" type="Pseudostate_InitialShape" fontName="Sans Serif" fillColor="0" lineColor="0">
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1U_U0OYXEeCBL_IbXY9ofw" source="ShadowFigure">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1U_74OYXEeCBL_IbXY9ofw" key="ShadowFigure_Value" value="false"/>
+              </eAnnotations>
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1U_74eYXEeCBL_IbXY9ofw" source="displayNameLabelIcon">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1U_74uYXEeCBL_IbXY9ofw" key="displayNameLabelIcon_value" value="false"/>
+              </eAnnotations>
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1U_74-YXEeCBL_IbXY9ofw" source="QualifiedName">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1U_75OYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
+              </eAnnotations>
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LqN7kMcpEeSsAI2TZshUyg" source="PapyrusCSSForceValue">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LqPJsMcpEeSsAI2TZshUyg" key="gradient" value="true"/>
+              </eAnnotations>
+              <children xmi:type="notation:DecorationNode" xmi:id="_1U_75eYXEeCBL_IbXY9ofw" type="Pseudostate_InitialFloatingNameLabel">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="_1U_75uYXEeCBL_IbXY9ofw" x="36" y="-9"/>
+              </children>
+              <children xmi:type="notation:DecorationNode" xmi:id="_1U_75-YXEeCBL_IbXY9ofw" type="Pseudostate_InitialStereotypeLabel">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="_1U_76OYXEeCBL_IbXY9ofw" x="25" y="-10"/>
+              </children>
+              <element xmi:type="uml:Pseudostate" href="SMwithJunction.uml#_1UVNgOYXEeCBL_IbXY9ofw"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1U-tweYXEeCBL_IbXY9ofw" x="114" y="19"/>
+            </children>
+            <children xmi:type="notation:Shape" xmi:id="_53eokOYXEeCBL_IbXY9ofw" type="State_Shape" fontName="Sans Serif" lineColor="0">
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_53fPoOYXEeCBL_IbXY9ofw" source="ShadowFigure">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_53fPoeYXEeCBL_IbXY9ofw" key="ShadowFigure_Value" value="false"/>
+              </eAnnotations>
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_53fPouYXEeCBL_IbXY9ofw" source="displayNameLabelIcon">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_53f2sOYXEeCBL_IbXY9ofw" key="displayNameLabelIcon_value" value="false"/>
+              </eAnnotations>
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_53f2seYXEeCBL_IbXY9ofw" source="QualifiedName">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_53f2suYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
+              </eAnnotations>
+              <children xmi:type="notation:DecorationNode" xmi:id="_53f2s-YXEeCBL_IbXY9ofw" type="State_NameLabel">
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7PRh8OYXEeCBL_IbXY9ofw" width="99" height="15"/>
+              </children>
+              <children xmi:type="notation:BasicCompartment" xmi:id="_JVp9UPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
+                <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PvBTIPX4EeWa_pjn9guopQ" source="PapyrusCSSForceValue">
+                  <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PvB6MPX4EeWa_pjn9guopQ" key="visible" value="true"/>
+                </eAnnotations>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53f2teYXEeCBL_IbXY9ofw" y="15" width="99" height="48"/>
+              </children>
+              <children xmi:type="notation:BasicCompartment" xmi:id="_h9cHkFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
+                <styles xmi:type="notation:TitleStyle" xmi:id="_h9cHkVbmEeObiJAlOlmjpQ"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9cHklbmEeObiJAlOlmjpQ"/>
+              </children>
+              <element xmi:type="uml:State" href="SMwithJunction.uml#_53E_8OYXEeCBL_IbXY9ofw"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53eokeYXEeCBL_IbXY9ofw" x="259" y="37" width="99" height="63"/>
+            </children>
+            <children xmi:type="notation:Shape" xmi:id="_8AQS8OYXEeCBL_IbXY9ofw" type="State_Shape" fontName="Sans Serif" lineColor="0">
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_8AQ6AOYXEeCBL_IbXY9ofw" source="ShadowFigure">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_8ARhEOYXEeCBL_IbXY9ofw" key="ShadowFigure_Value" value="false"/>
+              </eAnnotations>
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_8ARhEeYXEeCBL_IbXY9ofw" source="displayNameLabelIcon">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_8ARhEuYXEeCBL_IbXY9ofw" key="displayNameLabelIcon_value" value="false"/>
+              </eAnnotations>
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_8ARhE-YXEeCBL_IbXY9ofw" source="QualifiedName">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_8ARhFOYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
+              </eAnnotations>
+              <children xmi:type="notation:DecorationNode" xmi:id="_8ARhFeYXEeCBL_IbXY9ofw" type="State_NameLabel">
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8A06sOYXEeCBL_IbXY9ofw" width="100" height="15"/>
+              </children>
+              <children xmi:type="notation:BasicCompartment" xmi:id="_JVrLcPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8ARhF-YXEeCBL_IbXY9ofw" y="15" width="100" height="42"/>
+              </children>
+              <children xmi:type="notation:BasicCompartment" xmi:id="_h9ej0FbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
+                <styles xmi:type="notation:TitleStyle" xmi:id="_h9ej0VbmEeObiJAlOlmjpQ"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9ej0lbmEeObiJAlOlmjpQ"/>
+              </children>
+              <element xmi:type="uml:State" href="SMwithJunction.uml#_7_1cMOYXEeCBL_IbXY9ofw"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8AQS8eYXEeCBL_IbXY9ofw" x="259" y="181" width="100" height="57"/>
+            </children>
+            <children xmi:type="notation:Shape" xmi:id="_oxRiMCjmEeaJJusTB1aIbg" type="State_Shape">
+              <children xmi:type="notation:DecorationNode" xmi:id="_oxSwUCjmEeaJJusTB1aIbg" type="State_NameLabel">
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p6M5ICjmEeaJJusTB1aIbg" width="79"/>
+              </children>
+              <children xmi:type="notation:DecorationNode" xmi:id="_oxTXYCjmEeaJJusTB1aIbg" type="State_FloatingNameLabel">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="_oxTXYSjmEeaJJusTB1aIbg" x="40"/>
+              </children>
+              <children xmi:type="notation:BasicCompartment" xmi:id="_oxTXYijmEeaJJusTB1aIbg" type="State_RegionCompartment">
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oxTXYyjmEeaJJusTB1aIbg" y="-1" width="79"/>
+              </children>
+              <element xmi:type="uml:State" href="SMwithJunction.uml#_owZYcCjmEeaJJusTB1aIbg"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oxRiMSjmEeaJJusTB1aIbg" x="599" y="41" width="79" height="59"/>
+            </children>
+            <children xmi:type="notation:Shape" xmi:id="__-OxACjmEeaJJusTB1aIbg" type="Pseudostate_JunctionShape">
+              <children xmi:type="notation:DecorationNode" xmi:id="__-PYECjmEeaJJusTB1aIbg" type="Pseudostate_JunctionFloatingNameLabel">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="__-PYESjmEeaJJusTB1aIbg" x="26" y="3"/>
+              </children>
+              <children xmi:type="notation:DecorationNode" xmi:id="__-PYEijmEeaJJusTB1aIbg" type="Pseudostate_JunctionStereotypeLabel">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="__-PYEyjmEeaJJusTB1aIbg" x="25" y="-10"/>
+              </children>
+              <element xmi:type="uml:Pseudostate" href="SMwithJunction.uml#__9lQwCjmEeaJJusTB1aIbg"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="__-OxASjmEeaJJusTB1aIbg" x="599" y="161"/>
+            </children>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIxeYXEeCBL_IbXY9ofw"/>
+          </children>
+          <children xmi:type="notation:BasicCompartment" xmi:id="_h9XPEFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
+            <styles xmi:type="notation:TitleStyle" xmi:id="_h9XPEVbmEeObiJAlOlmjpQ"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9XPElbmEeObiJAlOlmjpQ"/>
+          </children>
+          <element xmi:type="uml:Region" href="SMwithJunction.uml#_0Lv00OYXEeCBL_IbXY9ofw"/>
+          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIxuYXEeCBL_IbXY9ofw" width="872" height="331"/>
+        </children>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIx-YXEeCBL_IbXY9ofw" y="15" width="872" height="336"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_h9ULwFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_h9ULwVbmEeObiJAlOlmjpQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9ULwlbmEeObiJAlOlmjpQ"/>
+      </children>
+      <styles xmi:type="notation:StringListValueStyle" xmi:id="_v51OQHn2EeOfttgBwSq-Ig" name="cssClass"/>
+      <element xmi:type="uml:StateMachine" href="SMwithJunction.uml#_y7KWsOYXEeCBL_IbXY9ofw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIyOYXEeCBL_IbXY9ofw" x="40" y="40" width="872" height="351"/>
+    </children>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_0MCIyeYXEeCBL_IbXY9ofw"/>
+    <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_B2g2QHn3EeOfttgBwSq-Ig" name="css_stylesheets" eObjectListValue="_B2g2QXn3EeOfttgBwSq-Ig"/>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_YAq3oGkLEeWakucY9QdE0g" name="diagram_compatibility_version" stringValue="1.2.0"/>
+    <element xmi:type="uml:StateMachine" href="SMwithJunction.uml#_y7KWsOYXEeCBL_IbXY9ofw"/>
+    <edges xmi:type="notation:Connector" xmi:id="_CLUHAOYYEeCBL_IbXY9ofw" type="Transition_Edge" source="_1U-twOYXEeCBL_IbXY9ofw" target="_53eokOYXEeCBL_IbXY9ofw" lineColor="0">
+      <children xmi:type="notation:DecorationNode" xmi:id="_CLV8MOYYEeCBL_IbXY9ofw" visible="false" type="Transition_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_CLV8MeYYEeCBL_IbXY9ofw" x="-6"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_CLV8MuYYEeCBL_IbXY9ofw" type="Transition_GuardLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_CLV8M-YYEeCBL_IbXY9ofw"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_CLV8NOYYEeCBL_IbXY9ofw" type="Transition_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_CLV8NeYYEeCBL_IbXY9ofw" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_CLUHAeYYEeCBL_IbXY9ofw" fontName="Sans Serif"/>
+      <element xmi:type="uml:Transition" href="SMwithJunction.uml#_CLBzIOYYEeCBL_IbXY9ofw"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CLUHAuYYEeCBL_IbXY9ofw" points="[10, -4, -180, 0]$[175, -7, -15, -3]"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CMH_UOYYEeCBL_IbXY9ofw" id="(0.16483516483516483,0.4142857142857143)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_Doz_wOYYEeCBL_IbXY9ofw" type="Transition_Edge" source="_53eokOYXEeCBL_IbXY9ofw" target="_8AQS8OYXEeCBL_IbXY9ofw" lineColor="0">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Do0m0OYYEeCBL_IbXY9ofw" visible="false" type="Transition_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Do0m0eYYEeCBL_IbXY9ofw"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Do0m0uYYEeCBL_IbXY9ofw" type="Transition_GuardLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Do0m0-YYEeCBL_IbXY9ofw" x="-14" y="96"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Do0m1OYYEeCBL_IbXY9ofw" type="Transition_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Do0m1eYYEeCBL_IbXY9ofw" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_Doz_weYYEeCBL_IbXY9ofw" fontName="Sans Serif"/>
+      <element xmi:type="uml:Transition" href="SMwithJunction.uml#_Doi6AOYYEeCBL_IbXY9ofw"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Doz_wuYYEeCBL_IbXY9ofw" points="[4, 9, 0, -45]$[1, 47, -3, -7]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DpacsOYYEeCBL_IbXY9ofw" id="(0.2,0.9846153846153847)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DpacseYYEeCBL_IbXY9ofw" id="(0.2,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_OIPMAOYYEeCBL_IbXY9ofw" type="Transition_Edge" source="_8AQS8OYXEeCBL_IbXY9ofw" target="_53eokOYXEeCBL_IbXY9ofw" lineColor="0">
+      <children xmi:type="notation:DecorationNode" xmi:id="_OIPzEOYYEeCBL_IbXY9ofw" visible="false" type="Transition_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_OIQaIOYYEeCBL_IbXY9ofw"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_OIQaIeYYEeCBL_IbXY9ofw" type="Transition_GuardLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_OIQaIuYYEeCBL_IbXY9ofw" x="-1" y="88"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_OIQaI-YYEeCBL_IbXY9ofw" type="Transition_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_OIQaJOYYEeCBL_IbXY9ofw" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_OIPMAeYYEeCBL_IbXY9ofw" fontName="Sans Serif"/>
+      <element xmi:type="uml:Transition" href="SMwithJunction.uml#_OH_UYOYYEeCBL_IbXY9ofw"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OIPMAuYYEeCBL_IbXY9ofw" points="[-4, -31, 8, 88]$[4, -128, 16, -9]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OIxXgOYYEeCBL_IbXY9ofw" id="(0.8,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OIxXgeYYEeCBL_IbXY9ofw" id="(0.8,0.9846153846153847)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_mPjVYOtqEeCzSsOGmQH2aA" type="Transition_Edge" source="_53eokOYXEeCBL_IbXY9ofw" target="_8AQS8OYXEeCBL_IbXY9ofw" roundedBendpointsRadius="10" routing="Rectilinear" lineColor="0">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_wFmGcHoDEeOA64V_YLapaA" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wFmtgHoDEeOA64V_YLapaA" key="smoothness" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_mPlxoOtqEeCzSsOGmQH2aA" visible="false" type="Transition_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_XwnVkPX5EeWa_pjn9guopQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_mPlxoetqEeCzSsOGmQH2aA"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_mPlxoutqEeCzSsOGmQH2aA" type="Transition_GuardLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_XxIS8PX5EeWa_pjn9guopQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_mPlxo-tqEeCzSsOGmQH2aA" x="-15" y="28"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_mPlxpOtqEeCzSsOGmQH2aA" type="Transition_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Xxll8PX5EeWa_pjn9guopQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_mPlxpetqEeCzSsOGmQH2aA" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_mPjVYetqEeCzSsOGmQH2aA" fontName=""/>
+      <element xmi:type="uml:Transition" href="SMwithJunction.uml#_mJvoUOtqEeCzSsOGmQH2aA"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mPjVYutqEeCzSsOGmQH2aA" points="[300, 140, -643984, -643984]$[120, 140, -643984, -643984]$[120, 260, -643984, -643984]$[300, 260, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mPm_wOtqEeCzSsOGmQH2aA" id="(0.0,0.6567164179104478)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mPm_wetqEeCzSsOGmQH2aA" id="(0.0,0.32786885245901637)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_rgm2QCjmEeaJJusTB1aIbg" type="Transition_Edge" source="_53eokOYXEeCBL_IbXY9ofw" target="_oxRiMCjmEeaJJusTB1aIbg" roundedBendpointsRadius="20" routing="Rectilinear">
+      <children xmi:type="notation:DecorationNode" xmi:id="_rgndUCjmEeaJJusTB1aIbg" type="Transition_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_4l7qMJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_rgndUSjmEeaJJusTB1aIbg"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_rgndUijmEeaJJusTB1aIbg" type="Transition_GuardLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_4mfD0Jk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_rgndUyjmEeaJJusTB1aIbg" x="13" y="-46"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_rgndVCjmEeaJJusTB1aIbg" type="Transition_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_4nDEgJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_rgndVSjmEeaJJusTB1aIbg" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_rgm2QSjmEeaJJusTB1aIbg"/>
+      <element xmi:type="uml:Transition" href="SMwithJunction.uml#_rdKgsCjmEeaJJusTB1aIbg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rgm2QijmEeaJJusTB1aIbg" points="[399, 120, -643984, -643984]$[499, 120, -643984, -643984]$[499, 135, -643984, -643984]$[600, 135, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rhuQkCjmEeaJJusTB1aIbg" id="(1.0,0.3582089552238806)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rhu3oCjmEeaJJusTB1aIbg" id="(0.0,0.5932203389830508)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_BPTXUCjnEeaJJusTB1aIbg" type="Transition_Edge" source="_oxRiMCjmEeaJJusTB1aIbg" target="__-OxACjmEeaJJusTB1aIbg" roundedBendpointsRadius="20" routing="Rectilinear">
+      <children xmi:type="notation:DecorationNode" xmi:id="_BPTXUyjnEeaJJusTB1aIbg" type="Transition_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_rEAWQJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_BPTXVCjnEeaJJusTB1aIbg"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_BPTXVSjnEeaJJusTB1aIbg" type="Transition_GuardLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_rEdpQJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_BPTXVijnEeaJJusTB1aIbg" x="-103" y="-14"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_BPTXVyjnEeaJJusTB1aIbg" type="Transition_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_rE9YgJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_BPTXWCjnEeaJJusTB1aIbg" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_BPTXUSjnEeaJJusTB1aIbg"/>
+      <element xmi:type="uml:Transition" href="SMwithJunction.uml#_BO7j4CjnEeaJJusTB1aIbg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BPTXUijnEeaJJusTB1aIbg" points="[580, 154, -643984, -643984]$[580, 180, -643984, -643984]$[586, 180, -643984, -643984]$[586, 221, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BP6bUCjnEeaJJusTB1aIbg" id="(0.3670886075949367,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BP6bUSjnEeaJJusTB1aIbg" id="(0.3,0.06666666666666667)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_G11iACjnEeaJJusTB1aIbg" type="Transition_Edge" source="__-OxACjmEeaJJusTB1aIbg" target="_53eokOYXEeCBL_IbXY9ofw" roundedBendpointsRadius="20" routing="Rectilinear">
+      <children xmi:type="notation:DecorationNode" xmi:id="_G11iAyjnEeaJJusTB1aIbg" type="Transition_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_yCSXAJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_G11iBCjnEeaJJusTB1aIbg"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_G11iBSjnEeaJJusTB1aIbg" type="Transition_GuardLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_yCr_oJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_G11iBijnEeaJJusTB1aIbg"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_G11iByjnEeaJJusTB1aIbg" type="Transition_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_yDJ5sJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_G11iCCjnEeaJJusTB1aIbg" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_G11iASjnEeaJJusTB1aIbg"/>
+      <element xmi:type="uml:Transition" href="SMwithJunction.uml#_G1QTMCjnEeaJJusTB1aIbg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_G11iAijnEeaJJusTB1aIbg" points="[588, 220, -643984, -643984]$[588, 225, -643984, -643984]$[480, 225, -643984, -643984]$[480, 158, -643984, -643984]$[397, 158, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_G2gQYCjnEeaJJusTB1aIbg" id="(0.15,0.3863945578231304)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_G2g3cCjnEeaJJusTB1aIbg" id="(0.9797979797979798,0.9117647058823529)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_HndzQCjnEeaJJusTB1aIbg" type="Transition_Edge" source="__-OxACjmEeaJJusTB1aIbg" target="_8AQS8OYXEeCBL_IbXY9ofw" roundedBendpointsRadius="20" routing="Rectilinear">
+      <children xmi:type="notation:DecorationNode" xmi:id="_HndzQyjnEeaJJusTB1aIbg" type="Transition_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_yD2dQJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_HndzRCjnEeaJJusTB1aIbg"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_HndzRSjnEeaJJusTB1aIbg" type="Transition_GuardLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_yEdhQJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_HndzRijnEeaJJusTB1aIbg" x="18" y="-33"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_HndzRyjnEeaJJusTB1aIbg" type="Transition_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_yE-eoJk_Eeeqk6kqGLLpPA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_HndzSCjnEeaJJusTB1aIbg" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_HndzQSjnEeaJJusTB1aIbg"/>
+      <element xmi:type="uml:Transition" href="SMwithJunction.uml#_HnKRQCjnEeaJJusTB1aIbg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HndzQijnEeaJJusTB1aIbg" points="[585, 233, -643984, -643984]$[585, 280, -643984, -643984]$[400, 280, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HoK94CjnEeaJJusTB1aIbg" id="(0.27479674796748554,0.8330623306233065)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HoLk8CjnEeaJJusTB1aIbg" id="(1.0,0.5806451612903226)"/>
+    </edges>
+  </notation:Diagram>
+  <css:EmbeddedStyleSheet xmi:id="_B2g2QXn3EeOfttgBwSq-Ig" label="Animation" content=":animated{&#xA;&#x9;/*Edge of the shape affected by the pseudo selector*/&#xA;&#x9;lineColor: #c00000;&#xA;&#x9;lineWidth: 3px;&#xA;&#x9;/*Content of the shape affected by the pseudo selector*/&#xA;&#x9;fillColor: #c00000;&#xA;&#x9;bold: true;&#xA;} &#xA;&#xA;:suspended{&#xA;&#x9;/*Edge of the shape affected by the pseudo selector*/&#xA;&#x9;lineColor: #c00000;&#xA;&#x9;lineWidth: 2px;&#xA;&#x9;/*Content of the shape affected by the pseudo selector*/&#xA;&#x9;fillColor: #fab953;&#xA;&#x9;bold: true;&#xA;}&#xA;&#xA;:visited{&#xA;&#x9;/*Edge of the shape affected by the pseudo selector*/&#xA;&#x9;lineColor: #92d050;&#xA;&#x9;lineWidth: 2px;&#xA;&#x9;/*Content of the shape affected by the pseudo selector*/&#xA;&#x9;fillColor: #92d050;&#xA;}&#xA;Transition > Label {&#xA;&#x9;bodyCutLength: 1;&#xA;&#x9;indicateParameters: true;&#xA;&#x9;lineBreakBeforeEffect : true;&#xA;}"/>
+  <css:ModelStyleSheets xmi:id="_Rz4BcMcpEeSsAI2TZshUyg"/>
+  <notation:Diagram xmi:id="_Zv3ucG-FEea89JTVlr8RHA" type="PapyrusUMLClassDiagram" name="SMwithJunction" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_a2TLAG-FEea89JTVlr8RHA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_a2TyEG-FEea89JTVlr8RHA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_a2TyEW-FEea89JTVlr8RHA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_a2TyEm-FEea89JTVlr8RHA" y="5"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_a2TyE2-FEea89JTVlr8RHA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_a2TyFG-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_a2TyFW-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_a2TyFm-FEea89JTVlr8RHA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_a2TyF2-FEea89JTVlr8RHA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_a2TyGG-FEea89JTVlr8RHA" type="Class_OperationCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_lOZnQG-FEea89JTVlr8RHA" type="Operation_ClassOperationLabel">
+          <element xmi:type="uml:Operation" href="SMwithJunction.uml#_4ZEZwHecEd6r18stFZxmFQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_lOZnQW-FEea89JTVlr8RHA"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_lOaOUG-FEea89JTVlr8RHA" type="Operation_ClassOperationLabel">
+          <element xmi:type="uml:Operation" href="SMwithJunction.uml#_TbIjUJYlEd6G9q9hwr11bw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_lOaOUW-FEea89JTVlr8RHA"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_lOa1YG-FEea89JTVlr8RHA" type="Operation_ClassOperationLabel">
+          <element xmi:type="uml:Operation" href="SMwithJunction.uml#_VGsRACgBEeapjr3l63b85A"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_lOa1YW-FEea89JTVlr8RHA"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_a2TyGW-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_a2TyGm-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_a2TyG2-FEea89JTVlr8RHA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_a2TyHG-FEea89JTVlr8RHA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_a2TyHW-FEea89JTVlr8RHA" visible="false" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_a2TyHm-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_a2TyH2-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_a2TyIG-FEea89JTVlr8RHA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_a2TyIW-FEea89JTVlr8RHA"/>
+      </children>
+      <element xmi:type="uml:Class" href="SMwithJunction.uml#_oqZNUDLaEd2qeKRLMdIx_A"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_a2TLAW-FEea89JTVlr8RHA" x="60" y="180" width="361"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_a2gmY2-FEea89JTVlr8RHA" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_a2gmZG-FEea89JTVlr8RHA"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_a2hNcG-FEea89JTVlr8RHA" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="SMwithJunction.uml#_oqZNUDLaEd2qeKRLMdIx_A"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_a2gmZW-FEea89JTVlr8RHA" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_bnxrQG-FEea89JTVlr8RHA" type="Interface_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_bnySUG-FEea89JTVlr8RHA" type="Interface_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_bnySUW-FEea89JTVlr8RHA" type="Interface_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_bnySUm-FEea89JTVlr8RHA" y="5"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_bnySU2-FEea89JTVlr8RHA" visible="false" type="Interface_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_bnySVG-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_bnySVW-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_bnySVm-FEea89JTVlr8RHA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bnySV2-FEea89JTVlr8RHA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_bnySWG-FEea89JTVlr8RHA" type="Interface_OperationCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_c9VwAG-FEea89JTVlr8RHA" type="Operation_InterfaceOperationLabel">
+          <element xmi:type="uml:Operation" href="pathmap://DML_TRAFO/sysinterfaces.uml#_C9IK4JsqEd61Eo3nmu3JhQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_c9VwAW-FEea89JTVlr8RHA"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_bnySWW-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_bnySWm-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_bnySW2-FEea89JTVlr8RHA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bnySXG-FEea89JTVlr8RHA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_bnySXW-FEea89JTVlr8RHA" visible="false" type="Interface_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_bnySXm-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_bnySX2-FEea89JTVlr8RHA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_bnySYG-FEea89JTVlr8RHA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bnySYW-FEea89JTVlr8RHA"/>
+      </children>
+      <element xmi:type="uml:Interface" href="pathmap://DML_TRAFO/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bnxrQW-FEea89JTVlr8RHA" x="60" y="44" width="361" height="77"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_Zv3ucW-FEea89JTVlr8RHA" name="diagram_compatibility_version" stringValue="1.2.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_Zv3ucm-FEea89JTVlr8RHA"/>
+    <element xmi:type="uml:Package" href="SMwithJunction.uml#_LOqIEDLaEd2qeKRLMdIx_A"/>
+    <edges xmi:type="notation:Connector" xmi:id="_a2hNcW-FEea89JTVlr8RHA" type="StereotypeCommentLink" source="_a2TLAG-FEea89JTVlr8RHA" target="_a2gmY2-FEea89JTVlr8RHA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_a2hNcm-FEea89JTVlr8RHA"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_a2hNdm-FEea89JTVlr8RHA" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="SMwithJunction.uml#_oqZNUDLaEd2qeKRLMdIx_A"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_a2hNc2-FEea89JTVlr8RHA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a2hNdG-FEea89JTVlr8RHA"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a2hNdW-FEea89JTVlr8RHA"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_bjZD4JlGEeejksbGg7yusw" type="InterfaceRealization_Edge" source="_a2TLAG-FEea89JTVlr8RHA" target="_bnxrQG-FEea89JTVlr8RHA">
+      <children xmi:type="notation:DecorationNode" xmi:id="_bjbgIJlGEeejksbGg7yusw" type="InterfaceRealization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_bjbgIZlGEeejksbGg7yusw" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_bjbgIplGEeejksbGg7yusw" type="InterfaceRealization_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_bjbgI5lGEeejksbGg7yusw" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_bjZD4ZlGEeejksbGg7yusw"/>
+      <element xmi:type="uml:InterfaceRealization" href="SMwithJunction.uml#_bi6iwJlGEeejksbGg7yusw"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bjZD4plGEeejksbGg7yusw" points="[240, 180, -643984, -643984]$[240, 121, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bkWtMJlGEeejksbGg7yusw" id="(0.4986149584487535,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bkWtMZlGEeejksbGg7yusw" id="(0.4986149584487535,1.0)"/>
+    </edges>
+  </notation:Diagram>
+</xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SMwithJunction/SMwithJunction.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SMwithJunction/SMwithJunction.uml
new file mode 100644
index 0000000..3ec2b4a
--- /dev/null
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SMwithJunction/SMwithJunction.uml
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:Deployment="http://www.eclipse.org/papyrus/Deployment/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+  <uml:Model xmi:id="_O6TiIDLUEd26WNosUASSSw" name="SMwithJunction">
+    <packageImport xmi:type="uml:PackageImport" xmi:id="_O6TiITLUEd26WNosUASSSw">
+      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+    </packageImport>
+    <packageImport xmi:type="uml:PackageImport" xmi:id="_Bc1WIFW4Ed63BrxiKsw-0Q">
+      <importedPackage xmi:type="uml:Model" href="pathmap://DML_TRAFO/trafos.uml#_Q6TiIDLUEd26WNosUASSSw"/>
+    </packageImport>
+    <packageImport xmi:type="uml:PackageImport" xmi:id="_YvEs8OusEeCTfOY57pgE3w">
+      <importedPackage xmi:type="uml:Model" href="pathmap://DML_TRAFO/statemachine.uml#_ago_QOUTEd-P08Bciq_LqQ"/>
+    </packageImport>
+    <packagedElement xmi:type="uml:Package" xmi:id="_LOqIEDLaEd2qeKRLMdIx_A" name="classes">
+      <packagedElement xmi:type="uml:Class" xmi:id="_oqZNUDLaEd2qeKRLMdIx_A" name="SMwithJunction" classifierBehavior="_y7KWsOYXEeCBL_IbXY9ofw">
+        <ownedComment xmi:type="uml:Comment" xmi:id="_cb-ncDemEeGPyrZ5I3hMlA" annotatedElement="_oqZNUDLaEd2qeKRLMdIx_A">
+          <body>State-machine support is enabled with a container rule</body>
+        </ownedComment>
+        <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_bi6iwJlGEeejksbGg7yusw" client="_oqZNUDLaEd2qeKRLMdIx_A">
+          <supplier xmi:type="uml:Interface" href="pathmap://DML_TRAFO/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
+          <contract xmi:type="uml:Interface" href="pathmap://DML_TRAFO/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
+        </interfaceRealization>
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_qxjWINnmEd2_cstbO2Uzgg" name="mult" specification="_4ZEZwHecEd6r18stFZxmFQ">
+          <ownedParameter xmi:type="uml:Parameter" xmi:id="_YURmYGkzEearUflqhq5Pgw" name="res" direction="return">
+            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YUTbkGkzEearUflqhq5Pgw" value="1"/>
+            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YUUCoGkzEearUflqhq5Pgw" value="1"/>
+          </ownedParameter>
+          <language>C/C++</language>
+          <body>cout &lt;&lt; &quot;a=&quot; &lt;&lt; a &lt;&lt; &quot; b=&quot; &lt;&lt; b &lt;&lt; &quot; a*b=&quot; &lt;&lt; a*b &lt;&lt; endl;
+return a*b;</body>
+        </ownedBehavior>
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ML-4AKI5Ed6FqJCjEUrkqQ" name="add" specification="_TbIjUJYlEd6G9q9hwr11bw">
+          <ownedParameter xmi:type="uml:Parameter" xmi:id="_YUV30GkzEearUflqhq5Pgw" name="res" direction="return">
+            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YUXF8GkzEearUflqhq5Pgw" value="1"/>
+            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YUYUEGkzEearUflqhq5Pgw" value="1"/>
+          </ownedParameter>
+          <language>C/C++</language>
+          <body>cout &lt;&lt; &quot;a=&quot; &lt;&lt; a &lt;&lt; &quot; b=&quot; &lt;&lt; b &lt;&lt; &quot; a+b=&quot; &lt;&lt; a+b &lt;&lt; endl;
+return a+b;</body>
+        </ownedBehavior>
+        <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_y7KWsOYXEeCBL_IbXY9ofw" name="SMSimple">
+          <region xmi:type="uml:Region" xmi:id="_0Lv00OYXEeCBL_IbXY9ofw" name="Region0">
+            <transition xmi:type="uml:Transition" xmi:id="_CLBzIOYYEeCBL_IbXY9ofw" name="Transition0" source="_1UVNgOYXEeCBL_IbXY9ofw" target="_53E_8OYXEeCBL_IbXY9ofw"/>
+            <transition xmi:type="uml:Transition" xmi:id="_Doi6AOYYEeCBL_IbXY9ofw" name="Transition1" source="_53E_8OYXEeCBL_IbXY9ofw" target="_7_1cMOYXEeCBL_IbXY9ofw">
+              <trigger xmi:type="uml:Trigger" xmi:id="_rHpXoOtoEeCjb9i0gG4phA" event="_rHoJgOtoEeCjb9i0gG4phA"/>
+            </transition>
+            <transition xmi:type="uml:Transition" xmi:id="_OH_UYOYYEeCBL_IbXY9ofw" name="Transition2" source="_7_1cMOYXEeCBL_IbXY9ofw" target="_53E_8OYXEeCBL_IbXY9ofw">
+              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_CAWpgSSoEeG6GJ4vU06VYQ" name="mult">
+                <language>C/C++</language>
+                <body>mult(3,5);&#xD;
+std::cout &lt;&lt;&quot;From State1 to State0 \n&quot;;</body>
+              </effect>
+              <trigger xmi:type="uml:Trigger" xmi:id="_-aQtACaeEeG4fZdVXNtoOQ" event="_-PMFcCaeEeG4fZdVXNtoOQ"/>
+            </transition>
+            <transition xmi:type="uml:Transition" xmi:id="_mJvoUOtqEeCzSsOGmQH2aA" name="Transition3" source="_53E_8OYXEeCBL_IbXY9ofw" target="_7_1cMOYXEeCBL_IbXY9ofw">
+              <trigger xmi:type="uml:Trigger" xmi:id="_8WepQHoDEeOA64V_YLapaA" event="_8WeCMHoDEeOA64V_YLapaA"/>
+            </transition>
+            <transition xmi:type="uml:Transition" xmi:id="_rdKgsCjmEeaJJusTB1aIbg" source="_53E_8OYXEeCBL_IbXY9ofw" target="_owZYcCjmEeaJJusTB1aIbg">
+              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_-EnkACjmEeaJJusTB1aIbg">
+                <language>C++</language>
+                <body>std::cout &lt;&lt; &quot;From State 0 to State 2\n&quot;;</body>
+              </effect>
+              <trigger xmi:type="uml:Trigger" xmi:id="_4eMuECjmEeaJJusTB1aIbg" event="_4WSIMCjmEeaJJusTB1aIbg"/>
+            </transition>
+            <transition xmi:type="uml:Transition" xmi:id="_BO7j4CjnEeaJJusTB1aIbg" source="_owZYcCjmEeaJJusTB1aIbg" target="__9lQwCjmEeaJJusTB1aIbg">
+              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_F9mScCjnEeaJJusTB1aIbg">
+                <language>C++</language>
+                <body>std::cout &lt;&lt;&quot;From State 2 to Junction1\n&quot;;</body>
+              </effect>
+              <trigger xmi:type="uml:Trigger" xmi:id="_GlK94CjpEeaJJusTB1aIbg" event="_-PMFcCaeEeG4fZdVXNtoOQ"/>
+            </transition>
+            <transition xmi:type="uml:Transition" xmi:id="_G1QTMCjnEeaJJusTB1aIbg" source="__9lQwCjmEeaJJusTB1aIbg" target="_53E_8OYXEeCBL_IbXY9ofw"/>
+            <transition xmi:type="uml:Transition" xmi:id="_HnKRQCjnEeaJJusTB1aIbg" guard="_KB4nQCjnEeaJJusTB1aIbg" source="__9lQwCjmEeaJJusTB1aIbg" target="_7_1cMOYXEeCBL_IbXY9ofw">
+              <ownedRule xmi:type="uml:Constraint" xmi:id="_KB4nQCjnEeaJJusTB1aIbg">
+                <specification xmi:type="uml:OpaqueExpression" xmi:id="_KB4nQSjnEeaJJusTB1aIbg">
+                  <language>C++</language>
+                  <body>true</body>
+                </specification>
+              </ownedRule>
+              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_QlLVICjnEeaJJusTB1aIbg">
+                <language>C++</language>
+                <body>std::cout &lt;&lt; &quot;From Junction1 to State 1 \n&quot;;</body>
+              </effect>
+            </transition>
+            <subvertex xmi:type="uml:Pseudostate" xmi:id="_1UVNgOYXEeCBL_IbXY9ofw" name="Initial0"/>
+            <subvertex xmi:type="uml:State" xmi:id="_53E_8OYXEeCBL_IbXY9ofw" name="State0"/>
+            <subvertex xmi:type="uml:State" xmi:id="_7_1cMOYXEeCBL_IbXY9ofw" name="State1"/>
+            <subvertex xmi:type="uml:State" xmi:id="_owZYcCjmEeaJJusTB1aIbg" name="State2"/>
+            <subvertex xmi:type="uml:Pseudostate" xmi:id="__9lQwCjmEeaJJusTB1aIbg" name="Junction" kind="junction"/>
+          </region>
+        </ownedBehavior>
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_YNCW4CgBEeapjr3l63b85A" name="run" specification="_VGsRACgBEeapjr3l63b85A">
+          <language>C/C++</language>
+          <body>cout &lt;&lt; &quot;call add (2, 3);&quot; &lt;&lt; endl;
+cout &lt;&lt; &quot;result: &quot; &lt;&lt; add (2, 3) &lt;&lt; endl;
+cout &lt;&lt; &quot;sleeping for 15 seconds (statemachine remains active);&quot; &lt;&lt; endl;
+sleep(15);
+</body>
+        </ownedBehavior>
+        <ownedOperation xmi:type="uml:Operation" xmi:id="_4ZEZwHecEd6r18stFZxmFQ" name="mult" method="_qxjWINnmEd2_cstbO2Uzgg">
+          <ownedParameter xmi:type="uml:Parameter" xmi:id="_fHa4sGk0EearUflqhq5Pgw" name="a">
+            <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+          </ownedParameter>
+          <ownedParameter xmi:type="uml:Parameter" xmi:id="_gA9v0Gk0EearUflqhq5Pgw" name="b">
+            <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+          </ownedParameter>
+          <ownedParameter xmi:type="uml:Parameter" xmi:id="_YUC84GkzEearUflqhq5Pgw" name="res" direction="return">
+            <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YUELAGkzEearUflqhq5Pgw" value="1"/>
+            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YUEyEGkzEearUflqhq5Pgw" value="1"/>
+          </ownedParameter>
+        </ownedOperation>
+        <ownedOperation xmi:type="uml:Operation" xmi:id="_TbIjUJYlEd6G9q9hwr11bw" name="add" method="_ML-4AKI5Ed6FqJCjEUrkqQ">
+          <ownedParameter xmi:type="uml:Parameter" xmi:id="_guLbIGk0EearUflqhq5Pgw" name="a">
+            <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+          </ownedParameter>
+          <ownedParameter xmi:type="uml:Parameter" xmi:id="_hTr78Gk0EearUflqhq5Pgw" name="b">
+            <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+          </ownedParameter>
+          <ownedParameter xmi:type="uml:Parameter" xmi:id="_YN7GwGkzEearUflqhq5Pgw" name="res" direction="return">
+            <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YOFe0GkzEearUflqhq5Pgw" value="1"/>
+            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YOGs8GkzEearUflqhq5Pgw" value="1"/>
+          </ownedParameter>
+        </ownedOperation>
+        <ownedOperation xmi:type="uml:Operation" xmi:id="_VGsRACgBEeapjr3l63b85A" name="run" method="_YNCW4CgBEeapjr3l63b85A"/>
+      </packagedElement>
+      <packagedElement xmi:type="uml:Package" xmi:id="_rGzqIOtoEeCjb9i0gG4phA" name="events">
+        <packagedElement xmi:type="uml:TimeEvent" xmi:id="_rHoJgOtoEeCjb9i0gG4phA" name="TE - {value=50, unit=ms}" isRelative="true">
+          <when xmi:type="uml:TimeExpression" xmi:id="_rHoJgetoEeCjb9i0gG4phA">
+            <expr xmi:type="uml:OpaqueExpression" xmi:id="_rHoJgutoEeCjb9i0gG4phA">
+              <language>Natural language</language>
+              <body>{value=50, unit=ms}</body>
+            </expr>
+          </when>
+        </packagedElement>
+        <packagedElement xmi:type="uml:TimeEvent" xmi:id="_-PMFcCaeEeG4fZdVXNtoOQ" name="TE - {value=500, unit=ms}" isRelative="true">
+          <when xmi:type="uml:TimeExpression" xmi:id="_-PMFcSaeEeG4fZdVXNtoOQ">
+            <expr xmi:type="uml:OpaqueExpression" xmi:id="_-PMFciaeEeG4fZdVXNtoOQ">
+              <language>Natural language</language>
+              <body>{value=500, unit=ms}</body>
+            </expr>
+          </when>
+        </packagedElement>
+        <packagedElement xmi:type="uml:CallEvent" xmi:id="_8WeCMHoDEeOA64V_YLapaA" name="CE - CServer_impl - add" operation="_TbIjUJYlEd6G9q9hwr11bw"/>
+        <packagedElement xmi:type="uml:TimeEvent" xmi:id="_4WSIMCjmEeaJJusTB1aIbg" name="TE - {value=25, unit=ms}" isRelative="true">
+          <when xmi:type="uml:TimeExpression" xmi:id="_4WSIMSjmEeaJJusTB1aIbg">
+            <expr xmi:type="uml:OpaqueExpression" xmi:id="_4WSIMijmEeaJJusTB1aIbg">
+              <language>Natural language</language>
+              <body>{value=25, unit=ms}</body>
+            </expr>
+          </when>
+        </packagedElement>
+      </packagedElement>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Package" xmi:id="_234GEDLiEd2RVeNawwNNzg" name="deployment">
+      <ownedComment xmi:type="uml:Comment" xmi:id="_ssEwYJl4Eee5eLTvguUsew" annotatedElement="_GYFZYG-QEea89JTVlr8RHA">
+        <body>The deployment plan with the default transformation chain. Right-click on the deployment plan and choose
+Designer -> Generate Deployment Models and Code.
+</body>
+      </ownedComment>
+      <packagedElement xmi:type="uml:Package" xmi:id="_GYFZYG-QEea89JTVlr8RHA" name="SMwithJunctionDepPlan">
+        <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_GYJDwG-QEea89JTVlr8RHA" name="mainInstance" classifier="_oqZNUDLaEd2qeKRLMdIx_A"/>
+      </packagedElement>
+    </packagedElement>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_O6TiIjLUEd26WNosUASSSw">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_O6TiIzLUEd26WNosUASSSw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard#/"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_GcC0cAHtEd6HSdiss9GQ0A">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Gd1kMAHtEd6HSdiss9GQ0A" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_zi-sUE2sEeGl8qrc8BM7vA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0QJUUE2sEeGl8qrc8BM7vA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/MARTE/1#//MARTE_Foundations/Alloc"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://Papyrus_PROFILES/MARTE.profile.uml#_ar8OsAPMEdyuUt-4qHuVvQ"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_YPbKAFl5EeagP584YGQRWg">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_YPc_MFl5EeagP584YGQRWg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/Transformation/1#/"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://TRAFO_PROFILE/Transformation.profile.uml#_fPDsIBa-EearhdjjJ6cVzQ"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_1qZk0Fl6EeaMOsb_YMu4Rg">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1qhgoFl6EeaMOsb_YMu4Rg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/Deployment/1#/"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://DEP_PROFILE/Deployment.profile.uml#_gPDsIBa-EearhdjjJ6cVzQ"/>
+    </profileApplication>
+  </uml:Model>
+  <C_Cpp:Include xmi:id="_EaeJMNp0EeKd1ax3yaXM9w" body="#include &lt;iostream>&#xA;using namespace std;&#xA;&#xA;#include &lt;unistd.h>&#xA;" base_class="_oqZNUDLaEd2qeKRLMdIx_A"/>
+  <Deployment:DeploymentPlan xmi:id="_fDaRkG-6Eea89JTVlr8RHA" base_Package="_GYFZYG-QEea89JTVlr8RHA"/>
+</xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSM/SimpleSM.notation b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSM/SimpleSM.notation
index 38711c8..b75f07a 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSM/SimpleSM.notation
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSM/SimpleSM.notation
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
   <notation:Diagram xmi:id="_6FvnwGONEd-seu3qyZgHfg" type="PapyrusUMLClassDiagram" name="deployment plans" measurementUnit="Pixel">
     <children xmi:type="notation:Shape" xmi:id="_RzEEkG-0Eea89JTVlr8RHA" type="Package_Shape">
       <children xmi:type="notation:DecorationNode" xmi:id="_RzFSsG-0Eea89JTVlr8RHA" type="Package_NameLabel"/>
@@ -10,23 +10,6 @@
       <element xmi:type="uml:Package" href="SimpleSM.uml#_GYFZYG-QEea89JTVlr8RHA"/>
       <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RzEEkW-0Eea89JTVlr8RHA" x="59" y="62" width="242" height="110"/>
     </children>
-    <children xmi:type="notation:Shape" xmi:id="_dWakQG-6Eea89JTVlr8RHA" type="Package_Shape">
-      <children xmi:type="notation:DecorationNode" xmi:id="_dWbLUG-6Eea89JTVlr8RHA" type="Package_NameLabel"/>
-      <children xmi:type="notation:BasicCompartment" xmi:id="_dWbLUW-6Eea89JTVlr8RHA" type="Package_PackagedElementCompartment">
-        <styles xmi:type="notation:TitleStyle" xmi:id="_dWbLUm-6Eea89JTVlr8RHA"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dWbLU2-6Eea89JTVlr8RHA"/>
-      </children>
-      <element xmi:type="uml:Package" href="SimpleSM.uml#_MfLhYG-6Eea89JTVlr8RHA"/>
-      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dWakQW-6Eea89JTVlr8RHA" x="368" y="62" width="233" height="109"/>
-    </children>
-    <children xmi:type="notation:Shape" xmi:id="_dWjuM2-6Eea89JTVlr8RHA" type="StereotypeComment">
-      <styles xmi:type="notation:TitleStyle" xmi:id="_dWjuNG-6Eea89JTVlr8RHA"/>
-      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_dWjuNm-6Eea89JTVlr8RHA" name="BASE_ELEMENT">
-        <eObjectValue xmi:type="uml:Package" href="SimpleSM.uml#_MfLhYG-6Eea89JTVlr8RHA"/>
-      </styles>
-      <element xsi:nil="true"/>
-      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dWjuNW-6Eea89JTVlr8RHA" x="200"/>
-    </children>
     <children xmi:type="notation:Shape" xmi:id="_fDkCkG-6Eea89JTVlr8RHA" type="StereotypeComment">
       <styles xmi:type="notation:TitleStyle" xmi:id="_fDkCkW-6Eea89JTVlr8RHA"/>
       <styles xmi:type="notation:EObjectValueStyle" xmi:id="_fDkCk2-6Eea89JTVlr8RHA" name="BASE_ELEMENT">
@@ -35,19 +18,14 @@
       <element xsi:nil="true"/>
       <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fDkCkm-6Eea89JTVlr8RHA" x="259" y="62"/>
     </children>
+    <children xmi:type="notation:Shape" xmi:id="_ssMsMJl4Eee5eLTvguUsew" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_ssPIcJl4Eee5eLTvguUsew" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="SimpleSM.uml#_ssEwYJl4Eee5eLTvguUsew"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ssMsMZl4Eee5eLTvguUsew" x="380" y="80" width="281" height="81"/>
+    </children>
     <styles xmi:type="notation:DiagramStyle" xmi:id="_6FvnwWONEd-seu3qyZgHfg"/>
     <styles xmi:type="notation:StringValueStyle" xmi:id="_X3OnwGkLEeWakucY9QdE0g" name="diagram_compatibility_version" stringValue="1.2.0"/>
     <element xmi:type="uml:Package" href="SimpleSM.uml#_234GEDLiEd2RVeNawwNNzg"/>
-    <edges xmi:type="notation:Connector" xmi:id="_dWkVQG-6Eea89JTVlr8RHA" type="StereotypeCommentLink" source="_dWakQG-6Eea89JTVlr8RHA" target="_dWjuM2-6Eea89JTVlr8RHA">
-      <styles xmi:type="notation:FontStyle" xmi:id="_dWkVQW-6Eea89JTVlr8RHA"/>
-      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_dWkVRW-6Eea89JTVlr8RHA" name="BASE_ELEMENT">
-        <eObjectValue xmi:type="uml:Package" href="SimpleSM.uml#_MfLhYG-6Eea89JTVlr8RHA"/>
-      </styles>
-      <element xsi:nil="true"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dWkVQm-6Eea89JTVlr8RHA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
-      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dWkVQ2-6Eea89JTVlr8RHA"/>
-      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dWkVRG-6Eea89JTVlr8RHA"/>
-    </edges>
     <edges xmi:type="notation:Connector" xmi:id="_fDkClG-6Eea89JTVlr8RHA" type="StereotypeCommentLink" source="_RzEEkG-0Eea89JTVlr8RHA" target="_fDkCkG-6Eea89JTVlr8RHA">
       <styles xmi:type="notation:FontStyle" xmi:id="_fDkClW-6Eea89JTVlr8RHA"/>
       <styles xmi:type="notation:EObjectValueStyle" xmi:id="_fDkCmW-6Eea89JTVlr8RHA" name="BASE_ELEMENT">
@@ -58,8 +36,15 @@
       <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fDkCl2-6Eea89JTVlr8RHA"/>
       <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fDkCmG-6Eea89JTVlr8RHA"/>
     </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_-2BYUJl4Eee5eLTvguUsew" type="Comment_AnnotatedElementEdge" source="_ssMsMJl4Eee5eLTvguUsew" target="_RzEEkG-0Eea89JTVlr8RHA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_-2BYUZl4Eee5eLTvguUsew"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-2BYUpl4Eee5eLTvguUsew" points="[380, 140, -643984, -643984]$[301, 140, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-213sJl4Eee5eLTvguUsew" id="(0.0,0.625)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-213sZl4Eee5eLTvguUsew" id="(1.0,0.7090909090909091)"/>
+    </edges>
   </notation:Diagram>
-  <notation:Diagram xmi:id="_0MCIsOYXEeCBL_IbXY9ofw" type="PapyrusUMLStateMachineDiagram" name="SmDiagramServer" measurementUnit="Pixel">
+  <notation:Diagram xmi:id="_0MCIsOYXEeCBL_IbXY9ofw" type="PapyrusUMLStateMachineDiagram" name="SM diagram" measurementUnit="Pixel">
     <children xmi:type="notation:Shape" xmi:id="_0MCIseYXEeCBL_IbXY9ofw" type="StateMachine_Shape" fontName="Sans Serif" lineColor="0">
       <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0MCIsuYXEeCBL_IbXY9ofw" source="ShadowFigure">
         <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0MCIs-YXEeCBL_IbXY9ofw" key="ShadowFigure_Value" value="false"/>
@@ -75,7 +60,7 @@
         <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LKHvoHn3EeOfttgBwSq-Ig" key="gradient" value="true"/>
       </eAnnotations>
       <children xmi:type="notation:DecorationNode" xmi:id="_0MCIuOYXEeCBL_IbXY9ofw" type="StateMachine_NameLabel">
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIueYXEeCBL_IbXY9ofw" width="872" height="20"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIueYXEeCBL_IbXY9ofw" width="821" height="19"/>
       </children>
       <children xmi:type="notation:BasicCompartment" xmi:id="_JVovMPX4EeWa_pjn9guopQ" type="StateMachine_RegionCompartment">
         <children xmi:type="notation:Shape" xmi:id="_0MCIu-YXEeCBL_IbXY9ofw" type="Region_Shape" fontName="Sans Serif" lineColor="0" lineWidth="1">
@@ -129,20 +114,20 @@
                 <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_53f2suYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
               </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_53f2s-YXEeCBL_IbXY9ofw" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7PRh8OYXEeCBL_IbXY9ofw" width="99" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7PRh8OYXEeCBL_IbXY9ofw" width="99" height="19"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_JVp9UPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
                 <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PvBTIPX4EeWa_pjn9guopQ" source="PapyrusCSSForceValue">
                   <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PvB6MPX4EeWa_pjn9guopQ" key="visible" value="true"/>
                 </eAnnotations>
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53f2teYXEeCBL_IbXY9ofw" y="20" width="99" height="48"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53f2teYXEeCBL_IbXY9ofw" y="19" width="99" height="48"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_h9cHkFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
                 <styles xmi:type="notation:TitleStyle" xmi:id="_h9cHkVbmEeObiJAlOlmjpQ"/>
                 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9cHklbmEeObiJAlOlmjpQ"/>
               </children>
               <element xmi:type="uml:State" href="SimpleSM.uml#_53E_8OYXEeCBL_IbXY9ofw"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53eokeYXEeCBL_IbXY9ofw" x="259" y="37" width="99" height="68"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53eokeYXEeCBL_IbXY9ofw" x="359" y="37" width="99" height="67"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_8AQS8OYXEeCBL_IbXY9ofw" type="State_Shape" fontName="Sans Serif" lineColor="0">
               <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_8AQ6AOYXEeCBL_IbXY9ofw" source="ShadowFigure">
@@ -155,40 +140,35 @@
                 <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_8ARhFOYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
               </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_8ARhFeYXEeCBL_IbXY9ofw" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8A06sOYXEeCBL_IbXY9ofw" width="100" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8A06sOYXEeCBL_IbXY9ofw" width="100" height="19"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_JVrLcPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8ARhF-YXEeCBL_IbXY9ofw" y="20" width="100" height="42"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8ARhF-YXEeCBL_IbXY9ofw" y="19" width="100" height="42"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_h9ej0FbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
                 <styles xmi:type="notation:TitleStyle" xmi:id="_h9ej0VbmEeObiJAlOlmjpQ"/>
                 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9ej0lbmEeObiJAlOlmjpQ"/>
               </children>
               <element xmi:type="uml:State" href="SimpleSM.uml#_7_1cMOYXEeCBL_IbXY9ofw"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8AQS8eYXEeCBL_IbXY9ofw" x="259" y="181" width="100" height="62"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8AQS8eYXEeCBL_IbXY9ofw" x="359" y="181" width="100" height="61"/>
             </children>
-            <children xmi:type="notation:Shape" xmi:id="_oxRiMCjmEeaJJusTB1aIbg" type="State_Shape">
-              <children xmi:type="notation:DecorationNode" xmi:id="_oxSwUCjmEeaJJusTB1aIbg" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p6M5ICjmEeaJJusTB1aIbg" width="79"/>
-              </children>
-              <children xmi:type="notation:DecorationNode" xmi:id="_oxTXYCjmEeaJJusTB1aIbg" type="State_FloatingNameLabel">
-                <layoutConstraint xmi:type="notation:Location" xmi:id="_oxTXYSjmEeaJJusTB1aIbg" x="40"/>
-              </children>
-              <children xmi:type="notation:BasicCompartment" xmi:id="_oxTXYijmEeaJJusTB1aIbg" type="State_RegionCompartment">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oxTXYyjmEeaJJusTB1aIbg" y="-1" width="79"/>
-              </children>
-              <element xmi:type="uml:State" href="SimpleSM.uml#_owZYcCjmEeaJJusTB1aIbg"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oxRiMSjmEeaJJusTB1aIbg" x="510" y="36" width="79" height="59"/>
+            <children xmi:type="notation:Shape" xmi:id="_bS8r8Jl5Eee5eLTvguUsew" type="Comment_Shape">
+              <children xmi:type="notation:DecorationNode" xmi:id="_bS9TAJl5Eee5eLTvguUsew" type="Comment_BodyLabel"/>
+              <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_bS8r8Zl5Eee5eLTvguUsew"/>
+              <element xmi:type="uml:Comment" href="SimpleSM.uml#_bSrmMJl5Eee5eLTvguUsew"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bS8r8pl5Eee5eLTvguUsew" x="559" y="21" width="221" height="81"/>
             </children>
-            <children xmi:type="notation:Shape" xmi:id="__-OxACjmEeaJJusTB1aIbg" type="Pseudostate_JunctionShape">
-              <children xmi:type="notation:DecorationNode" xmi:id="__-PYECjmEeaJJusTB1aIbg" type="Pseudostate_JunctionFloatingNameLabel">
-                <layoutConstraint xmi:type="notation:Location" xmi:id="__-PYESjmEeaJJusTB1aIbg" x="26" y="3"/>
-              </children>
-              <children xmi:type="notation:DecorationNode" xmi:id="__-PYEijmEeaJJusTB1aIbg" type="Pseudostate_JunctionStereotypeLabel">
-                <layoutConstraint xmi:type="notation:Location" xmi:id="__-PYEyjmEeaJJusTB1aIbg" x="25" y="-10"/>
-              </children>
-              <element xmi:type="uml:Pseudostate" href="SimpleSM.uml#__9lQwCjmEeaJJusTB1aIbg"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="__-OxASjmEeaJJusTB1aIbg" x="539" y="162"/>
+            <children xmi:type="notation:Shape" xmi:id="_l-0_0Jl5Eee5eLTvguUsew" type="Comment_Shape">
+              <children xmi:type="notation:DecorationNode" xmi:id="_l-1m4Jl5Eee5eLTvguUsew" type="Comment_BodyLabel"/>
+              <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_l-0_0Zl5Eee5eLTvguUsew"/>
+              <element xmi:type="uml:Comment" href="SimpleSM.uml#_l-lvQJl5Eee5eLTvguUsew"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l-0_0pl5Eee5eLTvguUsew" x="559" y="181" width="221" height="81"/>
+            </children>
+            <children xmi:type="notation:Shape" xmi:id="_5pksIJl5Eee5eLTvguUsew" type="Comment_Shape">
+              <children xmi:type="notation:DecorationNode" xmi:id="_5plTMJl5Eee5eLTvguUsew" type="Comment_BodyLabel"/>
+              <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_5pksIZl5Eee5eLTvguUsew"/>
+              <element xmi:type="uml:Comment" href="SimpleSM.uml#_5pWCoJl5Eee5eLTvguUsew"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5pksIpl5Eee5eLTvguUsew" x="39" y="241" width="201" height="61"/>
             </children>
             <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIxeYXEeCBL_IbXY9ofw"/>
           </children>
@@ -197,9 +177,9 @@
             <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9XPElbmEeObiJAlOlmjpQ"/>
           </children>
           <element xmi:type="uml:Region" href="SimpleSM.uml#_0Lv00OYXEeCBL_IbXY9ofw"/>
-          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIxuYXEeCBL_IbXY9ofw" width="872" height="331"/>
+          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIxuYXEeCBL_IbXY9ofw" width="821" height="332"/>
         </children>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIx-YXEeCBL_IbXY9ofw" y="20" width="872" height="331"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIx-YXEeCBL_IbXY9ofw" y="19" width="821" height="332"/>
       </children>
       <children xmi:type="notation:BasicCompartment" xmi:id="_h9ULwFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
         <styles xmi:type="notation:TitleStyle" xmi:id="_h9ULwVbmEeObiJAlOlmjpQ"/>
@@ -207,7 +187,7 @@
       </children>
       <styles xmi:type="notation:StringListValueStyle" xmi:id="_v51OQHn2EeOfttgBwSq-Ig" name="cssClass"/>
       <element xmi:type="uml:StateMachine" href="SimpleSM.uml#_y7KWsOYXEeCBL_IbXY9ofw"/>
-      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIyOYXEeCBL_IbXY9ofw" x="40" y="40" width="872" height="351"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIyOYXEeCBL_IbXY9ofw" x="40" y="40" width="821" height="351"/>
     </children>
     <styles xmi:type="notation:DiagramStyle" xmi:id="_0MCIyeYXEeCBL_IbXY9ofw"/>
     <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_B2g2QHn3EeOfttgBwSq-Ig" name="css_stylesheets" eObjectListValue="_B2g2QXn3EeOfttgBwSq-Ig"/>
@@ -215,13 +195,16 @@
     <element xmi:type="uml:StateMachine" href="SimpleSM.uml#_y7KWsOYXEeCBL_IbXY9ofw"/>
     <edges xmi:type="notation:Connector" xmi:id="_CLUHAOYYEeCBL_IbXY9ofw" type="Transition_Edge" source="_1U-twOYXEeCBL_IbXY9ofw" target="_53eokOYXEeCBL_IbXY9ofw" lineColor="0">
       <children xmi:type="notation:DecorationNode" xmi:id="_CLV8MOYYEeCBL_IbXY9ofw" visible="false" type="Transition_NameLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_CLV8MeYYEeCBL_IbXY9ofw" x="-6"/>
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_jvtrMJntEeeCzKHJj7Wq7w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_CLV8MeYYEeCBL_IbXY9ofw" x="-5" y="1"/>
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_CLV8MuYYEeCBL_IbXY9ofw" type="Transition_GuardLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_jwJwEJntEeeCzKHJj7Wq7w" name="IS_UPDATED_POSITION" booleanValue="true"/>
         <layoutConstraint xmi:type="notation:Location" xmi:id="_CLV8M-YYEeCBL_IbXY9ofw"/>
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_CLV8NOYYEeCBL_IbXY9ofw" type="Transition_StereotypeLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_CLV8NeYYEeCBL_IbXY9ofw" y="60"/>
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_jwnqIJntEeeCzKHJj7Wq7w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_CLV8NeYYEeCBL_IbXY9ofw" x="1" y="58"/>
       </children>
       <styles xmi:type="notation:FontStyle" xmi:id="_CLUHAeYYEeCBL_IbXY9ofw" fontName="Sans Serif"/>
       <element xmi:type="uml:Transition" href="SimpleSM.uml#_CLBzIOYYEeCBL_IbXY9ofw"/>
@@ -230,33 +213,39 @@
     </edges>
     <edges xmi:type="notation:Connector" xmi:id="_Doz_wOYYEeCBL_IbXY9ofw" type="Transition_Edge" source="_53eokOYXEeCBL_IbXY9ofw" target="_8AQS8OYXEeCBL_IbXY9ofw" lineColor="0">
       <children xmi:type="notation:DecorationNode" xmi:id="_Do0m0OYYEeCBL_IbXY9ofw" visible="false" type="Transition_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_juRgwJntEeeCzKHJj7Wq7w" name="IS_UPDATED_POSITION" booleanValue="true"/>
         <layoutConstraint xmi:type="notation:Location" xmi:id="_Do0m0eYYEeCBL_IbXY9ofw"/>
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_Do0m0uYYEeCBL_IbXY9ofw" type="Transition_GuardLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_Do0m0-YYEeCBL_IbXY9ofw" x="-6" y="112"/>
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_juuzwJntEeeCzKHJj7Wq7w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Do0m0-YYEeCBL_IbXY9ofw" x="-7" y="118"/>
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_Do0m1OYYEeCBL_IbXY9ofw" type="Transition_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_jvKRkJntEeeCzKHJj7Wq7w" name="IS_UPDATED_POSITION" booleanValue="true"/>
         <layoutConstraint xmi:type="notation:Location" xmi:id="_Do0m1eYYEeCBL_IbXY9ofw" y="60"/>
       </children>
       <styles xmi:type="notation:FontStyle" xmi:id="_Doz_weYYEeCBL_IbXY9ofw" fontName="Sans Serif"/>
       <element xmi:type="uml:Transition" href="SimpleSM.uml#_Doi6AOYYEeCBL_IbXY9ofw"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Doz_wuYYEeCBL_IbXY9ofw" points="[4, 9, 0, -45]$[1, 47, -3, -7]"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Doz_wuYYEeCBL_IbXY9ofw" points="[423, 170, -643984, -643984]$[417, 233, -643984, -643984]"/>
       <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DpacsOYYEeCBL_IbXY9ofw" id="(0.2,0.9846153846153847)"/>
       <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DpacseYYEeCBL_IbXY9ofw" id="(0.2,0.0)"/>
     </edges>
     <edges xmi:type="notation:Connector" xmi:id="_OIPMAOYYEeCBL_IbXY9ofw" type="Transition_Edge" source="_8AQS8OYXEeCBL_IbXY9ofw" target="_53eokOYXEeCBL_IbXY9ofw" lineColor="0">
       <children xmi:type="notation:DecorationNode" xmi:id="_OIPzEOYYEeCBL_IbXY9ofw" visible="false" type="Transition_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_jsxr8JntEeeCzKHJj7Wq7w" name="IS_UPDATED_POSITION" booleanValue="true"/>
         <layoutConstraint xmi:type="notation:Location" xmi:id="_OIQaIOYYEeCBL_IbXY9ofw"/>
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_OIQaIeYYEeCBL_IbXY9ofw" type="Transition_GuardLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_OIQaIuYYEeCBL_IbXY9ofw" x="-16" y="-10"/>
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_jtQNEJntEeeCzKHJj7Wq7w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_OIQaIuYYEeCBL_IbXY9ofw" x="-4" y="159"/>
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_OIQaI-YYEeCBL_IbXY9ofw" type="Transition_StereotypeLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_OIQaJOYYEeCBL_IbXY9ofw" y="60"/>
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_jtxKcJntEeeCzKHJj7Wq7w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_OIQaJOYYEeCBL_IbXY9ofw" x="-1" y="58"/>
       </children>
       <styles xmi:type="notation:FontStyle" xmi:id="_OIPMAeYYEeCBL_IbXY9ofw" fontName="Sans Serif"/>
       <element xmi:type="uml:Transition" href="SimpleSM.uml#_OH_UYOYYEeCBL_IbXY9ofw"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OIPMAuYYEeCBL_IbXY9ofw" points="[-4, -31, 8, 88]$[4, -128, 16, -9]"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OIPMAuYYEeCBL_IbXY9ofw" points="[476, 209, -643984, -643984]$[495, 152, -643984, -643984]"/>
       <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OIxXgOYYEeCBL_IbXY9ofw" id="(0.8,0.0)"/>
       <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OIxXgeYYEeCBL_IbXY9ofw" id="(0.8,0.9846153846153847)"/>
     </edges>
@@ -278,73 +267,30 @@
       </children>
       <styles xmi:type="notation:FontStyle" xmi:id="_mPjVYetqEeCzSsOGmQH2aA" fontName=""/>
       <element xmi:type="uml:Transition" href="SimpleSM.uml#_mJvoUOtqEeCzSsOGmQH2aA"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mPjVYutqEeCzSsOGmQH2aA" points="[299, 171, -643984, -643984]$[147, 171, -643984, -643984]$[147, 272, -643984, -643984]$[299, 272, -643984, -643984]"/>
-      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mPm_wOtqEeCzSsOGmQH2aA" id="(0.0,0.6915887850467289)"/>
-      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mPm_wetqEeCzSsOGmQH2aA" id="(0.0,0.5)"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mPjVYutqEeCzSsOGmQH2aA" points="[400, 140, -643984, -643984]$[160, 140, -643984, -643984]$[160, 260, -643984, -643984]$[400, 260, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mPm_wOtqEeCzSsOGmQH2aA" id="(0.0,0.6567164179104478)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mPm_wetqEeCzSsOGmQH2aA" id="(0.0,0.32786885245901637)"/>
     </edges>
-    <edges xmi:type="notation:Connector" xmi:id="_rgm2QCjmEeaJJusTB1aIbg" type="Transition_Edge" source="_53eokOYXEeCBL_IbXY9ofw" target="_oxRiMCjmEeaJJusTB1aIbg">
-      <children xmi:type="notation:DecorationNode" xmi:id="_rgndUCjmEeaJJusTB1aIbg" type="Transition_NameLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_rgndUSjmEeaJJusTB1aIbg"/>
-      </children>
-      <children xmi:type="notation:DecorationNode" xmi:id="_rgndUijmEeaJJusTB1aIbg" type="Transition_GuardLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_rgndUyjmEeaJJusTB1aIbg" x="-86" y="-52"/>
-      </children>
-      <children xmi:type="notation:DecorationNode" xmi:id="_rgndVCjmEeaJJusTB1aIbg" type="Transition_StereotypeLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_rgndVSjmEeaJJusTB1aIbg" y="60"/>
-      </children>
-      <styles xmi:type="notation:FontStyle" xmi:id="_rgm2QSjmEeaJJusTB1aIbg"/>
-      <element xmi:type="uml:Transition" href="SimpleSM.uml#_rdKgsCjmEeaJJusTB1aIbg"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rgm2QijmEeaJJusTB1aIbg" points="[399, 131, -643984, -643984]$[551, 131, -643984, -643984]"/>
-      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rhuQkCjmEeaJJusTB1aIbg" id="(1.0,0.5)"/>
-      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rhu3oCjmEeaJJusTB1aIbg" id="(0.0,0.5932203389830508)"/>
+    <edges xmi:type="notation:Connector" xmi:id="_wxZKgJl5Eee5eLTvguUsew" type="Comment_AnnotatedElementEdge" source="_l-0_0Jl5Eee5eLTvguUsew" target="_8AQS8OYXEeCBL_IbXY9ofw" routing="Rectilinear">
+      <styles xmi:type="notation:FontStyle" xmi:id="_wxZKgZl5Eee5eLTvguUsew"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wxZKgpl5Eee5eLTvguUsew" points="[600, 260, -643984, -643984]$[500, 260, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wyGVIJl5Eee5eLTvguUsew" id="(0.0,0.24691358024691357)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wyGVIZl5Eee5eLTvguUsew" id="(1.0,0.32786885245901637)"/>
     </edges>
-    <edges xmi:type="notation:Connector" xmi:id="_BPTXUCjnEeaJJusTB1aIbg" type="Transition_Edge" source="_oxRiMCjmEeaJJusTB1aIbg" target="__-OxACjmEeaJJusTB1aIbg">
-      <children xmi:type="notation:DecorationNode" xmi:id="_BPTXUyjnEeaJJusTB1aIbg" type="Transition_NameLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_BPTXVCjnEeaJJusTB1aIbg"/>
-      </children>
-      <children xmi:type="notation:DecorationNode" xmi:id="_BPTXVSjnEeaJJusTB1aIbg" type="Transition_GuardLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_BPTXVijnEeaJJusTB1aIbg" x="-10" y="-25"/>
-      </children>
-      <children xmi:type="notation:DecorationNode" xmi:id="_BPTXVyjnEeaJJusTB1aIbg" type="Transition_StereotypeLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_BPTXWCjnEeaJJusTB1aIbg" y="60"/>
-      </children>
-      <styles xmi:type="notation:FontStyle" xmi:id="_BPTXUSjnEeaJJusTB1aIbg"/>
-      <element xmi:type="uml:Transition" href="SimpleSM.uml#_BO7j4CjnEeaJJusTB1aIbg"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BPTXUijnEeaJJusTB1aIbg" points="[590, 155, -643984, -643984]$[590, 222, -643984, -643984]"/>
-      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BP6bUCjnEeaJJusTB1aIbg" id="(0.4936708860759494,1.0)"/>
-      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BP6bUSjnEeaJJusTB1aIbg" id="(0.5,0.0)"/>
+    <edges xmi:type="notation:Connector" xmi:id="_xsgH4Jl5Eee5eLTvguUsew" type="Comment_AnnotatedElementEdge" source="_bS8r8Jl5Eee5eLTvguUsew" target="_53eokOYXEeCBL_IbXY9ofw" routing="Rectilinear">
+      <styles xmi:type="notation:FontStyle" xmi:id="_xsgH4Zl5Eee5eLTvguUsew"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xsgH4pl5Eee5eLTvguUsew" points="[600, 120, -643984, -643984]$[499, 120, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xtGk0Jl5Eee5eLTvguUsew" id="(0.0,0.4166666666666667)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xtGk0Zl5Eee5eLTvguUsew" id="(1.0,0.3582089552238806)"/>
     </edges>
-    <edges xmi:type="notation:Connector" xmi:id="_G11iACjnEeaJJusTB1aIbg" type="Transition_Edge" source="__-OxACjmEeaJJusTB1aIbg" target="_53eokOYXEeCBL_IbXY9ofw">
-      <children xmi:type="notation:DecorationNode" xmi:id="_G11iAyjnEeaJJusTB1aIbg" type="Transition_NameLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_G11iBCjnEeaJJusTB1aIbg"/>
-      </children>
-      <children xmi:type="notation:DecorationNode" xmi:id="_G11iBSjnEeaJJusTB1aIbg" type="Transition_GuardLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_G11iBijnEeaJJusTB1aIbg"/>
-      </children>
-      <children xmi:type="notation:DecorationNode" xmi:id="_G11iByjnEeaJJusTB1aIbg" type="Transition_StereotypeLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_G11iCCjnEeaJJusTB1aIbg" y="60"/>
-      </children>
-      <styles xmi:type="notation:FontStyle" xmi:id="_G11iASjnEeaJJusTB1aIbg"/>
-      <element xmi:type="uml:Transition" href="SimpleSM.uml#_G1QTMCjnEeaJJusTB1aIbg"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_G11iAijnEeaJJusTB1aIbg" points="[583, 227, -643984, -643984]$[397, 159, -643984, -643984]"/>
-      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_G2gQYCjnEeaJJusTB1aIbg" id="(0.15,0.3863945578231304)"/>
-      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_G2g3cCjnEeaJJusTB1aIbg" id="(0.9797979797979798,0.9117647058823529)"/>
-    </edges>
-    <edges xmi:type="notation:Connector" xmi:id="_HndzQCjnEeaJJusTB1aIbg" type="Transition_Edge" source="__-OxACjmEeaJJusTB1aIbg" target="_8AQS8OYXEeCBL_IbXY9ofw">
-      <children xmi:type="notation:DecorationNode" xmi:id="_HndzQyjnEeaJJusTB1aIbg" type="Transition_NameLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_HndzRCjnEeaJJusTB1aIbg"/>
-      </children>
-      <children xmi:type="notation:DecorationNode" xmi:id="_HndzRSjnEeaJJusTB1aIbg" type="Transition_GuardLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_HndzRijnEeaJJusTB1aIbg" x="18" y="-33"/>
-      </children>
-      <children xmi:type="notation:DecorationNode" xmi:id="_HndzRyjnEeaJJusTB1aIbg" type="Transition_StereotypeLabel">
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_HndzSCjnEeaJJusTB1aIbg" y="60"/>
-      </children>
-      <styles xmi:type="notation:FontStyle" xmi:id="_HndzQSjnEeaJJusTB1aIbg"/>
-      <element xmi:type="uml:Transition" href="SimpleSM.uml#_HnKRQCjnEeaJJusTB1aIbg"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HndzQijnEeaJJusTB1aIbg" points="[585, 234, -643984, -643984]$[400, 277, -643984, -643984]"/>
-      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HoK94CjnEeaJJusTB1aIbg" id="(0.27479674796748554,0.8330623306233065)"/>
-      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HoLk8CjnEeaJJusTB1aIbg" id="(1.0,0.5806451612903226)"/>
+    <edges xmi:type="notation:Connector" xmi:id="_H1CFQJl6Eee5eLTvguUsew" type="Comment_AnnotatedElementEdge" source="_5pksIJl5Eee5eLTvguUsew" target="_mPjVYOtqEeCzSsOGmQH2aA" routing="Rectilinear">
+      <styles xmi:type="notation:FontStyle" xmi:id="_H1CFQZl6Eee5eLTvguUsew"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_H1CFQpl6Eee5eLTvguUsew" points="[200, 300, -643984, -643984]$[200, 260, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H1pJQJl6Eee5eLTvguUsew" id="(0.5970149253731343,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H1pwUJl6Eee5eLTvguUsew" id="(0.3270440251572327,0.875)"/>
     </edges>
   </notation:Diagram>
   <css:EmbeddedStyleSheet xmi:id="_B2g2QXn3EeOfttgBwSq-Ig" label="Animation" content=":animated{&#xA;&#x9;/*Edge of the shape affected by the pseudo selector*/&#xA;&#x9;lineColor: #c00000;&#xA;&#x9;lineWidth: 3px;&#xA;&#x9;/*Content of the shape affected by the pseudo selector*/&#xA;&#x9;fillColor: #c00000;&#xA;&#x9;bold: true;&#xA;} &#xA;&#xA;:suspended{&#xA;&#x9;/*Edge of the shape affected by the pseudo selector*/&#xA;&#x9;lineColor: #c00000;&#xA;&#x9;lineWidth: 2px;&#xA;&#x9;/*Content of the shape affected by the pseudo selector*/&#xA;&#x9;fillColor: #fab953;&#xA;&#x9;bold: true;&#xA;}&#xA;&#xA;:visited{&#xA;&#x9;/*Edge of the shape affected by the pseudo selector*/&#xA;&#x9;lineColor: #92d050;&#xA;&#x9;lineWidth: 2px;&#xA;&#x9;/*Content of the shape affected by the pseudo selector*/&#xA;&#x9;fillColor: #92d050;&#xA;}&#xA;Transition > Label {&#xA;&#x9;bodyCutLength: 1;&#xA;&#x9;indicateParameters: true;&#xA;&#x9;lineBreakBeforeEffect : true;&#xA;}"/>
@@ -362,10 +308,6 @@
         <layoutConstraint xmi:type="notation:Bounds" xmi:id="_a2TyF2-FEea89JTVlr8RHA"/>
       </children>
       <children xmi:type="notation:BasicCompartment" xmi:id="_a2TyGG-FEea89JTVlr8RHA" type="Class_OperationCompartment">
-        <children xmi:type="notation:Shape" xmi:id="_lOZnQG-FEea89JTVlr8RHA" type="Operation_ClassOperationLabel">
-          <element xmi:type="uml:Operation" href="SimpleSM.uml#_4ZEZwHecEd6r18stFZxmFQ"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_lOZnQW-FEea89JTVlr8RHA"/>
-        </children>
         <children xmi:type="notation:Shape" xmi:id="_lOaOUG-FEea89JTVlr8RHA" type="Operation_ClassOperationLabel">
           <element xmi:type="uml:Operation" href="SimpleSM.uml#_TbIjUJYlEd6G9q9hwr11bw"/>
           <layoutConstraint xmi:type="notation:Location" xmi:id="_lOaOUW-FEea89JTVlr8RHA"/>
@@ -426,11 +368,13 @@
       <element xmi:type="uml:Interface" href="pathmap://DML_TRAFO/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
       <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bnxrQW-FEea89JTVlr8RHA" x="60" y="44" width="361" height="77"/>
     </children>
+    <children xmi:type="notation:Shape" xmi:id="_HVETsJnmEeeVI-Aj5A9I1Q" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_HVLBYJnmEeeVI-Aj5A9I1Q" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="SimpleSM.uml#_HUxYwJnmEeeVI-Aj5A9I1Q"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HVETsZnmEeeVI-Aj5A9I1Q" x="520" y="142" width="241" height="148"/>
+    </children>
     <styles xmi:type="notation:StringValueStyle" xmi:id="_Zv3ucW-FEea89JTVlr8RHA" name="diagram_compatibility_version" stringValue="1.2.0"/>
     <styles xmi:type="notation:DiagramStyle" xmi:id="_Zv3ucm-FEea89JTVlr8RHA"/>
-    <styles xmi:type="style:PapyrusViewStyle" xmi:id="_Zv3uc2-FEea89JTVlr8RHA">
-      <owner xmi:type="uml:Package" href="SimpleSM.uml#_LOqIEDLaEd2qeKRLMdIx_A"/>
-    </styles>
     <element xmi:type="uml:Package" href="SimpleSM.uml#_LOqIEDLaEd2qeKRLMdIx_A"/>
     <edges xmi:type="notation:Connector" xmi:id="_a2hNcW-FEea89JTVlr8RHA" type="StereotypeCommentLink" source="_a2TLAG-FEea89JTVlr8RHA" target="_a2gmY2-FEea89JTVlr8RHA">
       <styles xmi:type="notation:FontStyle" xmi:id="_a2hNcm-FEea89JTVlr8RHA"/>
@@ -442,20 +386,25 @@
       <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a2hNdG-FEea89JTVlr8RHA"/>
       <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a2hNdW-FEea89JTVlr8RHA"/>
     </edges>
-    <edges xmi:type="notation:Connector" xmi:id="_bon_0G-FEea89JTVlr8RHA" type="Dependency_Edge" source="_a2TLAG-FEea89JTVlr8RHA" target="_bnxrQG-FEea89JTVlr8RHA">
-      <children xmi:type="notation:DecorationNode" xmi:id="_bon_02-FEea89JTVlr8RHA" type="Dependency_NameLabel">
-        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cCQn0G-FEea89JTVlr8RHA" name="IS_UPDATED_POSITION" booleanValue="true"/>
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_bon_1G-FEea89JTVlr8RHA" y="40"/>
+    <edges xmi:type="notation:Connector" xmi:id="_bjZD4JlGEeejksbGg7yusw" type="InterfaceRealization_Edge" source="_a2TLAG-FEea89JTVlr8RHA" target="_bnxrQG-FEea89JTVlr8RHA">
+      <children xmi:type="notation:DecorationNode" xmi:id="_bjbgIJlGEeejksbGg7yusw" type="InterfaceRealization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_bjbgIZlGEeejksbGg7yusw" y="40"/>
       </children>
-      <children xmi:type="notation:DecorationNode" xmi:id="_boom4G-FEea89JTVlr8RHA" type="Dependency_StereotypeLabel">
-        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cCWHYG-FEea89JTVlr8RHA" name="IS_UPDATED_POSITION" booleanValue="true"/>
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_boom4W-FEea89JTVlr8RHA" y="60"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_bjbgIplGEeejksbGg7yusw" type="InterfaceRealization_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_bjbgI5lGEeejksbGg7yusw" y="60"/>
       </children>
-      <styles xmi:type="notation:FontStyle" xmi:id="_bon_0W-FEea89JTVlr8RHA"/>
-      <element xmi:type="uml:Realization" href="SimpleSM.uml#_yHXTMG-EEea89JTVlr8RHA"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bon_0m-FEea89JTVlr8RHA" points="[107, 215, -643984, -643984]$[0, 0, -643984, -643984]"/>
-      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cCdcIG-FEea89JTVlr8RHA" id="(0.4986149584487535,0.0)"/>
-      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cCdcIW-FEea89JTVlr8RHA" id="(0.4986149584487535,1.0)"/>
+      <styles xmi:type="notation:FontStyle" xmi:id="_bjZD4ZlGEeejksbGg7yusw"/>
+      <element xmi:type="uml:InterfaceRealization" href="SimpleSM.uml#_bi6iwJlGEeejksbGg7yusw"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bjZD4plGEeejksbGg7yusw" points="[240, 180, -643984, -643984]$[240, 121, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bkWtMJlGEeejksbGg7yusw" id="(0.4986149584487535,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bkWtMZlGEeejksbGg7yusw" id="(0.4986149584487535,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_LNQtQJnmEeeVI-Aj5A9I1Q" type="Comment_AnnotatedElementEdge" source="_HVETsJnmEeeVI-Aj5A9I1Q" target="_a2TLAG-FEea89JTVlr8RHA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_LNQtQZnmEeeVI-Aj5A9I1Q"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LNQtQpnmEeeVI-Aj5A9I1Q" points="[520, 200, -643984, -643984]$[421, 200, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LNuAQJnmEeeVI-Aj5A9I1Q" id="(0.0,0.425531914893617)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LNunUJnmEeeVI-Aj5A9I1Q" id="(1.0,0.1652892561983471)"/>
     </edges>
   </notation:Diagram>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSM/SimpleSM.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSM/SimpleSM.uml
index 1a652f2..437e7de 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSM/SimpleSM.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSM/SimpleSM.uml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:Deployment="http://www.eclipse.org/papyrus/Deployment/1" xmlns:Transformation="http://www.eclipse.org/papyrus/Transformation/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:Deployment="http://www.eclipse.org/papyrus/Deployment/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
   <uml:Model xmi:id="_O6TiIDLUEd26WNosUASSSw" name="SimpleSM">
     <packageImport xmi:type="uml:PackageImport" xmi:id="_O6TiITLUEd26WNosUASSSw">
       <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
@@ -11,19 +11,18 @@
       <importedPackage xmi:type="uml:Model" href="pathmap://DML_TRAFO/statemachine.uml#_ago_QOUTEd-P08Bciq_LqQ"/>
     </packageImport>
     <packagedElement xmi:type="uml:Package" xmi:id="_LOqIEDLaEd2qeKRLMdIx_A" name="classes">
+      <ownedComment xmi:type="uml:Comment" xmi:id="_HUxYwJnmEeeVI-Aj5A9I1Q" annotatedElement="_oqZNUDLaEd2qeKRLMdIx_A">
+        <body>A simple class with a calculation method.
+The class implements (via an interface realization) the interface IStart. This specific interface (defined in the library sysinterfaces) indicates that this class is the main application class that is called by the bootloader.</body>
+      </ownedComment>
       <packagedElement xmi:type="uml:Class" xmi:id="_oqZNUDLaEd2qeKRLMdIx_A" name="SimpleSM" classifierBehavior="_y7KWsOYXEeCBL_IbXY9ofw">
         <ownedComment xmi:type="uml:Comment" xmi:id="_cb-ncDemEeGPyrZ5I3hMlA" annotatedElement="_oqZNUDLaEd2qeKRLMdIx_A">
           <body>State-machine support is enabled with a container rule</body>
         </ownedComment>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_qxjWINnmEd2_cstbO2Uzgg" name="mult" specification="_4ZEZwHecEd6r18stFZxmFQ">
-          <ownedParameter xmi:type="uml:Parameter" xmi:id="_YURmYGkzEearUflqhq5Pgw" name="res" direction="return">
-            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YUTbkGkzEearUflqhq5Pgw" value="1"/>
-            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YUUCoGkzEearUflqhq5Pgw" value="1"/>
-          </ownedParameter>
-          <language>C/C++</language>
-          <body>cout &lt;&lt; &quot;a=&quot; &lt;&lt; a &lt;&lt; &quot; b=&quot; &lt;&lt; b &lt;&lt; &quot; a*b=&quot; &lt;&lt; a*b &lt;&lt; endl;
-return a*b;</body>
-        </ownedBehavior>
+        <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_bi6iwJlGEeejksbGg7yusw" client="_oqZNUDLaEd2qeKRLMdIx_A">
+          <supplier xmi:type="uml:Interface" href="pathmap://DML_TRAFO/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
+          <contract xmi:type="uml:Interface" href="pathmap://DML_TRAFO/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
+        </interfaceRealization>
         <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ML-4AKI5Ed6FqJCjEUrkqQ" name="add" specification="_TbIjUJYlEd6G9q9hwr11bw">
           <ownedParameter xmi:type="uml:Parameter" xmi:id="_YUV30GkzEearUflqhq5Pgw" name="res" direction="return">
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YUXF8GkzEearUflqhq5Pgw" value="1"/>
@@ -35,54 +34,37 @@
         </ownedBehavior>
         <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_y7KWsOYXEeCBL_IbXY9ofw" name="SMSimple">
           <region xmi:type="uml:Region" xmi:id="_0Lv00OYXEeCBL_IbXY9ofw" name="Region0">
+            <ownedComment xmi:type="uml:Comment" xmi:id="_bSrmMJl5Eee5eLTvguUsew" annotatedElement="_53E_8OYXEeCBL_IbXY9ofw">
+              <body>State &quot;Flip&quot; can be left via a time event (after 50ms, using a MARTE VSL time specification) or a call event: the invocation of the add method triggers the transition</body>
+            </ownedComment>
+            <ownedComment xmi:type="uml:Comment" xmi:id="_l-lvQJl5Eee5eLTvguUsew" annotatedElement="_7_1cMOYXEeCBL_IbXY9ofw">
+              <body>The state &quot;Flop&quot; is left after 500ms via a time event. The transition has an opaque behavior as effect.</body>
+            </ownedComment>
+            <ownedComment xmi:type="uml:Comment" xmi:id="_5pWCoJl5Eee5eLTvguUsew" annotatedElement="_mJvoUOtqEeCzSsOGmQH2aA">
+              <body>Edit transtions by pressing the key &quot;F2&quot;. An xtext editor with syntax validation and completion will be opened.</body>
+            </ownedComment>
             <transition xmi:type="uml:Transition" xmi:id="_CLBzIOYYEeCBL_IbXY9ofw" name="Transition0" source="_1UVNgOYXEeCBL_IbXY9ofw" target="_53E_8OYXEeCBL_IbXY9ofw"/>
             <transition xmi:type="uml:Transition" xmi:id="_Doi6AOYYEeCBL_IbXY9ofw" name="Transition1" source="_53E_8OYXEeCBL_IbXY9ofw" target="_7_1cMOYXEeCBL_IbXY9ofw">
-              <trigger xmi:type="uml:Trigger" xmi:id="_rHpXoOtoEeCjb9i0gG4phA" event="_rHoJgOtoEeCjb9i0gG4phA"/>
+              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_OyKTMJntEeeCzKHJj7Wq7w" name="msg">
+                <language>C++</language>
+                <body>std::cout &lt;&lt;&quot;From Flip to Flop&quot;
+               &lt;&lt; std::endl;</body>
+              </effect>
+              <trigger xmi:type="uml:Trigger" xmi:id="__rDUsJntEeeCzKHJj7Wq7w" event="__rCGkJntEeeCzKHJj7Wq7w"/>
             </transition>
             <transition xmi:type="uml:Transition" xmi:id="_OH_UYOYYEeCBL_IbXY9ofw" name="Transition2" source="_7_1cMOYXEeCBL_IbXY9ofw" target="_53E_8OYXEeCBL_IbXY9ofw">
-              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_CAWpgSSoEeG6GJ4vU06VYQ" name="add">
+              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_CAWpgSSoEeG6GJ4vU06VYQ" name="msg">
                 <language>C/C++</language>
-                <body>add(2,3);&#xD;
-mult(3,5);&#xD;
-std::cout &lt;&lt;&quot;From State1 to State0 \n&quot;;</body>
+                <body>std::cout &lt;&lt;&quot;From Flop to Flip&quot; &lt;&lt; std::endl;</body>
               </effect>
               <trigger xmi:type="uml:Trigger" xmi:id="_-aQtACaeEeG4fZdVXNtoOQ" event="_-PMFcCaeEeG4fZdVXNtoOQ"/>
             </transition>
             <transition xmi:type="uml:Transition" xmi:id="_mJvoUOtqEeCzSsOGmQH2aA" name="Transition3" source="_53E_8OYXEeCBL_IbXY9ofw" target="_7_1cMOYXEeCBL_IbXY9ofw">
               <trigger xmi:type="uml:Trigger" xmi:id="_8WepQHoDEeOA64V_YLapaA" event="_8WeCMHoDEeOA64V_YLapaA"/>
             </transition>
-            <transition xmi:type="uml:Transition" xmi:id="_rdKgsCjmEeaJJusTB1aIbg" source="_53E_8OYXEeCBL_IbXY9ofw" target="_owZYcCjmEeaJJusTB1aIbg">
-              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_-EnkACjmEeaJJusTB1aIbg">
-                <language>C++</language>
-                <body>std::cout &lt;&lt; &quot;From State 0 to State 2\n&quot;;</body>
-              </effect>
-              <trigger xmi:type="uml:Trigger" xmi:id="_4eMuECjmEeaJJusTB1aIbg" event="_4WSIMCjmEeaJJusTB1aIbg"/>
-            </transition>
-            <transition xmi:type="uml:Transition" xmi:id="_BO7j4CjnEeaJJusTB1aIbg" source="_owZYcCjmEeaJJusTB1aIbg" target="__9lQwCjmEeaJJusTB1aIbg">
-              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_F9mScCjnEeaJJusTB1aIbg">
-                <language>C++</language>
-                <body>std::cout &lt;&lt;&quot;From State 2 to Junction1\n&quot;;</body>
-              </effect>
-              <trigger xmi:type="uml:Trigger" xmi:id="_GlK94CjpEeaJJusTB1aIbg" event="_-PMFcCaeEeG4fZdVXNtoOQ"/>
-            </transition>
-            <transition xmi:type="uml:Transition" xmi:id="_G1QTMCjnEeaJJusTB1aIbg" source="__9lQwCjmEeaJJusTB1aIbg" target="_53E_8OYXEeCBL_IbXY9ofw"/>
-            <transition xmi:type="uml:Transition" xmi:id="_HnKRQCjnEeaJJusTB1aIbg" guard="_KB4nQCjnEeaJJusTB1aIbg" source="__9lQwCjmEeaJJusTB1aIbg" target="_7_1cMOYXEeCBL_IbXY9ofw">
-              <ownedRule xmi:type="uml:Constraint" xmi:id="_KB4nQCjnEeaJJusTB1aIbg">
-                <specification xmi:type="uml:OpaqueExpression" xmi:id="_KB4nQSjnEeaJJusTB1aIbg">
-                  <language>C++</language>
-                  <body>true</body>
-                </specification>
-              </ownedRule>
-              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_QlLVICjnEeaJJusTB1aIbg">
-                <language>C++</language>
-                <body>std::cout &lt;&lt; &quot;From Junction1 to State 1 \n&quot;;</body>
-              </effect>
-            </transition>
             <subvertex xmi:type="uml:Pseudostate" xmi:id="_1UVNgOYXEeCBL_IbXY9ofw" name="Initial0"/>
-            <subvertex xmi:type="uml:State" xmi:id="_53E_8OYXEeCBL_IbXY9ofw" name="State0"/>
-            <subvertex xmi:type="uml:State" xmi:id="_7_1cMOYXEeCBL_IbXY9ofw" name="State1"/>
-            <subvertex xmi:type="uml:State" xmi:id="_owZYcCjmEeaJJusTB1aIbg" name="State2"/>
-            <subvertex xmi:type="uml:Pseudostate" xmi:id="__9lQwCjmEeaJJusTB1aIbg" name="Junction" kind="junction"/>
+            <subvertex xmi:type="uml:State" xmi:id="_53E_8OYXEeCBL_IbXY9ofw" name="Flip"/>
+            <subvertex xmi:type="uml:State" xmi:id="_7_1cMOYXEeCBL_IbXY9ofw" name="Flop"/>
           </region>
         </ownedBehavior>
         <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_YNCW4CgBEeapjr3l63b85A" name="run" specification="_VGsRACgBEeapjr3l63b85A">
@@ -93,19 +75,6 @@
 sleep(15);
 </body>
         </ownedBehavior>
-        <ownedOperation xmi:type="uml:Operation" xmi:id="_4ZEZwHecEd6r18stFZxmFQ" name="mult" method="_qxjWINnmEd2_cstbO2Uzgg">
-          <ownedParameter xmi:type="uml:Parameter" xmi:id="_fHa4sGk0EearUflqhq5Pgw" name="a">
-            <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
-          </ownedParameter>
-          <ownedParameter xmi:type="uml:Parameter" xmi:id="_gA9v0Gk0EearUflqhq5Pgw" name="b">
-            <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
-          </ownedParameter>
-          <ownedParameter xmi:type="uml:Parameter" xmi:id="_YUC84GkzEearUflqhq5Pgw" name="res" direction="return">
-            <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
-            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YUELAGkzEearUflqhq5Pgw" value="1"/>
-            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YUEyEGkzEearUflqhq5Pgw" value="1"/>
-          </ownedParameter>
-        </ownedOperation>
         <ownedOperation xmi:type="uml:Operation" xmi:id="_TbIjUJYlEd6G9q9hwr11bw" name="add" method="_ML-4AKI5Ed6FqJCjEUrkqQ">
           <ownedParameter xmi:type="uml:Parameter" xmi:id="_guLbIGk0EearUflqhq5Pgw" name="a">
             <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
@@ -122,14 +91,6 @@
         <ownedOperation xmi:type="uml:Operation" xmi:id="_VGsRACgBEeapjr3l63b85A" name="run" method="_YNCW4CgBEeapjr3l63b85A"/>
       </packagedElement>
       <packagedElement xmi:type="uml:Package" xmi:id="_rGzqIOtoEeCjb9i0gG4phA" name="events">
-        <packagedElement xmi:type="uml:TimeEvent" xmi:id="_rHoJgOtoEeCjb9i0gG4phA" name="TE - {value=50, unit=ms}" isRelative="true">
-          <when xmi:type="uml:TimeExpression" xmi:id="_rHoJgetoEeCjb9i0gG4phA">
-            <expr xmi:type="uml:OpaqueExpression" xmi:id="_rHoJgutoEeCjb9i0gG4phA">
-              <language>Natural language</language>
-              <body>{value=50, unit=ms}</body>
-            </expr>
-          </when>
-        </packagedElement>
         <packagedElement xmi:type="uml:TimeEvent" xmi:id="_-PMFcCaeEeG4fZdVXNtoOQ" name="TE - {value=500, unit=ms}" isRelative="true">
           <when xmi:type="uml:TimeExpression" xmi:id="_-PMFcSaeEeG4fZdVXNtoOQ">
             <expr xmi:type="uml:OpaqueExpression" xmi:id="_-PMFciaeEeG4fZdVXNtoOQ">
@@ -147,18 +108,25 @@
             </expr>
           </when>
         </packagedElement>
-      </packagedElement>
-      <packagedElement xmi:type="uml:Realization" xmi:id="_yHXTMG-EEea89JTVlr8RHA" client="_oqZNUDLaEd2qeKRLMdIx_A">
-        <supplier xmi:type="uml:Interface" href="pathmap://DML_TRAFO/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
+        <packagedElement xmi:type="uml:TimeEvent" xmi:id="__rCGkJntEeeCzKHJj7Wq7w" name="TE - {value=250, unit=ms}" isRelative="true">
+          <when xmi:type="uml:TimeExpression" xmi:id="__rCGkZntEeeCzKHJj7Wq7w">
+            <expr xmi:type="uml:OpaqueExpression" xmi:id="__rCGkpntEeeCzKHJj7Wq7w">
+              <language>Natural language</language>
+              <body>{value=250, unit=ms}</body>
+            </expr>
+          </when>
+        </packagedElement>
       </packagedElement>
     </packagedElement>
     <packagedElement xmi:type="uml:Package" xmi:id="_234GEDLiEd2RVeNawwNNzg" name="deployment">
+      <ownedComment xmi:type="uml:Comment" xmi:id="_ssEwYJl4Eee5eLTvguUsew" annotatedElement="_GYFZYG-QEea89JTVlr8RHA">
+        <body>The deployment plan with the default transformation chain. Right-click on the deployment plan and choose
+Designer -> Generate deployment models and code from plan
+</body>
+      </ownedComment>
       <packagedElement xmi:type="uml:Package" xmi:id="_GYFZYG-QEea89JTVlr8RHA" name="SimpleSMDepPlan">
         <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_GYJDwG-QEea89JTVlr8RHA" name="mainInstance" classifier="_oqZNUDLaEd2qeKRLMdIx_A"/>
       </packagedElement>
-      <packagedElement xmi:type="uml:Package" xmi:id="_MfLhYG-6Eea89JTVlr8RHA" name="SimpleSMDepPlanNoBL">
-        <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_MfMIcG-6Eea89JTVlr8RHA" name="mainInstance" classifier="_oqZNUDLaEd2qeKRLMdIx_A"/>
-      </packagedElement>
     </packagedElement>
     <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_O6TiIjLUEd26WNosUASSSw">
       <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_O6TiIzLUEd26WNosUASSSw" source="http://www.eclipse.org/uml2/2.0.0/UML">
@@ -192,8 +160,5 @@
     </profileApplication>
   </uml:Model>
   <C_Cpp:Include xmi:id="_EaeJMNp0EeKd1ax3yaXM9w" body="#include &lt;iostream>&#xA;using namespace std;&#xA;&#xA;#include &lt;unistd.h>&#xA;" base_class="_oqZNUDLaEd2qeKRLMdIx_A"/>
-  <Deployment:DeploymentPlan xmi:id="_SqAE4G-6Eea89JTVlr8RHA" base_Package="_MfLhYG-6Eea89JTVlr8RHA">
-    <chain xmi:type="Transformation:M2MTrafoChain" href="pathmap://DML_TRAFO/trafos.uml#_A7oqsG-DEea89JTVlr8RHA"/>
-  </Deployment:DeploymentPlan>
   <Deployment:DeploymentPlan xmi:id="_fDaRkG-6Eea89JTVlr8RHA" base_Package="_GYFZYG-QEea89JTVlr8RHA"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMChangeEvent/SimpleSMChangeEvent.notation b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMChangeEvent/SimpleSMChangeEvent.notation
index 824ddef..45c2f48 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMChangeEvent/SimpleSMChangeEvent.notation
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMChangeEvent/SimpleSMChangeEvent.notation
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
   <notation:Diagram xmi:id="_XSHWMF36Ed-UvNEDwY5GNg" type="PapyrusUMLClassDiagram" name="Interfaces" measurementUnit="Pixel">
     <children xmi:type="notation:Shape" xmi:id="_MTW5IDcZEeGPyrZ5I3hMlA" type="Interface_Shape" fontName="Sans Serif" lineColor="0">
       <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MTYuUDcZEeGPyrZ5I3hMlA" source="ShadowFigure">
@@ -138,7 +138,7 @@
         <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LKHvoHn3EeOfttgBwSq-Ig" key="gradient" value="true"/>
       </eAnnotations>
       <children xmi:type="notation:DecorationNode" xmi:id="_0MCIuOYXEeCBL_IbXY9ofw" type="StateMachine_NameLabel">
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIueYXEeCBL_IbXY9ofw" width="940" height="20"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIueYXEeCBL_IbXY9ofw" width="940" height="15"/>
       </children>
       <children xmi:type="notation:BasicCompartment" xmi:id="_JVovMPX4EeWa_pjn9guopQ" type="StateMachine_RegionCompartment">
         <children xmi:type="notation:Shape" xmi:id="_0MCIu-YXEeCBL_IbXY9ofw" type="Region_Shape" fontName="Sans Serif" lineColor="0" lineWidth="1">
@@ -192,20 +192,20 @@
                 <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_53f2suYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
               </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_53f2s-YXEeCBL_IbXY9ofw" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7PRh8OYXEeCBL_IbXY9ofw" width="99" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7PRh8OYXEeCBL_IbXY9ofw" width="99" height="15"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_JVp9UPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
                 <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PvBTIPX4EeWa_pjn9guopQ" source="PapyrusCSSForceValue">
                   <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PvB6MPX4EeWa_pjn9guopQ" key="visible" value="true"/>
                 </eAnnotations>
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53f2teYXEeCBL_IbXY9ofw" y="20" width="99" height="48"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53f2teYXEeCBL_IbXY9ofw" y="15" width="99" height="48"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_h9cHkFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
                 <styles xmi:type="notation:TitleStyle" xmi:id="_h9cHkVbmEeObiJAlOlmjpQ"/>
                 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9cHklbmEeObiJAlOlmjpQ"/>
               </children>
               <element xmi:type="uml:State" href="SimpleSMChangeEvent.uml#_53E_8OYXEeCBL_IbXY9ofw"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53eokeYXEeCBL_IbXY9ofw" x="259" y="37" width="99" height="68"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53eokeYXEeCBL_IbXY9ofw" x="259" y="37" width="99" height="63"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_8AQS8OYXEeCBL_IbXY9ofw" type="State_Shape" fontName="Sans Serif" lineColor="0">
               <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_8AQ6AOYXEeCBL_IbXY9ofw" source="ShadowFigure">
@@ -218,10 +218,10 @@
                 <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_8ARhFOYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
               </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_8ARhFeYXEeCBL_IbXY9ofw" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8A06sOYXEeCBL_IbXY9ofw" width="161" height="81"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8A06sOYXEeCBL_IbXY9ofw" width="161" height="58"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_JVrLcPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8ARhF-YXEeCBL_IbXY9ofw" y="81" width="161" height="-22"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8ARhF-YXEeCBL_IbXY9ofw" y="58" width="161" height="-22"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_h9ej0FbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
                 <styles xmi:type="notation:TitleStyle" xmi:id="_h9ej0VbmEeObiJAlOlmjpQ"/>
@@ -232,7 +232,7 @@
                 <layoutConstraint xmi:type="notation:Location" xmi:id="_sXiY8UVbEeaxaO4Kn-ck8A" x="-10" y="-10"/>
               </children>
               <element xmi:type="uml:State" href="SimpleSMChangeEvent.uml#_7_1cMOYXEeCBL_IbXY9ofw"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8AQS8eYXEeCBL_IbXY9ofw" x="219" y="181" width="161" height="59"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8AQS8eYXEeCBL_IbXY9ofw" x="219" y="181" width="161" height="36"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_oxRiMCjmEeaJJusTB1aIbg" type="State_Shape">
               <children xmi:type="notation:DecorationNode" xmi:id="_oxSwUCjmEeaJJusTB1aIbg" type="State_NameLabel">
@@ -390,8 +390,11 @@
               <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PjSq4UOBEeadCvQ7UGhFAA" x="279" y="880" width="40"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_OZwagEOCEeadCvQ7UGhFAA" type="State_Shape">
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5kQnwJlMEeejksbGg7yusw" source="PapyrusCSSForceValue">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5kSc8JlMEeejksbGg7yusw" key="mutable" value="true"/>
+              </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_OZwagkOCEeadCvQ7UGhFAA" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O8AzAEOCEeadCvQ7UGhFAA" width="264" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O8AzAEOCEeadCvQ7UGhFAA" width="264" height="19"/>
               </children>
               <children xmi:type="notation:DecorationNode" xmi:id="_OZwag0OCEeadCvQ7UGhFAA" type="State_FloatingNameLabel">
                 <layoutConstraint xmi:type="notation:Location" xmi:id="_OZwahEOCEeadCvQ7UGhFAA" x="40"/>
@@ -462,10 +465,34 @@
                   <element xmi:type="uml:Region" href="SimpleSMChangeEvent.uml#_P1Z5IEOCEeadCvQ7UGhFAA"/>
                   <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P1Z5IkOCEeadCvQ7UGhFAA" y="91" width="264" height="109"/>
                 </children>
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OZwahkOCEeadCvQ7UGhFAA" y="20" width="264" height="201"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OZwahkOCEeadCvQ7UGhFAA" y="19" width="264" height="201"/>
+              </children>
+              <children xmi:type="notation:BasicCompartment" xmi:id="_0fhikJlMEeejksbGg7yusw" type="compartment_shape_display">
+                <styles xmi:type="notation:TitleStyle" xmi:id="_0fhikZlMEeejksbGg7yusw"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0fhikplMEeejksbGg7yusw"/>
+              </children>
+              <children xmi:type="notation:Shape" xmi:id="_0frTkJlMEeejksbGg7yusw" type="Region_Shape">
+                <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5kTEAJlMEeejksbGg7yusw" source="PapyrusCSSForceValue">
+                  <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5kTEAZlMEeejksbGg7yusw" key="mutable" value="true"/>
+                </eAnnotations>
+                <children xmi:type="notation:BasicCompartment" xmi:id="_0fr6oJlMEeejksbGg7yusw" type="Region_SubvertexCompartment">
+                  <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0fr6oZlMEeejksbGg7yusw"/>
+                </children>
+                <element xmi:type="uml:Region" href="SimpleSMChangeEvent.uml#_PWnrYkOCEeadCvQ7UGhFAA"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0frTkZlMEeejksbGg7yusw" x="-10" y="-10"/>
+              </children>
+              <children xmi:type="notation:Shape" xmi:id="_0fshsJlMEeejksbGg7yusw" type="Region_Shape">
+                <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5kTEAplMEeejksbGg7yusw" source="PapyrusCSSForceValue">
+                  <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5kTEA5lMEeejksbGg7yusw" key="mutable" value="true"/>
+                </eAnnotations>
+                <children xmi:type="notation:BasicCompartment" xmi:id="_0fshsplMEeejksbGg7yusw" type="Region_SubvertexCompartment">
+                  <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0fshs5lMEeejksbGg7yusw"/>
+                </children>
+                <element xmi:type="uml:Region" href="SimpleSMChangeEvent.uml#_P1Z5IEOCEeadCvQ7UGhFAA"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0fshsZlMEeejksbGg7yusw" x="-10" y="-10"/>
               </children>
               <element xmi:type="uml:State" href="SimpleSMChangeEvent.uml#_OZYAAEOCEeadCvQ7UGhFAA"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OZwagUOCEeadCvQ7UGhFAA" x="579" y="261" width="264" height="221"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OZwagUOCEeadCvQ7UGhFAA" x="579" y="261" width="264" height="220"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_S4E_8EOCEeadCvQ7UGhFAA" type="Pseudostate_ForkShape">
               <children xmi:type="notation:DecorationNode" xmi:id="_S4E_8kOCEeadCvQ7UGhFAA" visible="false" type="Pseudostate_ForkFloatingNameLabel">
@@ -496,7 +523,7 @@
           <element xmi:type="uml:Region" href="SimpleSMChangeEvent.uml#_0Lv00OYXEeCBL_IbXY9ofw"/>
           <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIxuYXEeCBL_IbXY9ofw" width="940" height="917"/>
         </children>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIx-YXEeCBL_IbXY9ofw" y="20" width="940" height="917"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIx-YXEeCBL_IbXY9ofw" y="15" width="940" height="922"/>
       </children>
       <children xmi:type="notation:BasicCompartment" xmi:id="_h9ULwFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
         <styles xmi:type="notation:TitleStyle" xmi:id="_h9ULwVbmEeObiJAlOlmjpQ"/>
@@ -1133,9 +1160,6 @@
     </children>
     <styles xmi:type="notation:StringValueStyle" xmi:id="_o4jzcXEHEeatX-i6MtVR2A" name="diagram_compatibility_version" stringValue="1.2.0"/>
     <styles xmi:type="notation:DiagramStyle" xmi:id="_o4jzcnEHEeatX-i6MtVR2A"/>
-    <styles xmi:type="style:PapyrusViewStyle" xmi:id="_o4jzc3EHEeatX-i6MtVR2A">
-      <owner xmi:type="uml:Package" href="SimpleSMChangeEvent.uml#_LOqIEDLaEd2qeKRLMdIx_A"/>
-    </styles>
     <element xmi:type="uml:Package" href="SimpleSMChangeEvent.uml#_LOqIEDLaEd2qeKRLMdIx_A"/>
     <edges xmi:type="notation:Connector" xmi:id="_pVAe4HEHEeatX-i6MtVR2A" type="StereotypeCommentLink" source="_pUp5kHEHEeatX-i6MtVR2A" target="_pU_QwHEHEeatX-i6MtVR2A">
       <styles xmi:type="notation:FontStyle" xmi:id="_pVAe4XEHEeatX-i6MtVR2A"/>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMChangeEvent/SimpleSMChangeEvent.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMChangeEvent/SimpleSMChangeEvent.uml
index 95700a2..eaa4f5b 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMChangeEvent/SimpleSMChangeEvent.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMChangeEvent/SimpleSMChangeEvent.uml
@@ -113,10 +113,9 @@
               <trigger xmi:type="uml:Trigger" xmi:id="_rHpXoOtoEeCjb9i0gG4phA" event="_rHoJgOtoEeCjb9i0gG4phA"/>
             </transition>
             <transition xmi:type="uml:Transition" xmi:id="_OH_UYOYYEeCBL_IbXY9ofw" name="Transition2" source="_7_1cMOYXEeCBL_IbXY9ofw" target="_53E_8OYXEeCBL_IbXY9ofw">
-              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_CAWpgSSoEeG6GJ4vU06VYQ" name="add">
+              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_CAWpgSSoEeG6GJ4vU06VYQ" name="mult">
                 <language>C/C++</language>
-                <body>add(2,3);&#xD;
-mult(3,5);&#xD;
+                <body>mult(3,5);&#xD;
 std::cout &lt;&lt;&quot;From State1 to State0 \n&quot;;</body>
               </effect>
               <trigger xmi:type="uml:Trigger" xmi:id="_-aQtACaeEeG4fZdVXNtoOQ" event="_-PMFcCaeEeG4fZdVXNtoOQ"/>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMSignalEvent/SimpleSMSignalEvent.notation b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMSignalEvent/SimpleSMSignalEvent.notation
index 4a4bb99..4b4cb59 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMSignalEvent/SimpleSMSignalEvent.notation
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMSignalEvent/SimpleSMSignalEvent.notation
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style_1="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
   <notation:Diagram xmi:id="_XSHWMF36Ed-UvNEDwY5GNg" type="PapyrusUMLClassDiagram" name="Interfaces" measurementUnit="Pixel">
     <children xmi:type="notation:Shape" xmi:id="_MTW5IDcZEeGPyrZ5I3hMlA" type="Interface_Shape" fontName="Sans Serif" lineColor="0">
       <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MTYuUDcZEeGPyrZ5I3hMlA" source="ShadowFigure">
@@ -142,7 +142,7 @@
         <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LKHvoHn3EeOfttgBwSq-Ig" key="gradient" value="true"/>
       </eAnnotations>
       <children xmi:type="notation:DecorationNode" xmi:id="_0MCIuOYXEeCBL_IbXY9ofw" type="StateMachine_NameLabel">
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIueYXEeCBL_IbXY9ofw" width="940" height="20"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIueYXEeCBL_IbXY9ofw" width="940" height="24"/>
       </children>
       <children xmi:type="notation:BasicCompartment" xmi:id="_JVovMPX4EeWa_pjn9guopQ" type="StateMachine_RegionCompartment">
         <children xmi:type="notation:Shape" xmi:id="_0MCIu-YXEeCBL_IbXY9ofw" type="Region_Shape" fontName="Sans Serif" lineColor="0" lineWidth="1">
@@ -196,20 +196,20 @@
                 <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_53f2suYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
               </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_53f2s-YXEeCBL_IbXY9ofw" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7PRh8OYXEeCBL_IbXY9ofw" width="99" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7PRh8OYXEeCBL_IbXY9ofw" width="99" height="24"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_JVp9UPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
                 <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PvBTIPX4EeWa_pjn9guopQ" source="PapyrusCSSForceValue">
                   <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PvB6MPX4EeWa_pjn9guopQ" key="visible" value="true"/>
                 </eAnnotations>
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53f2teYXEeCBL_IbXY9ofw" y="20" width="99" height="48"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53f2teYXEeCBL_IbXY9ofw" y="24" width="99" height="48"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_h9cHkFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
                 <styles xmi:type="notation:TitleStyle" xmi:id="_h9cHkVbmEeObiJAlOlmjpQ"/>
                 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9cHklbmEeObiJAlOlmjpQ"/>
               </children>
               <element xmi:type="uml:State" href="SimpleSMSignalEvent.uml#_53E_8OYXEeCBL_IbXY9ofw"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53eokeYXEeCBL_IbXY9ofw" x="259" y="37" width="99" height="68"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53eokeYXEeCBL_IbXY9ofw" x="259" y="37" width="99" height="72"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_8AQS8OYXEeCBL_IbXY9ofw" type="State_Shape" fontName="Sans Serif" lineColor="0">
               <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_8AQ6AOYXEeCBL_IbXY9ofw" source="ShadowFigure">
@@ -222,17 +222,17 @@
                 <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_8ARhFOYXEeCBL_IbXY9ofw" key="QualifiedNameDepth" value="1000"/>
               </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_8ARhFeYXEeCBL_IbXY9ofw" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8A06sOYXEeCBL_IbXY9ofw" width="100" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8A06sOYXEeCBL_IbXY9ofw" width="100" height="24"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_JVrLcPX4EeWa_pjn9guopQ" type="State_RegionCompartment">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8ARhF-YXEeCBL_IbXY9ofw" y="20" width="100" height="42"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8ARhF-YXEeCBL_IbXY9ofw" y="24" width="100" height="42"/>
               </children>
               <children xmi:type="notation:BasicCompartment" xmi:id="_h9ej0FbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
                 <styles xmi:type="notation:TitleStyle" xmi:id="_h9ej0VbmEeObiJAlOlmjpQ"/>
                 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h9ej0lbmEeObiJAlOlmjpQ"/>
               </children>
               <element xmi:type="uml:State" href="SimpleSMSignalEvent.uml#_7_1cMOYXEeCBL_IbXY9ofw"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8AQS8eYXEeCBL_IbXY9ofw" x="259" y="181" width="100" height="62"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8AQS8eYXEeCBL_IbXY9ofw" x="259" y="181" width="100" height="66"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_oxRiMCjmEeaJJusTB1aIbg" type="State_Shape">
               <children xmi:type="notation:DecorationNode" xmi:id="_oxSwUCjmEeaJJusTB1aIbg" type="State_NameLabel">
@@ -376,8 +376,11 @@
               <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PjSq4UOBEeadCvQ7UGhFAA" x="297" y="874"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_OZwagEOCEeadCvQ7UGhFAA" type="State_Shape">
+              <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_REIykJlNEeejksbGg7yusw" source="PapyrusCSSForceValue">
+                <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_REIykZlNEeejksbGg7yusw" key="mutable" value="true"/>
+              </eAnnotations>
               <children xmi:type="notation:DecorationNode" xmi:id="_OZwagkOCEeadCvQ7UGhFAA" type="State_NameLabel">
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O8AzAEOCEeadCvQ7UGhFAA" width="240" height="20"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O8AzAEOCEeadCvQ7UGhFAA" width="240" height="24"/>
               </children>
               <children xmi:type="notation:DecorationNode" xmi:id="_OZwag0OCEeadCvQ7UGhFAA" type="State_FloatingNameLabel">
                 <layoutConstraint xmi:type="notation:Location" xmi:id="_OZwahEOCEeadCvQ7UGhFAA" x="40"/>
@@ -428,10 +431,34 @@
                   <element xmi:type="uml:Region" href="SimpleSMSignalEvent.uml#_P1Z5IEOCEeadCvQ7UGhFAA"/>
                   <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P1Z5IkOCEeadCvQ7UGhFAA" y="81" width="240" height="81"/>
                 </children>
-                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OZwahkOCEeadCvQ7UGhFAA" y="20" width="240" height="163"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OZwahkOCEeadCvQ7UGhFAA" y="24" width="240" height="163"/>
+              </children>
+              <children xmi:type="notation:BasicCompartment" xmi:id="_MM2TgJlNEeejksbGg7yusw" type="compartment_shape_display">
+                <styles xmi:type="notation:TitleStyle" xmi:id="_MM2TgZlNEeejksbGg7yusw"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MM2TgplNEeejksbGg7yusw"/>
+              </children>
+              <children xmi:type="notation:Shape" xmi:id="_MM594JlNEeejksbGg7yusw" type="Region_Shape">
+                <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_REIykplNEeejksbGg7yusw" source="PapyrusCSSForceValue">
+                  <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_REIyk5lNEeejksbGg7yusw" key="mutable" value="true"/>
+                </eAnnotations>
+                <children xmi:type="notation:BasicCompartment" xmi:id="_MM6k8JlNEeejksbGg7yusw" type="Region_SubvertexCompartment">
+                  <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MM6k8ZlNEeejksbGg7yusw"/>
+                </children>
+                <element xmi:type="uml:Region" href="SimpleSMSignalEvent.uml#_PWnrYkOCEeadCvQ7UGhFAA"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MM594ZlNEeejksbGg7yusw" x="-10" y="-10"/>
+              </children>
+              <children xmi:type="notation:Shape" xmi:id="_MM7MAJlNEeejksbGg7yusw" type="Region_Shape">
+                <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_REIylJlNEeejksbGg7yusw" source="PapyrusCSSForceValue">
+                  <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_REIylZlNEeejksbGg7yusw" key="mutable" value="true"/>
+                </eAnnotations>
+                <children xmi:type="notation:BasicCompartment" xmi:id="_MM7MAplNEeejksbGg7yusw" type="Region_SubvertexCompartment">
+                  <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MM7MA5lNEeejksbGg7yusw"/>
+                </children>
+                <element xmi:type="uml:Region" href="SimpleSMSignalEvent.uml#_P1Z5IEOCEeadCvQ7UGhFAA"/>
+                <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MM7MAZlNEeejksbGg7yusw" x="-10" y="-10"/>
               </children>
               <element xmi:type="uml:State" href="SimpleSMSignalEvent.uml#_OZYAAEOCEeadCvQ7UGhFAA"/>
-              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OZwagUOCEeadCvQ7UGhFAA" x="577" y="270" width="240" height="183"/>
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OZwagUOCEeadCvQ7UGhFAA" x="577" y="270" width="240" height="187"/>
             </children>
             <children xmi:type="notation:Shape" xmi:id="_S4E_8EOCEeadCvQ7UGhFAA" type="Pseudostate_ForkShape">
               <children xmi:type="notation:DecorationNode" xmi:id="_S4E_8kOCEeadCvQ7UGhFAA" type="Pseudostate_ForkFloatingNameLabel">
@@ -462,7 +489,7 @@
           <element xmi:type="uml:Region" href="SimpleSMSignalEvent.uml#_0Lv00OYXEeCBL_IbXY9ofw"/>
           <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIxuYXEeCBL_IbXY9ofw" width="940" height="917"/>
         </children>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIx-YXEeCBL_IbXY9ofw" y="20" width="940" height="917"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0MCIx-YXEeCBL_IbXY9ofw" y="24" width="940" height="913"/>
       </children>
       <children xmi:type="notation:BasicCompartment" xmi:id="_h9ULwFbmEeObiJAlOlmjpQ" visible="false" type="compartment_shape_display">
         <styles xmi:type="notation:TitleStyle" xmi:id="_h9ULwVbmEeObiJAlOlmjpQ"/>
@@ -616,7 +643,7 @@
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_g6Nv5UOAEeadCvQ7UGhFAA" type="Transition_GuardLabel">
         <styles xmi:type="notation:BooleanValueStyle" xmi:id="_H4th4EVPEeagYdPh8JXAfw" name="IS_UPDATED_POSITION" booleanValue="true"/>
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_g6Nv5kOAEeadCvQ7UGhFAA" x="158" y="80"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_g6Nv5kOAEeadCvQ7UGhFAA" x="62" y="44"/>
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_g6Nv50OAEeadCvQ7UGhFAA" type="Transition_StereotypeLabel">
         <styles xmi:type="notation:BooleanValueStyle" xmi:id="_H5dv0EVPEeagYdPh8JXAfw" name="IS_UPDATED_POSITION" booleanValue="true"/>
@@ -654,7 +681,7 @@
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_qtp_5UOAEeadCvQ7UGhFAA" type="Transition_GuardLabel">
         <styles xmi:type="notation:BooleanValueStyle" xmi:id="_rp1UQEOAEeadCvQ7UGhFAA" name="IS_UPDATED_POSITION" booleanValue="true"/>
-        <layoutConstraint xmi:type="notation:Location" xmi:id="_qtp_5kOAEeadCvQ7UGhFAA"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_qtp_5kOAEeadCvQ7UGhFAA" x="11" y="15"/>
       </children>
       <children xmi:type="notation:DecorationNode" xmi:id="_qtp_50OAEeadCvQ7UGhFAA" type="Transition_StereotypeLabel">
         <styles xmi:type="notation:BooleanValueStyle" xmi:id="_rqOV0EOAEeadCvQ7UGhFAA" name="IS_UPDATED_POSITION" booleanValue="true"/>
@@ -930,9 +957,9 @@
       </children>
       <styles xmi:type="notation:FontStyle" xmi:id="_e55MAUOCEeadCvQ7UGhFAA"/>
       <element xmi:type="uml:Transition" href="SimpleSMSignalEvent.uml#_e5OdoEOCEeadCvQ7UGhFAA"/>
-      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_e55MAkOCEeadCvQ7UGhFAA" points="[911, 434, -643984, -643984]$[932, 434, -643984, -643984]$[924, 536, -643984, -643984]$[374, 620, -643984, -643984]"/>
-      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e621UEOCEeadCvQ7UGhFAA" id="(1.0,1.0)"/>
-      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e621UUOCEeadCvQ7UGhFAA" id="(1.0,0.6363636363636364)"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_e55MAkOCEeadCvQ7UGhFAA" points="[911, 429, -643984, -643984]$[924, 420, -643984, -643984]$[924, 600, -643984, -643984]$[387, 620, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e621UEOCEeadCvQ7UGhFAA" id="(1.0,0.55)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e621UUOCEeadCvQ7UGhFAA" id="(1.0,0.3023255813953488)"/>
     </edges>
   </notation:Diagram>
   <css:EmbeddedStyleSheet xmi:id="_B2g2QXn3EeOfttgBwSq-Ig" label="Animation" content=":animated{&#xA;&#x9;/*Edge of the shape affected by the pseudo selector*/&#xA;&#x9;lineColor: #c00000;&#xA;&#x9;lineWidth: 3px;&#xA;&#x9;/*Content of the shape affected by the pseudo selector*/&#xA;&#x9;fillColor: #c00000;&#xA;&#x9;bold: true;&#xA;} &#xA;&#xA;:suspended{&#xA;&#x9;/*Edge of the shape affected by the pseudo selector*/&#xA;&#x9;lineColor: #c00000;&#xA;&#x9;lineWidth: 2px;&#xA;&#x9;/*Content of the shape affected by the pseudo selector*/&#xA;&#x9;fillColor: #fab953;&#xA;&#x9;bold: true;&#xA;}&#xA;&#xA;:visited{&#xA;&#x9;/*Edge of the shape affected by the pseudo selector*/&#xA;&#x9;lineColor: #92d050;&#xA;&#x9;lineWidth: 2px;&#xA;&#x9;/*Content of the shape affected by the pseudo selector*/&#xA;&#x9;fillColor: #92d050;&#xA;}&#xA;Transition > Label {&#xA;&#x9;bodyCutLength: 1;&#xA;&#x9;indicateParameters: true;&#xA;&#x9;lineBreakBeforeEffect : true;&#xA;}"/>
@@ -1016,7 +1043,7 @@
     </children>
     <styles xmi:type="notation:StringValueStyle" xmi:id="_TW5zYXEIEeatX-i6MtVR2A" name="diagram_compatibility_version" stringValue="1.2.0"/>
     <styles xmi:type="notation:DiagramStyle" xmi:id="_TW5zYnEIEeatX-i6MtVR2A"/>
-    <styles xmi:type="style:PapyrusViewStyle" xmi:id="_TW5zY3EIEeatX-i6MtVR2A">
+    <styles xmi:type="style_1:PapyrusViewStyle" xmi:id="_TW5zY3EIEeatX-i6MtVR2A">
       <owner xmi:type="uml:Package" href="SimpleSMSignalEvent.uml#_LOqIEDLaEd2qeKRLMdIx_A"/>
     </styles>
     <element xmi:type="uml:Package" href="SimpleSMSignalEvent.uml#_LOqIEDLaEd2qeKRLMdIx_A"/>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMSignalEvent/SimpleSMSignalEvent.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMSignalEvent/SimpleSMSignalEvent.uml
index ba6943c..c86b614 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMSignalEvent/SimpleSMSignalEvent.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/examples/SimpleSMSignalEvent/SimpleSMSignalEvent.uml
@@ -119,10 +119,9 @@
               <trigger xmi:type="uml:Trigger" xmi:id="_rHpXoOtoEeCjb9i0gG4phA" event="_rHoJgOtoEeCjb9i0gG4phA"/>
             </transition>
             <transition xmi:type="uml:Transition" xmi:id="_OH_UYOYYEeCBL_IbXY9ofw" name="Transition2" source="_7_1cMOYXEeCBL_IbXY9ofw" target="_53E_8OYXEeCBL_IbXY9ofw">
-              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_CAWpgSSoEeG6GJ4vU06VYQ" name="add">
+              <effect xmi:type="uml:OpaqueBehavior" xmi:id="_CAWpgSSoEeG6GJ4vU06VYQ" name="mult">
                 <language>C/C++</language>
-                <body>add(2,3);&#xD;
-mult(3,5);&#xD;
+                <body>mult(3,5);&#xD;
 std::cout &lt;&lt;&quot;From State1 to State0 \n&quot;;</body>
               </effect>
               <trigger xmi:type="uml:Trigger" xmi:id="_-aQtACaeEeG4fZdVXNtoOQ" event="_-PMFcCaeEeG4fZdVXNtoOQ"/>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/plugin.xml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/plugin.xml
index 3dc006f..5248ea6 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/plugin.xml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/plugin.xml
@@ -15,9 +15,9 @@
 	</extension>
 
 	<extension point="org.eclipse.emf.ecore.uri_mapping">
-    	<mapping
-          source="pathmap://DML_TRAFOS_CPP/"
-          target="platform:/plugin/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/library/">
+	<mapping
+		source="pathmap://DML_TRAFOS_CPP/"
+		target="platform:/plugin/org.eclipse.papyrus.designer.transformation.languages.cpp.library/models/library/">
 		</mapping>
 	</extension>
 
@@ -34,18 +34,29 @@
 			<fileToOpen
 				location="HelloWorldCpp/HelloWorldCpp.di">
 			</fileToOpen>
+
 			<projectDescriptor
 				contentURI="models/examples/SimpleSM/"
 				name="SimpleSM"
-				description="Papyrus Designer example using a busing a simple state machine.">
+				description="Papyrus Designer example using a simple state machine with time events.">
 			</projectDescriptor>
 			<fileToOpen
 				location="SimpleSM/SimpleSM.di">
 			</fileToOpen>
+
+			<projectDescriptor
+				contentURI="models/examples/SMwithJunction/"
+				name="SMwithJunction"
+				description="Papyrus Designer example of a state machine containing a junction.">
+			</projectDescriptor>
+			<fileToOpen
+				location="SMwithJunction/SMwithJunction.di">
+			</fileToOpen>
+
 			<projectDescriptor
 				contentURI="models/examples/ComplexSM/"
 				name="ComplexSM"
-				description="Papyrus Designer example using a bit more complex state machine.">
+				description="Papyrus Designer example using a hierarchical state machine.">
 			</projectDescriptor>
 			<fileToOpen
 				location="ComplexSM/ComplexSM.di">
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/xtend-gen/org/eclipse/papyrus/designer/transformation/languages/cpp/library/.gitignore b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/xtend-gen/org/eclipse/papyrus/designer/transformation/languages/cpp/library/.gitignore
deleted file mode 100644
index dd424f0..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.library/xtend-gen/org/eclipse/papyrus/designer/transformation/languages/cpp/library/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/BootLoaderGenCpp.java
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml
index 6905850..98da342 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
-  <uml:Model xmi:id="_1cph1eVVEeaYxL1QJO8D3g" name="AnsiCLibrary">
+  <uml:Model xmi:id="_nhrWYZnsEeeCzKHJj7Wq7w" name="AnsiCLibrary">
     <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_7wRIABydEduyofBvg4RL2w" name="int"/>
     <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_vAIV4I7PEdySGvm5GN66HA" name="bool"/>
     <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_5lVhgBydEduyofBvg4RL2w" name="char"/>
@@ -12,5 +12,5 @@
       <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
     </profileApplication>
   </uml:Model>
-  <standard:ModelLibrary xmi:id="_1cqI4OVVEeaYxL1QJO8D3g" base_Package="_1cph1eVVEeaYxL1QJO8D3g"/>
+  <standard:ModelLibrary xmi:id="_nhr9cJnsEeeCzKHJj7Wq7w" base_Package="_nhrWYZnsEeeCzKHJj7Wq7w"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/BootLoaderCpp.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/BootLoaderCpp.uml
index f6b30fe..1f94e96 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/BootLoaderCpp.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/BootLoaderCpp.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
-  <uml:Model xmi:id="_1dSbAOVVEeaYxL1QJO8D3g" name="BootLoaderCpp">
+  <uml:Model xmi:id="_njpsUJnsEeeCzKHJj7Wq7w" name="BootLoaderCpp">
     <packagedElement xmi:type="uml:Class" xmi:id="_yvoocHhpEealuJVOx0h2iw" name="BootLoader">
       <ownedAttribute xmi:id="_i8h2AHlvEeavUcYMQ2Z1Aw" name="argc" isStatic="true">
         <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/PrimitiveTypes.uml#Integer"/>
@@ -10,15 +10,15 @@
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JDJtYHjkEeakrcXZeNIVKw" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_JDNXwHjkEeakrcXZeNIVKw" value="1"/>
       </ownedAttribute>
-      <ownedAttribute xmi:id="_1dVeVeVVEeaYxL1QJO8D3g" name="mainInstance" aggregation="composite">
+      <ownedAttribute xmi:id="_njxoIJnsEeeCzKHJj7Wq7w" name="mainInstance" aggregation="composite">
         <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/ComplexSM.uml#_oqZNUDLaEd2qeKRLMdIx_A"/>
       </ownedAttribute>
-      <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1dWFYOVVEeaYxL1QJO8D3g" name="init" specification="_8b9jYHjjEeakrcXZeNIVKw">
+      <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_njyPMJnsEeeCzKHJj7Wq7w" name="init" specification="_8b9jYHjjEeakrcXZeNIVKw">
         <language>C/C++</language>
         <body>mainInstance.run();
 </body>
       </ownedBehavior>
-      <ownedOperation xmi:id="_8b9jYHjjEeakrcXZeNIVKw" name="init" method="_1dWFYOVVEeaYxL1QJO8D3g"/>
+      <ownedOperation xmi:id="_8b9jYHjjEeakrcXZeNIVKw" name="init" method="_njyPMJnsEeeCzKHJj7Wq7w"/>
     </packagedElement>
     <packagedElement xmi:type="uml:Class" xmi:id="_CS_KsHjwEeasG4qn4umteA" name="NodeInfo">
       <ownedAttribute xmi:id="_IHT5wHjwEeasG4qn4umteA" name="nodeIndex" isStatic="true">
@@ -37,6 +37,6 @@
       <appliedProfile href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
     </profileApplication>
   </uml:Model>
-  <C_Cpp:Include xmi:id="_1dSbBeVVEeaYxL1QJO8D3g" body="BootLoaderCpp::BootLoader bootloader;&#xA;&#xA;int main (int argc, const char* argv[])&#xA;{&#xA;&#x9;// store arguments for future access&#xA;&#x9;BootLoaderCpp::BootLoader::argc = argc;&#xA;&#x9;BootLoaderCpp::BootLoader::argv = argv;&#xA;&#xA;&#x9;bootloader.init();&#xA;&#x9;return 0;&#xA;}&#xA;" base_class="_yvoocHhpEealuJVOx0h2iw" base_Classifier="_yvoocHhpEealuJVOx0h2iw"/>
-  <C_Cpp:Ptr xmi:id="_1dUQM-VVEeaYxL1QJO8D3g" base_property="_ET2FoHjkEeakrcXZeNIVKw"/>
+  <C_Cpp:Include xmi:id="_njqTYJnsEeeCzKHJj7Wq7w" body="BootLoaderCpp::BootLoader bootloader;&#xA;&#xA;int main (int argc, const char* argv[])&#xA;{&#xA;&#x9;// store arguments for future access&#xA;&#x9;BootLoaderCpp::BootLoader::argc = argc;&#xA;&#x9;BootLoaderCpp::BootLoader::argv = argv;&#xA;&#xA;&#x9;bootloader.init();&#xA;&#x9;return 0;&#xA;}&#xA;" base_class="_yvoocHhpEealuJVOx0h2iw" base_Classifier="_yvoocHhpEealuJVOx0h2iw"/>
+  <C_Cpp:Ptr xmi:id="_njvL4JnsEeeCzKHJj7Wq7w" base_property="_ET2FoHjkEeakrcXZeNIVKw"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/ComplexSM.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/ComplexSM.uml
index ab98201..bc3a728 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/ComplexSM.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/ComplexSM.uml
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:Deployment="http://www.eclipse.org/papyrus/Deployment/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
   <uml:Model xmi:id="_O6TiIDLUEd26WNosUASSSw" name="ComplexSM">
-    <packagedElement xmi:type="uml:Package" xmi:id="_1ciNEeVVEeaYxL1QJO8D3g" name="deployment">
-      <packagedElement xmi:type="uml:Package" xmi:id="_1ci0JOVVEeaYxL1QJO8D3g" name="ComplexSMDepPlan">
+    <packagedElement xmi:type="uml:Package" xmi:id="_nhXNUJnsEeeCzKHJj7Wq7w" name="deployment">
+      <packagedElement xmi:type="uml:Package" xmi:id="_nhX0YZnsEeeCzKHJj7Wq7w" name="ComplexSMDepPlan">
         <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_KY5NgJbOEeanRKHSrFuDZA" name="mainInstance" classifier="_oqZNUDLaEd2qeKRLMdIx_A"/>
       </packagedElement>
       <profileApplication xmi:id="_OTdTUOSmEeaYxL1QJO8D3g">
@@ -12,70 +12,70 @@
         <appliedProfile href="pathmap://DEP_PROFILE/Deployment.profile.uml#_gPDsIBa-EearhdjjJ6cVzQ"/>
       </profileApplication>
     </packagedElement>
-    <packagedElement xmi:type="uml:Package" xmi:id="_1ci0KeVVEeaYxL1QJO8D3g" name="classes">
-      <packagedElement xmi:type="uml:Class" xmi:id="_oqZNUDLaEd2qeKRLMdIx_A" name="ComplexSM" classifierBehavior="_1chmAOVVEeaYxL1QJO8D3g">
+    <packagedElement xmi:type="uml:Package" xmi:id="_nhYbcZnsEeeCzKHJj7Wq7w" name="classes">
+      <packagedElement xmi:type="uml:Class" xmi:id="_oqZNUDLaEd2qeKRLMdIx_A" name="ComplexSM" classifierBehavior="_nhP4kZnsEeeCzKHJj7Wq7w">
         <ownedAttribute xmi:id="_Ya5_oCkFEeaWptp_P1JVYQ" name="x">
           <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1bOlgOVVEeaYxL1QJO8D3g" name="systemState">
+        <ownedAttribute xmi:id="_nUxi0JnsEeeCzKHJj7Wq7w" name="systemState">
           <type xmi:type="uml:Enumeration" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml#_uYyt0CdFEea3Ob5UfxuCGA"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1biHgOVVEeaYxL1QJO8D3g" name="Junction1">
+        <ownedAttribute xmi:id="_nf0VMJnsEeeCzKHJj7Wq7w" name="Junction1">
           <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1bnAAOVVEeaYxL1QJO8D3g" name="states" type="_1biukuVVEeaYxL1QJO8D3g"/>
-        <ownedAttribute xmi:id="_1bqDUOVVEeaYxL1QJO8D3g" name="activeStateID" type="_1biHgeVVEeaYxL1QJO8D3g"/>
-        <ownedAttribute xmi:id="_1b1pgeVVEeaYxL1QJO8D3g" name="dispatchFlag">
+        <ownedAttribute xmi:id="_nf7p8JnsEeeCzKHJj7Wq7w" name="states" type="_nf0VNZnsEeeCzKHJj7Wq7w"/>
+        <ownedAttribute xmi:id="_nf_7YZnsEeeCzKHJj7Wq7w" name="activeStateID" type="_nf0VMZnsEeeCzKHJj7Wq7w"/>
+        <ownedAttribute xmi:id="_ngS2UZnsEeeCzKHJj7Wq7w" name="dispatchFlag">
           <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1b_agOVVEeaYxL1QJO8D3g" name="threads">
+        <ownedAttribute xmi:id="_ngmYUJnsEeeCzKHJj7Wq7w" name="threads">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml#_ea234NYGEd-CgJIavLpOxQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1cCd0eVVEeaYxL1QJO8D3g" name="flags">
+        <ownedAttribute xmi:id="_ngqCsJnsEeeCzKHJj7Wq7w" name="flags">
           <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1cETAeVVEeaYxL1QJO8D3g" name="conds">
+        <ownedAttribute xmi:id="_ngttEZnsEeeCzKHJj7Wq7w" name="conds">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml#_-vYZoCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1cGvQOVVEeaYxL1QJO8D3g" name="mutexes">
+        <ownedAttribute xmi:id="_ngwJUZnsEeeCzKHJj7Wq7w" name="mutexes">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml#__niwsCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1cIkceVVEeaYxL1QJO8D3g" name="threadStructs">
+        <ownedAttribute xmi:id="_ngylkZnsEeeCzKHJj7Wq7w" name="threadStructs">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml#_4Z1UwCmREearkPe7QerpcQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1cSVcOVVEeaYxL1QJO8D3g" name="doActivityTable" type="_1cP5MeVVEeaYxL1QJO8D3g"/>
-        <ownedAttribute xmi:id="_1cVYweVVEeaYxL1QJO8D3g" name="timeEventTable" type="_1cP5MeVVEeaYxL1QJO8D3g"/>
-        <ownedAttribute xmi:id="_1cXN8eVVEeaYxL1QJO8D3g" name="timeEventThreads">
+        <ownedAttribute xmi:id="_ng7IcZnsEeeCzKHJj7Wq7w" name="doActivityTable" type="_ng4sMpnsEeeCzKHJj7Wq7w"/>
+        <ownedAttribute xmi:id="_nhAA8JnsEeeCzKHJj7Wq7w" name="timeEventTable" type="_ng4sMpnsEeeCzKHJj7Wq7w"/>
+        <ownedAttribute xmi:id="_nhCdMJnsEeeCzKHJj7Wq7w" name="timeEventThreads">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml#_ea234NYGEd-CgJIavLpOxQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1cZDIeVVEeaYxL1QJO8D3g" name="timeEventFlags">
+        <ownedAttribute xmi:id="_nhESYZnsEeeCzKHJj7Wq7w" name="timeEventFlags">
           <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1caRQeVVEeaYxL1QJO8D3g" name="timeEventConds">
+        <ownedAttribute xmi:id="_nhGuoJnsEeeCzKHJj7Wq7w" name="timeEventConds">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml#_-vYZoCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1ccGceVVEeaYxL1QJO8D3g" name="timeEventMutexes">
+        <ownedAttribute xmi:id="_nhIj0ZnsEeeCzKHJj7Wq7w" name="timeEventMutexes">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml#__niwsCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1cdUkeVVEeaYxL1QJO8D3g" name="timeEventThreadStructs">
+        <ownedAttribute xmi:id="_nhKZAZnsEeeCzKHJj7Wq7w" name="timeEventThreadStructs">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml#_4Z1UwCmREearkPe7QerpcQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1cfw0OVVEeaYxL1QJO8D3g" name="eventQueue">
+        <ownedAttribute xmi:id="_nhM1Q5nsEeeCzKHJj7Wq7w" name="eventQueue">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml#_dWxYQD0zEeaQfbTekb55bw"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1cfw0eVVEeaYxL1QJO8D3g" name="currentEvent">
+        <ownedAttribute xmi:id="_nhNcUJnsEeeCzKHJj7Wq7w" name="currentEvent">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml#_MyJIUD0zEeaQfbTekb55bw"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1chmAeVVEeaYxL1QJO8D3g" name="dispatchThread">
+        <ownedAttribute xmi:id="_nhQfoJnsEeeCzKHJj7Wq7w" name="dispatchThread">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml#_ea234NYGEd-CgJIavLpOxQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1chmAuVVEeaYxL1QJO8D3g" name="dispatchStruct">
+        <ownedAttribute xmi:id="_nhQfoZnsEeeCzKHJj7Wq7w" name="dispatchStruct">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml#_4Z1UwCmREearkPe7QerpcQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1chmA-VVEeaYxL1QJO8D3g" name="runToCompletionMutex">
+        <ownedAttribute xmi:id="_nhQfopnsEeeCzKHJj7Wq7w" name="runToCompletionMutex">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml#__niwsCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_1chmBOVVEeaYxL1QJO8D3g" name="runToCompletionCond">
+        <ownedAttribute xmi:id="_nhQfo5nsEeeCzKHJj7Wq7w" name="runToCompletionCond">
           <type xmi:type="uml:Class" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml#_-vYZoCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
         <interfaceRealization xmi:id="_YQqH0JYlEd6G9q9hwr11bw" name="realization of ICompute" client="_oqZNUDLaEd2qeKRLMdIx_A" supplier="_cn-H0DLbEd2qeKRLMdIx_A" contract="_cn-H0DLbEd2qeKRLMdIx_A"/>
@@ -83,7 +83,7 @@
           <supplier xmi:type="uml:Interface" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
           <contract href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
         </interfaceRealization>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1chmAOVVEeaYxL1QJO8D3g" name="dispatchEvent" specification="_1cg-8eVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_nhP4kZnsEeeCzKHJj7Wq7w" name="dispatchEvent" specification="_nhP4kJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>bool popDeferred = false;
 while(true) {
@@ -165,7 +165,7 @@
 sleep(15);
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1bu70OVVEeaYxL1QJO8D3g" name="SMSimple_Region0_Enter" specification="_1buUwOVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ngGpEJnsEeeCzKHJj7Wq7w" name="SMSimple_Region0_Enter" specification="_ngGCAJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>switch(enter_mode) {
 	case SMSIMPLE_REGION0_DEFAULT:
@@ -184,7 +184,7 @@
 		break;
 }</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1bvi4eVVEeaYxL1QJO8D3g" name="State3_Region1_Enter" specification="_1bu70eVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ngIeQJnsEeeCzKHJj7Wq7w" name="State3_Region1_Enter" specification="_ngHQIJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>switch(enter_mode) {
 	case STATE3_REGION1_SHALLOWHISTORY1: 
@@ -209,7 +209,7 @@
 		break;
 }</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1bwJ8eVVEeaYxL1QJO8D3g" name="State3_Region1_Exit" specification="_1bwJ8OVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ngKTcJnsEeeCzKHJj7Wq7w" name="State3_Region1_Exit" specification="_ngJsYJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>//exiting region Region1
 if (states[STATE3_ID].actives[0] != STATE_MAX) {
@@ -229,11 +229,11 @@
 	states[STATE3_ID].actives[0] = STATE_MAX;
 }</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1b1CcOVVEeaYxL1QJO8D3g" name="ComplexSM" specification="_1bxYEOVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ngPL8ZnsEeeCzKHJj7Wq7w" name="ComplexSM" specification="_ngK6gJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>startBehavior();</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1b1pgOVVEeaYxL1QJO8D3g" name="startBehavior" specification="_1b1CceVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ngS2UJnsEeeCzKHJj7Wq7w" name="startBehavior" specification="_ngPzAJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>systemState = statemachine::IDLE;
 doActivityTable[STATE0_ID] =  states[STATE0_ID].doActivity;
@@ -284,7 +284,7 @@
 SMSimple_Region0_Enter(SMSIMPLE_REGION0_DEFAULT);
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1b23oOVVEeaYxL1QJO8D3g" name="processTE_value_50_unit_ms_" specification="_1b2QkOVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ngXu0JnsEeeCzKHJj7Wq7w" name="processTE_value_50_unit_ms_" specification="_ngTdYJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>systemState = statemachine::EVENT_PROCESSING;
 if (systemState == statemachine::EVENT_PROCESSING) {
@@ -307,7 +307,7 @@
 }
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1b568OVVEeaYxL1QJO8D3g" name="processTE_value_500_unit_ms_" specification="_1b23oeVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ngd1cJnsEeeCzKHJj7Wq7w" name="processTE_value_500_unit_ms_" specification="_ngXu0ZnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>systemState = statemachine::EVENT_PROCESSING;
 if (states[STATE3_ID].actives[0] == STATE3_1_ID) {
@@ -338,7 +338,6 @@
 			//from State1 to State0
 			if (true) {
 			setFlag(COMPLEXSM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
-			add(2,3);
 			mult(3,5);
 			std::cout &lt;&lt;&quot;From State1 to State0 \n&quot;;
 			activeStateID = STATE0_ID;
@@ -380,7 +379,7 @@
 }
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1b6iAOVVEeaYxL1QJO8D3g" name="processCE_CServer_impl_add" specification="_1b568eVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ngecgJnsEeeCzKHJj7Wq7w" name="processCE_CServer_impl_add" specification="_ngd1cZnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>COMPLEXSM_GET_CONTROL
 systemState = statemachine::EVENT_PROCESSING;
@@ -405,7 +404,7 @@
 COMPLEXSM_RELEASE_CONTROL
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1b8-QeVVEeaYxL1QJO8D3g" name="processTE_value_25_unit_ms_" specification="_1b8-QOVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ngj8EJnsEeeCzKHJj7Wq7w" name="processTE_value_25_unit_ms_" specification="_ngjVAJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>systemState = statemachine::EVENT_PROCESSING;
 if (systemState == statemachine::EVENT_PROCESSING) {
@@ -430,16 +429,16 @@
 }
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1b-MYeVVEeaYxL1QJO8D3g" name="processCompletionEvent" specification="_1b-MYOVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_nglKMJnsEeeCzKHJj7Wq7w" name="processCompletionEvent" specification="_ngkjIJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>systemState = statemachine::EVENT_PROCESSING;
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1b-zdOVVEeaYxL1QJO8D3g" name="State2_entry" specification="_1b-zc-VVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_nglxQZnsEeeCzKHJj7Wq7w" name="State2_entry" specification="_nglxQJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>x = 5;</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1cP5MOVVEeaYxL1QJO8D3g" name="thread_func_wrapper" specification="_1cLAseVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ng4sMZnsEeeCzKHJj7Wq7w" name="thread_func_wrapper" specification="_ng0awZnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>statemachine::StructForThread_t* cptr = (statemachine::StructForThread_t*)data;
 ComplexSM* ptr = (ComplexSM*) cptr->ptr;
@@ -453,7 +452,7 @@
 }
 return NULL;</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1cUxs-VVEeaYxL1QJO8D3g" name="doCallActivity" specification="_1cUxseVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ng-LwJnsEeeCzKHJj7Wq7w" name="doCallActivity" specification="_ng9ksJnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>flags[id] = false;
 while(true) {
@@ -471,7 +470,7 @@
 	pthread_mutex_unlock(&amp;mutexes[id]);
 }</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1cVYwOVVEeaYxL1QJO8D3g" name="setFlag" specification="_1cUxtOVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_ng-y0JnsEeeCzKHJj7Wq7w" name="setFlag" specification="_ng-LwZnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>//value = true => start activity
 //value = false => stop activity
@@ -486,7 +485,7 @@
 }
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_1cfJxOVVEeaYxL1QJO8D3g" name="listenTimeEvent" specification="_1cfJweVVEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_nhM1QpnsEeeCzKHJj7Wq7w" name="listenTimeEvent" specification="_nhMOMZnsEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>struct timeval tv;
 struct timespec ts;
@@ -519,7 +518,7 @@
 	}
 }</body>
         </ownedBehavior>
-        <ownedOperation xmi:id="_1cg-8eVVEeaYxL1QJO8D3g" name="dispatchEvent" method="_1chmAOVVEeaYxL1QJO8D3g"/>
+        <ownedOperation xmi:id="_nhP4kJnsEeeCzKHJj7Wq7w" name="dispatchEvent" method="_nhP4kZnsEeeCzKHJj7Wq7w"/>
         <ownedOperation xmi:id="_TbIjUJYlEd6G9q9hwr11bw" name="add" method="_ML-4AKI5Ed6FqJCjEUrkqQ">
           <ownedParameter xmi:id="_espUoC1REea25uwDpRQuxg" name="a">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_8heigBydEduyofBvg4RL2w"/>
@@ -555,91 +554,91 @@
           </ownedParameter>
         </ownedOperation>
         <ownedOperation xmi:id="_VGsRACgBEeapjr3l63b85A" name="run" method="_YNCW4CgBEeapjr3l63b85A"/>
-        <ownedOperation xmi:id="_1buUwOVVEeaYxL1QJO8D3g" name="SMSimple_Region0_Enter" method="_1bu70OVVEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_1buUweVVEeaYxL1QJO8D3g" name="enter_mode">
+        <ownedOperation xmi:id="_ngGCAJnsEeeCzKHJj7Wq7w" name="SMSimple_Region0_Enter" method="_ngGpEJnsEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_ngGCAZnsEeeCzKHJj7Wq7w" name="enter_mode">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_1bu70eVVEeaYxL1QJO8D3g" name="State3_Region1_Enter" method="_1bvi4eVVEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_1bvi4OVVEeaYxL1QJO8D3g" name="enter_mode">
+        <ownedOperation xmi:id="_ngHQIJnsEeeCzKHJj7Wq7w" name="State3_Region1_Enter" method="_ngIeQJnsEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_ngHQIZnsEeeCzKHJj7Wq7w" name="enter_mode">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_1bwJ8OVVEeaYxL1QJO8D3g" name="State3_Region1_Exit" method="_1bwJ8eVVEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_1bxYEOVVEeaYxL1QJO8D3g" name="ComplexSM" method="_1b1CcOVVEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_1b1CceVVEeaYxL1QJO8D3g" name="startBehavior" method="_1b1pgOVVEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_1b2QkOVVEeaYxL1QJO8D3g" name="processTE_value_50_unit_ms_" method="_1b23oOVVEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_1b23oeVVEeaYxL1QJO8D3g" name="processTE_value_500_unit_ms_" method="_1b568OVVEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_1b568eVVEeaYxL1QJO8D3g" name="processCE_CServer_impl_add" method="_1b6iAOVVEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_1b7JEOVVEeaYxL1QJO8D3g" name="a">
+        <ownedOperation xmi:id="_ngJsYJnsEeeCzKHJj7Wq7w" name="State3_Region1_Exit" method="_ngKTcJnsEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_ngK6gJnsEeeCzKHJj7Wq7w" name="ComplexSM" method="_ngPL8ZnsEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_ngPzAJnsEeeCzKHJj7Wq7w" name="startBehavior" method="_ngS2UJnsEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_ngTdYJnsEeeCzKHJj7Wq7w" name="processTE_value_50_unit_ms_" method="_ngXu0JnsEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_ngXu0ZnsEeeCzKHJj7Wq7w" name="processTE_value_500_unit_ms_" method="_ngd1cJnsEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_ngd1cZnsEeeCzKHJj7Wq7w" name="processCE_CServer_impl_add" method="_ngecgJnsEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_nggRsJnsEeeCzKHJj7Wq7w" name="a">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_8heigBydEduyofBvg4RL2w"/>
-            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_1b7wIOVVEeaYxL1QJO8D3g" value="1"/>
-            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_1b7wIeVVEeaYxL1QJO8D3g" value="1"/>
+            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_nggRsZnsEeeCzKHJj7Wq7w" value="1"/>
+            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_nggRspnsEeeCzKHJj7Wq7w" value="1"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_1b7wIuVVEeaYxL1QJO8D3g" name="b">
+          <ownedParameter xmi:id="_ngg4wJnsEeeCzKHJj7Wq7w" name="b">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_8heigBydEduyofBvg4RL2w"/>
-            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_1b7wI-VVEeaYxL1QJO8D3g" value="1"/>
-            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_1b7wJOVVEeaYxL1QJO8D3g" value="1"/>
+            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ngg4wZnsEeeCzKHJj7Wq7w" value="1"/>
+            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ngg4wpnsEeeCzKHJj7Wq7w" value="1"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_1b8-QOVVEeaYxL1QJO8D3g" name="processTE_value_25_unit_ms_" method="_1b8-QeVVEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_1b-MYOVVEeaYxL1QJO8D3g" name="processCompletionEvent" method="_1b-MYeVVEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_1b-zc-VVEeaYxL1QJO8D3g" name="State2_entry" method="_1b-zdOVVEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_1cLAseVVEeaYxL1QJO8D3g" name="thread_func_wrapper" isStatic="true" method="_1cP5MOVVEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_1cLAsuVVEeaYxL1QJO8D3g" name="data">
+        <ownedOperation xmi:id="_ngjVAJnsEeeCzKHJj7Wq7w" name="processTE_value_25_unit_ms_" method="_ngj8EJnsEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_ngkjIJnsEeeCzKHJj7Wq7w" name="processCompletionEvent" method="_nglKMJnsEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_nglxQJnsEeeCzKHJj7Wq7w" name="State2_entry" method="_nglxQZnsEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_ng0awZnsEeeCzKHJj7Wq7w" name="thread_func_wrapper" isStatic="true" method="_ng4sMZnsEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_ng0awpnsEeeCzKHJj7Wq7w" name="data">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_1cNc8eVVEeaYxL1QJO8D3g" name="ret" direction="return">
+          <ownedParameter xmi:id="_ng23AZnsEeeCzKHJj7Wq7w" name="ret" direction="return">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_1cUxseVVEeaYxL1QJO8D3g" name="doCallActivity" method="_1cUxs-VVEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_1cUxsuVVEeaYxL1QJO8D3g" name="id">
+        <ownedOperation xmi:id="_ng9ksJnsEeeCzKHJj7Wq7w" name="doCallActivity" method="_ng-LwJnsEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_ng9ksZnsEeeCzKHJj7Wq7w" name="id">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_1cUxtOVVEeaYxL1QJO8D3g" name="setFlag" method="_1cVYwOVVEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_1cUxteVVEeaYxL1QJO8D3g" name="id">
+        <ownedOperation xmi:id="_ng-LwZnsEeeCzKHJj7Wq7w" name="setFlag" method="_ng-y0JnsEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_ng-LwpnsEeeCzKHJj7Wq7w" name="id">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_1cUxtuVVEeaYxL1QJO8D3g" name="func_type">
+          <ownedParameter xmi:id="_ng-Lw5nsEeeCzKHJj7Wq7w" name="func_type">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_1cUxt-VVEeaYxL1QJO8D3g" name="value">
+          <ownedParameter xmi:id="_ng-LxJnsEeeCzKHJj7Wq7w" name="value">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_1cfJweVVEeaYxL1QJO8D3g" name="listenTimeEvent" method="_1cfJxOVVEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_1cfJwuVVEeaYxL1QJO8D3g" name="id">
+        <ownedOperation xmi:id="_nhMOMZnsEeeCzKHJj7Wq7w" name="listenTimeEvent" method="_nhM1QpnsEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_nhM1QJnsEeeCzKHJj7Wq7w" name="id">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_1cfJw-VVEeaYxL1QJO8D3g" name="duration">
+          <ownedParameter xmi:id="_nhM1QZnsEeeCzKHJj7Wq7w" name="duration">
             <type xmi:type="uml:PrimitiveType" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_1biHguVVEeaYxL1QJO8D3g" name="entry_dft"/>
-        <ownedOperation xmi:id="_1biukOVVEeaYxL1QJO8D3g" name="exit_dft"/>
-        <ownedOperation xmi:id="_1biukeVVEeaYxL1QJO8D3g" name="doActivity_dft"/>
-        <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_1biukuVVEeaYxL1QJO8D3g" name="State_t"/>
-        <nestedClassifier xmi:type="uml:Enumeration" xmi:id="_1biHgeVVEeaYxL1QJO8D3g" name="StateIDEnum">
-          <ownedLiteral xmi:id="_1b-zcOVVEeaYxL1QJO8D3g" name="STATE0_ID"/>
-          <ownedLiteral xmi:id="_1b-zceVVEeaYxL1QJO8D3g" name="STATE1_ID"/>
-          <ownedLiteral xmi:id="_1b-zcuVVEeaYxL1QJO8D3g" name="STATE2_ID"/>
-          <ownedLiteral xmi:id="_1b-zdeVVEeaYxL1QJO8D3g" name="STATE3_ID"/>
-          <ownedLiteral xmi:id="_1b-zduVVEeaYxL1QJO8D3g" name="STATE3_1_ID"/>
-          <ownedLiteral xmi:id="_1b-zd-VVEeaYxL1QJO8D3g" name="STATE3_2_ID"/>
-          <ownedLiteral xmi:id="_1b-zeOVVEeaYxL1QJO8D3g" name="STATE_MAX"/>
+        <ownedOperation xmi:id="_nf0VMpnsEeeCzKHJj7Wq7w" name="entry_dft"/>
+        <ownedOperation xmi:id="_nf0VM5nsEeeCzKHJj7Wq7w" name="exit_dft"/>
+        <ownedOperation xmi:id="_nf0VNJnsEeeCzKHJj7Wq7w" name="doActivity_dft"/>
+        <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_nf0VNZnsEeeCzKHJj7Wq7w" name="State_t"/>
+        <nestedClassifier xmi:type="uml:Enumeration" xmi:id="_nf0VMZnsEeeCzKHJj7Wq7w" name="StateIDEnum">
+          <ownedLiteral xmi:id="_nglKMZnsEeeCzKHJj7Wq7w" name="STATE0_ID"/>
+          <ownedLiteral xmi:id="_nglKMpnsEeeCzKHJj7Wq7w" name="STATE1_ID"/>
+          <ownedLiteral xmi:id="_nglKM5nsEeeCzKHJj7Wq7w" name="STATE2_ID"/>
+          <ownedLiteral xmi:id="_nglxQpnsEeeCzKHJj7Wq7w" name="STATE3_ID"/>
+          <ownedLiteral xmi:id="_nglxQ5nsEeeCzKHJj7Wq7w" name="STATE3_1_ID"/>
+          <ownedLiteral xmi:id="_nglxRJnsEeeCzKHJj7Wq7w" name="STATE3_2_ID"/>
+          <ownedLiteral xmi:id="_nglxRZnsEeeCzKHJj7Wq7w" name="STATE_MAX"/>
         </nestedClassifier>
-        <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_1cP5MeVVEeaYxL1QJO8D3g" name="FptPointer"/>
-        <nestedClassifier xmi:type="uml:Enumeration" xmi:id="_1bZkoOVVEeaYxL1QJO8D3g" name="EventId_t">
-          <ownedLiteral xmi:id="_1baLsOVVEeaYxL1QJO8D3g" name="TE_VALUE_50_UNIT_MS__ID"/>
-          <ownedLiteral xmi:id="_1baLseVVEeaYxL1QJO8D3g" name="TE_VALUE_500_UNIT_MS__ID"/>
-          <ownedLiteral xmi:id="_1baywOVVEeaYxL1QJO8D3g" name="TE_VALUE_25_UNIT_MS__ID"/>
-          <ownedLiteral xmi:id="_1bcA4OVVEeaYxL1QJO8D3g" name="CE_CSERVER_IMPL_ADD_ID"/>
-          <ownedLiteral xmi:id="_1bcn8OVVEeaYxL1QJO8D3g" name="COMPLETIONEVENT_ID"/>
+        <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_ng4sMpnsEeeCzKHJj7Wq7w" name="FptPointer"/>
+        <nestedClassifier xmi:type="uml:Enumeration" xmi:id="_nfpWEJnsEeeCzKHJj7Wq7w" name="EventId_t">
+          <ownedLiteral xmi:id="_nfsZYJnsEeeCzKHJj7Wq7w" name="TE_VALUE_50_UNIT_MS__ID"/>
+          <ownedLiteral xmi:id="_nfsZYZnsEeeCzKHJj7Wq7w" name="TE_VALUE_500_UNIT_MS__ID"/>
+          <ownedLiteral xmi:id="_nfsZYpnsEeeCzKHJj7Wq7w" name="TE_VALUE_25_UNIT_MS__ID"/>
+          <ownedLiteral xmi:id="_nfuOkJnsEeeCzKHJj7Wq7w" name="CE_CSERVER_IMPL_ADD_ID"/>
+          <ownedLiteral xmi:id="_nfu1oJnsEeeCzKHJj7Wq7w" name="COMPLETIONEVENT_ID"/>
         </nestedClassifier>
       </packagedElement>
-      <packagedElement xmi:type="uml:Package" xmi:id="_1cjbM-VVEeaYxL1QJO8D3g" name="Interfaces">
+      <packagedElement xmi:type="uml:Package" xmi:id="_nhZCgpnsEeeCzKHJj7Wq7w" name="Interfaces">
         <packagedElement xmi:type="uml:Interface" xmi:id="_cn-H0DLbEd2qeKRLMdIx_A" name="ICompute">
           <ownedReception xmi:id="_1U0U8McqEeSsAI2TZshUyg" name="add" signal="_ywk2kMcqEeSsAI2TZshUyg"/>
           <ownedReception xmi:id="_M-tXYMcrEeSsAI2TZshUyg" name="mult" signal="_z0nGcMcqEeSsAI2TZshUyg"/>
@@ -681,10 +680,10 @@
         <packagedElement xmi:type="uml:Signal" xmi:id="_ywk2kMcqEeSsAI2TZshUyg" name="Add"/>
         <packagedElement xmi:type="uml:Signal" xmi:id="_z0nGcMcqEeSsAI2TZshUyg" name="Mult"/>
       </packagedElement>
-      <packagedElement xmi:type="uml:Dependency" xmi:id="_1bOlgeVVEeaYxL1QJO8D3g" client="_oqZNUDLaEd2qeKRLMdIx_A">
+      <packagedElement xmi:type="uml:Dependency" xmi:id="_nUxi0ZnsEeeCzKHJj7Wq7w" client="_oqZNUDLaEd2qeKRLMdIx_A">
         <supplier xmi:type="uml:Enumeration" href="/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml#_hNs5oCdSEea6h5xPEh8iAg"/>
       </packagedElement>
-      <packagedElement xmi:type="uml:Dependency" xmi:id="_1bmY8OVVEeaYxL1QJO8D3g" client="_1biukuVVEeaYxL1QJO8D3g" supplier="_1biHgeVVEeaYxL1QJO8D3g"/>
+      <packagedElement xmi:type="uml:Dependency" xmi:id="_nf7C4JnsEeeCzKHJj7Wq7w" client="_nf0VNZnsEeeCzKHJj7Wq7w" supplier="_nf0VMZnsEeeCzKHJj7Wq7w"/>
     </packagedElement>
     <profileApplication xmi:id="_O6TiIjLUEd26WNosUASSSw">
       <eAnnotations xmi:id="_O6TiIzLUEd26WNosUASSSw" source="http://www.eclipse.org/uml2/2.0.0/UML">
@@ -700,36 +699,36 @@
     </profileApplication>
     <profileApplication xmi:id="_zi-sUE2sEeGl8qrc8BM7vA">
       <eAnnotations xmi:id="_0QJUUE2sEeGl8qrc8BM7vA" source="http://www.eclipse.org/uml2/2.0.0/UML">
-        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/MARTE/1#//Alloc"/>
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/MARTE/1#//MARTE_Foundations/Alloc"/>
       </eAnnotations>
       <appliedProfile href="pathmap://Papyrus_PROFILES/MARTE.profile.uml#_ar8OsAPMEdyuUt-4qHuVvQ"/>
     </profileApplication>
-    <profileApplication xmi:id="_1bPMkOVVEeaYxL1QJO8D3g">
-      <eAnnotations xmi:id="_1bPMkeVVEeaYxL1QJO8D3g" source="http://www.eclipse.org/uml2/2.0.0/UML">
+    <profileApplication xmi:id="_nU5eoJnsEeeCzKHJj7Wq7w">
+      <eAnnotations xmi:id="_nU-XIJnsEeeCzKHJj7Wq7w" source="http://www.eclipse.org/uml2/2.0.0/UML">
         <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard#/"/>
       </eAnnotations>
       <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
     </profileApplication>
   </uml:Model>
-  <Deployment:DeploymentPlan xmi:id="_1ci0KOVVEeaYxL1QJO8D3g" base_Package="_1ci0JOVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Include xmi:id="_1cjbMuVVEeaYxL1QJO8D3g" body="#include &lt;iostream>&#xA;using namespace std;&#xA;&#xA;#include &lt;unistd.h>&#xA;" header="#define COMPLEXSM_TIME_EVENT_LOWER_BOUND (0)&#xA;#define COMPLEXSM_CHANGE_EVENT_LOWER_BOUND (3)&#xA;#define COMPLEXSM_TE_INDEX(id) (id - COMPLEXSM_TIME_EVENT_LOWER_BOUND)&#xA;#define COMPLEXSM_CHE_INDEX(id) (id - COMPLEXSM_CHANGE_EVENT_LOWER_BOUND)&#xA;#define SMSIMPLE_REGION0_DEFAULT (0)&#xA;#define SMSIMPLE_REGION0_STATE1 (1)&#xA;#define STATE3_REGION1_SHALLOWHISTORY1 (1)&#xA;#define SMSIMPLE_REGION0 (0)&#xA;#define STATE3_REGION1 (1)&#xA;#include &quot;time.h&quot;&#xA;#include &quot;pthread.h&quot;&#xA;#include &quot;time.h&quot;&#xA;&#x9;&#x9;#include &quot;sys/time.h&quot;&#xA;#define CHECKPOINT if (systemState == statemachine::EVENT_PROCESSING) {return;}&#xA;#define ComplexSM_THREAD_CREATE(thThread, str) pthread_create(&amp;thThread, NULL, &amp;ComplexSM::thread_func_wrapper, &amp;str);&#xA;#define COMPLEXSM_GET_CONTROL /*mutex synchronization to protect run-to-completion semantics*/ \&#xA;&#x9;&#x9;pthread_mutex_lock(&amp;runToCompletionMutex); \&#xA;&#x9;&#x9;while (systemState != statemachine::IDLE) {\&#xA;&#x9;&#x9;&#x9;pthread_cond_wait(&amp;runToCompletionCond, &amp;runToCompletionMutex);\&#xA;&#x9;&#x9;}&#xA;#define COMPLEXSM_RELEASE_CONTROL systemState = statemachine::IDLE; pthread_cond_signal(&amp;runToCompletionCond); \&#xA;&#x9;&#x9;&#x9;&#x9;pthread_mutex_unlock(&amp;runToCompletionMutex);" base_class="_oqZNUDLaEd2qeKRLMdIx_A"/>
-  <C_Cpp:Typedef xmi:id="_1cr-EOVVEeaYxL1QJO8D3g" definition="struct State_t {&#xA;&#x9;//1 is configured as the maximum number of orthogonal regions a composite states can have&#xA;&#x9;unsigned int /*StateIDEnum*/ previousStates[1]; //for history states&#xA;&#x9;unsigned int /*StateIDEnum*/ actives[1];&#xA;&#x9;void (ComplexSM::*entry)();&#xA;&#x9;void (ComplexSM::*exit)();&#xA;&#x9;void (ComplexSM::*doActivity)();&#xA;&#x9;State_t() {&#xA;&#x9;&#x9;entry = &amp;ComplexSM::entry_dft;&#xA;&#x9;&#x9;exit = &amp;ComplexSM::exit_dft;&#xA;&#x9;&#x9;doActivity = &amp;ComplexSM::doActivity_dft;&#xA;&#x9;&#x9;for(int i = 0; i &lt; 1; i++) {&#xA;&#x9;&#x9;&#x9;previousStates[i] = STATE_MAX;&#xA;&#x9;&#x9;&#x9;actives[i] = STATE_MAX;&#xA;&#x9;&#x9;}&#xA;&#x9;}&#xA;} " base_primitivetype="_1biukuVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1cr-EeVVEeaYxL1QJO8D3g" definition="[6]" base_property="_1bnAAOVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1ctzQOVVEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_1b_agOVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1ctzQuVVEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_1cCd0eVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1cuaUeVVEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_1cETAeVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1cvBYOVVEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_1cGvQOVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1cz54uVVEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_1cIkceVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Typedef xmi:id="_1c0g8eVVEeaYxL1QJO8D3g" definition="void (ComplexSM::*typeName)()" base_primitivetype="_1cP5MeVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1c1IAOVVEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_1cSVcOVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1c1IAuVVEeaYxL1QJO8D3g" definition="[3]" base_property="_1cVYweVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1c1IBOVVEeaYxL1QJO8D3g" definition="[3]" base_property="_1cXN8eVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1c1vEOVVEeaYxL1QJO8D3g" definition="[3]" base_property="_1cZDIeVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1c1vEuVVEeaYxL1QJO8D3g" definition="[3]" base_property="_1caRQeVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1c2WIOVVEeaYxL1QJO8D3g" definition="[3]" base_property="_1ccGceVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_1c2WIuVVEeaYxL1QJO8D3g" definition="[3]" base_property="_1cdUkeVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Ptr xmi:id="_1dB8UOVVEeaYxL1QJO8D3g" base_property="_1cfw0eVVEeaYxL1QJO8D3g"/>
-  <standard:Create xmi:id="_1dJ4IeVVEeaYxL1QJO8D3g" base_BehavioralFeature="_1bxYEOVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Ptr xmi:id="_1dOwoOVVEeaYxL1QJO8D3g" base_parameter="_1cLAsuVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Ptr xmi:id="_1dOwouVVEeaYxL1QJO8D3g" base_parameter="_1cNc8eVVEeaYxL1QJO8D3g"/>
+  <Deployment:DeploymentPlan xmi:id="_nhYbcJnsEeeCzKHJj7Wq7w" base_Package="_nhX0YZnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Include xmi:id="_nhZCgZnsEeeCzKHJj7Wq7w" body="#include &lt;iostream>&#xA;using namespace std;&#xA;&#xA;#include &lt;unistd.h>&#xA;" header="#define COMPLEXSM_TIME_EVENT_LOWER_BOUND (0)&#xA;#define COMPLEXSM_CHANGE_EVENT_LOWER_BOUND (3)&#xA;#define COMPLEXSM_TE_INDEX(id) (id - COMPLEXSM_TIME_EVENT_LOWER_BOUND)&#xA;#define COMPLEXSM_CHE_INDEX(id) (id - COMPLEXSM_CHANGE_EVENT_LOWER_BOUND)&#xA;#define SMSIMPLE_REGION0_DEFAULT (0)&#xA;#define SMSIMPLE_REGION0_STATE1 (1)&#xA;#define STATE3_REGION1_SHALLOWHISTORY1 (1)&#xA;#define SMSIMPLE_REGION0 (0)&#xA;#define STATE3_REGION1 (1)&#xA;#include &quot;time.h&quot;&#xA;#include &quot;pthread.h&quot;&#xA;#include &quot;time.h&quot;&#xA;&#x9;&#x9;#include &quot;sys/time.h&quot;&#xA;#define CHECKPOINT if (systemState == statemachine::EVENT_PROCESSING) {return;}&#xA;#define ComplexSM_THREAD_CREATE(thThread, str) pthread_create(&amp;thThread, NULL, &amp;ComplexSM::thread_func_wrapper, &amp;str);&#xA;#define COMPLEXSM_GET_CONTROL /*mutex synchronization to protect run-to-completion semantics*/ \&#xA;&#x9;&#x9;pthread_mutex_lock(&amp;runToCompletionMutex); \&#xA;&#x9;&#x9;while (systemState != statemachine::IDLE) {\&#xA;&#x9;&#x9;&#x9;pthread_cond_wait(&amp;runToCompletionCond, &amp;runToCompletionMutex);\&#xA;&#x9;&#x9;}&#xA;#define COMPLEXSM_RELEASE_CONTROL systemState = statemachine::IDLE; pthread_cond_signal(&amp;runToCompletionCond); \&#xA;&#x9;&#x9;&#x9;&#x9;pthread_mutex_unlock(&amp;runToCompletionMutex);" base_class="_oqZNUDLaEd2qeKRLMdIx_A"/>
+  <C_Cpp:Typedef xmi:id="_nhtyoJnsEeeCzKHJj7Wq7w" definition="struct State_t {&#xA;&#x9;//1 is configured as the maximum number of orthogonal regions a composite states can have&#xA;&#x9;unsigned int /*StateIDEnum*/ previousStates[1]; //for history states&#xA;&#x9;unsigned int /*StateIDEnum*/ actives[1];&#xA;&#x9;void (ComplexSM::*entry)();&#xA;&#x9;void (ComplexSM::*exit)();&#xA;&#x9;void (ComplexSM::*doActivity)();&#xA;&#x9;State_t() {&#xA;&#x9;&#x9;entry = &amp;ComplexSM::entry_dft;&#xA;&#x9;&#x9;exit = &amp;ComplexSM::exit_dft;&#xA;&#x9;&#x9;doActivity = &amp;ComplexSM::doActivity_dft;&#xA;&#x9;&#x9;for(int i = 0; i &lt; 1; i++) {&#xA;&#x9;&#x9;&#x9;previousStates[i] = STATE_MAX;&#xA;&#x9;&#x9;&#x9;actives[i] = STATE_MAX;&#xA;&#x9;&#x9;}&#xA;&#x9;}&#xA;} " base_primitivetype="_nf0VNZnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nhtyoZnsEeeCzKHJj7Wq7w" definition="[6]" base_property="_nf7p8JnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nhvn0JnsEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_ngmYUJnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nhwO4JnsEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_ngqCsJnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nhw18JnsEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_ngttEZnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nhyEEJnsEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_ngwJUZnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nihD4JnsEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_ngylkZnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Typedef xmi:id="_nihq8JnsEeeCzKHJj7Wq7w" definition="void (ComplexSM::*typeName)()" base_primitivetype="_ng4sMpnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nihq8ZnsEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_ng7IcZnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_niiSAJnsEeeCzKHJj7Wq7w" definition="[3]" base_property="_nhAA8JnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_niiSApnsEeeCzKHJj7Wq7w" definition="[3]" base_property="_nhCdMJnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nii5EJnsEeeCzKHJj7Wq7w" definition="[3]" base_property="_nhESYZnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nii5EpnsEeeCzKHJj7Wq7w" definition="[3]" base_property="_nhGuoJnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nii5FJnsEeeCzKHJj7Wq7w" definition="[3]" base_property="_nhIj0ZnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_nijgIJnsEeeCzKHJj7Wq7w" definition="[3]" base_property="_nhKZAZnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Ptr xmi:id="_njR44JnsEeeCzKHJj7Wq7w" base_property="_nhNcUJnsEeeCzKHJj7Wq7w"/>
+  <standard:Create xmi:id="_njdfEJnsEeeCzKHJj7Wq7w" base_BehavioralFeature="_ngK6gJnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Ptr xmi:id="_njgiYZnsEeeCzKHJj7Wq7w" base_parameter="_ng0awpnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Ptr xmi:id="_njhJcJnsEeeCzKHJj7Wq7w" base_parameter="_ng23AZnsEeeCzKHJj7Wq7w"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/PrimitiveTypes.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/PrimitiveTypes.uml
index b6a18bd..3b191bb 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/PrimitiveTypes.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/PrimitiveTypes.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
-  <uml:Model xmi:id="_1dSbBuVVEeaYxL1QJO8D3g" name="PrimitiveTypes" URI="http://www.omg.org/spec/PrimitiveTypes/20131001">
+  <uml:Model xmi:id="_njqTYZnsEeeCzKHJj7Wq7w" name="PrimitiveTypes" URI="http://www.omg.org/spec/PrimitiveTypes/20131001">
     <packagedElement xmi:type="uml:PrimitiveType" xmi:id="Integer" name="Integer">
       <ownedComment xmi:id="Integer-_ownedComment.0" annotatedElement="Integer">
         <body>Integer is a primitive type representing integer values.</body>
@@ -24,8 +24,8 @@
       <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
     </profileApplication>
   </uml:Model>
-  <Ecore:EPackage xmi:id="_1dTCEOVVEeaYxL1QJO8D3g" base_Package="_1dSbBuVVEeaYxL1QJO8D3g" packageName="types" nsPrefix="types" nsURI="http://www.eclipse.org/uml2/5.0.0/Types" basePackage="org.eclipse.uml2" prefix="Types"/>
-  <standard:ModelLibrary xmi:id="_1dTCEeVVEeaYxL1QJO8D3g" base_Package="_1dSbBuVVEeaYxL1QJO8D3g"/>
-  <Ecore:EDataType xmi:id="_1dTpIeVVEeaYxL1QJO8D3g" instanceClassName="int" base_PrimitiveType="Integer"/>
-  <Ecore:EDataType xmi:id="_1dUQMeVVEeaYxL1QJO8D3g" instanceClassName="java.lang.String" base_PrimitiveType="String"/>
+  <Ecore:EPackage xmi:id="_njq6cJnsEeeCzKHJj7Wq7w" base_Package="_njqTYZnsEeeCzKHJj7Wq7w" packageName="types" nsPrefix="types" nsURI="http://www.eclipse.org/uml2/5.0.0/Types" basePackage="org.eclipse.uml2" prefix="Types"/>
+  <standard:ModelLibrary xmi:id="_njq6cZnsEeeCzKHJj7Wq7w" base_Package="_njqTYZnsEeeCzKHJj7Wq7w"/>
+  <Ecore:EDataType xmi:id="_njsIkJnsEeeCzKHJj7Wq7w" instanceClassName="int" base_PrimitiveType="Integer"/>
+  <Ecore:EDataType xmi:id="_njuk0JnsEeeCzKHJj7Wq7w" instanceClassName="java.lang.String" base_PrimitiveType="String"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml
index 1e2859e..fc65637 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/pthread.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
-  <uml:Model xmi:id="_1ctMMeVVEeaYxL1QJO8D3g" name="pthread">
+  <uml:Model xmi:id="_nhuZsZnsEeeCzKHJj7Wq7w" name="pthread">
     <packagedElement xmi:type="uml:Class" xmi:id="_ea234NYGEd-CgJIavLpOxQ" name="pthread_t"/>
     <packagedElement xmi:type="uml:Class" xmi:id="_-vYZoCa0EeazPcQ6-9hBeQ" name="pthread_cond_t"/>
     <packagedElement xmi:type="uml:Class" xmi:id="__niwsCa0EeazPcQ6-9hBeQ" name="pthread_mutex_t"/>
@@ -11,7 +11,7 @@
       <appliedProfile href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
     </profileApplication>
   </uml:Model>
-  <C_Cpp:ExternLibrary xmi:id="_1ctMNOVVEeaYxL1QJO8D3g" base_package="_1ctMMeVVEeaYxL1QJO8D3g">
+  <C_Cpp:ExternLibrary xmi:id="_nhvAwJnsEeeCzKHJj7Wq7w" base_package="_nhuZsZnsEeeCzKHJj7Wq7w">
     <libs>pthread</libs>
     <libs>rt</libs>
     <includes>pthread.h</includes>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml
index 4779064..04100a0 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/statemachine.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
-  <uml:Model xmi:id="_1cnFkOVVEeaYxL1QJO8D3g" name="statemachine">
+  <uml:Model xmi:id="_nhjakJnsEeeCzKHJj7Wq7w" name="statemachine">
     <packagedElement xmi:type="uml:Enumeration" xmi:id="_hNs5oCdSEea6h5xPEh8iAg" name="ThreadFunctions">
       <ownedLiteral xmi:id="_kWR0ICdSEea6h5xPEh8iAg" name="TF_CHANGE_EVENT"/>
       <ownedLiteral xmi:id="_tj4MICdSEea6h5xPEh8iAg" name="TF_TIME_EVENT"/>
@@ -266,21 +266,21 @@
       <appliedProfile href="pathmap://TRAFO_PROFILE/Transformation.profile.uml#_fPDsIBa-EearhdjjJ6cVzQ"/>
     </profileApplication>
   </uml:Model>
-  <C_Cpp:Include xmi:id="_1cnFluVVEeaYxL1QJO8D3g" header="// common definitions for statemachine&#xA;&#xA;#define TIME_EVENT_LOWER_BOUND (0)&#xA;#define CHANGE_EVENT_LOWER_BOUND (2)&#xA;#define TE_INDEX(id) (id - TIME_EVENT_LOWER_BOUND)&#xA;#define CHE_INDEX(id) (id - CHANGE_EVENT_LOWER_BOUND)&#xA;#define SMSERVER_REGION0_DEFAULT (0)&#xA;#define SMSERVER_REGION0 (0)&#xA;#include &quot;time.h&quot;&#xA;#include &quot;pthread.h&quot;&#xA;#define CHECKPOINT if (systemState == statemachine::EVENT_PROCESSING) {return;}" base_package="_1cnFkOVVEeaYxL1QJO8D3g"/>
-  <C_Cpp:Ptr xmi:id="_1cvoceVVEeaYxL1QJO8D3g" base_property="_jliRwCkVEea0-deBroAIbQ"/>
-  <standard:Create xmi:id="_1cxdoOVVEeaYxL1QJO8D3g" base_BehavioralFeature="_ZmpmwCkVEea0-deBroAIbQ"/>
-  <C_Cpp:ConstInit xmi:id="_1cxdoeVVEeaYxL1QJO8D3g" initialisation="ptr(ptr), id(id), enter_mode(enter_mode), func_type(func_type), duration(duration)" base_operation="_ZmpmwCkVEea0-deBroAIbQ"/>
-  <C_Cpp:Ptr xmi:id="_1cxdouVVEeaYxL1QJO8D3g" base_parameter="_E56cgCkWEea0-deBroAIbQ"/>
-  <standard:Create xmi:id="_1cz54eVVEeaYxL1QJO8D3g" base_BehavioralFeature="_-pXrgCkVEea0-deBroAIbQ"/>
-  <C_Cpp:Include xmi:id="_1c29MeVVEeaYxL1QJO8D3g" header="#include &quot;pthread.h&quot;&#xD;&#xA;#include &quot;stdio.h&quot;&#xD;&#xA;#include &quot;string.h&quot;&#xD;&#xA;&#xD;&#xA;#define defSize (10)" base_class="_dWxYQD0zEeaQfbTekb55bw" base_Classifier="_dWxYQD0zEeaQfbTekb55bw"/>
-  <C_Cpp:Include xmi:id="_1c3kQOVVEeaYxL1QJO8D3g" header="#define EVENT_DATA_SIZE (50)" base_class="_MyJIUD0zEeaQfbTekb55bw" base_Classifier="_MyJIUD0zEeaQfbTekb55bw"/>
-  <C_Cpp:Array xmi:id="_1c4yYOVVEeaYxL1QJO8D3g" definition="[EVENT_DATA_SIZE]" base_property="_MyJIUz0zEeaQfbTekb55bw"/>
-  <C_Cpp:Array xmi:id="_1c6AgOVVEeaYxL1QJO8D3g" definition="[10]" base_property="_dWxYQT0zEeaQfbTekb55bw"/>
-  <C_Cpp:Array xmi:id="_1c71seVVEeaYxL1QJO8D3g" definition="[4]" base_property="_dWxYST0zEeaQfbTekb55bw"/>
-  <C_Cpp:Array xmi:id="_1c9D0OVVEeaYxL1QJO8D3g" definition="[defSize]" base_property="_dWxYTj0zEeaQfbTekb55bw"/>
-  <standard:Create xmi:id="_1c-R8OVVEeaYxL1QJO8D3g" base_BehavioralFeature="_dWx_XD0zEeaQfbTekb55bw"/>
-  <C_Cpp:ConstInit xmi:id="_1c-R8eVVEeaYxL1QJO8D3g" initialisation="size(10), numberOfElements(0), readPos(0), writePos(0), compSize(4), compNumbers(0), compReadPos(0), compWritePos(0), numberOfDeferreds(0), readDef(0), writeDef(0) " base_operation="_dWx_XD0zEeaQfbTekb55bw"/>
-  <C_Cpp:Ptr xmi:id="_1c-5AuVVEeaYxL1QJO8D3g" base_parameter="_dWx_WD0zEeaQfbTekb55bw"/>
-  <C_Cpp:Ptr xmi:id="_1dAHIuVVEeaYxL1QJO8D3g" base_parameter="_dWx_Uz0zEeaQfbTekb55bw"/>
-  <C_Cpp:Ref xmi:id="_1dBVQOVVEeaYxL1QJO8D3g" base_parameter="_dWx_Xz0zEeaQfbTekb55bw"/>
+  <C_Cpp:Include xmi:id="_nhjalpnsEeeCzKHJj7Wq7w" header="// common definitions for statemachine&#xA;&#xA;#define TIME_EVENT_LOWER_BOUND (0)&#xA;#define CHANGE_EVENT_LOWER_BOUND (2)&#xA;#define TE_INDEX(id) (id - TIME_EVENT_LOWER_BOUND)&#xA;#define CHE_INDEX(id) (id - CHANGE_EVENT_LOWER_BOUND)&#xA;#define SMSERVER_REGION0_DEFAULT (0)&#xA;#define SMSERVER_REGION0 (0)&#xA;#include &quot;time.h&quot;&#xA;#include &quot;pthread.h&quot;&#xA;#define CHECKPOINT if (systemState == statemachine::EVENT_PROCESSING) {return;}" base_package="_nhjakJnsEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Ptr xmi:id="_nh0gUJnsEeeCzKHJj7Wq7w" base_property="_jliRwCkVEea0-deBroAIbQ"/>
+  <standard:Create xmi:id="_niP-IJnsEeeCzKHJj7Wq7w" base_BehavioralFeature="_ZmpmwCkVEea0-deBroAIbQ"/>
+  <C_Cpp:ConstInit xmi:id="_niQlMJnsEeeCzKHJj7Wq7w" initialisation="ptr(ptr), id(id), enter_mode(enter_mode), func_type(func_type), duration(duration)" base_operation="_ZmpmwCkVEea0-deBroAIbQ"/>
+  <C_Cpp:Ptr xmi:id="_niRMQJnsEeeCzKHJj7Wq7w" base_parameter="_E56cgCkWEea0-deBroAIbQ"/>
+  <standard:Create xmi:id="_nigc0JnsEeeCzKHJj7Wq7w" base_BehavioralFeature="_-pXrgCkVEea0-deBroAIbQ"/>
+  <C_Cpp:Include xmi:id="_nivtYJnsEeeCzKHJj7Wq7w" header="#include &quot;pthread.h&quot;&#xD;&#xA;#include &quot;stdio.h&quot;&#xD;&#xA;#include &quot;string.h&quot;&#xD;&#xA;&#xD;&#xA;#define defSize (10)" base_class="_dWxYQD0zEeaQfbTekb55bw" base_Classifier="_dWxYQD0zEeaQfbTekb55bw"/>
+  <C_Cpp:Include xmi:id="_ni3CIJnsEeeCzKHJj7Wq7w" header="#define EVENT_DATA_SIZE (50)" base_class="_MyJIUD0zEeaQfbTekb55bw" base_Classifier="_MyJIUD0zEeaQfbTekb55bw"/>
+  <C_Cpp:Array xmi:id="_ni4QQJnsEeeCzKHJj7Wq7w" definition="[EVENT_DATA_SIZE]" base_property="_MyJIUz0zEeaQfbTekb55bw"/>
+  <C_Cpp:Array xmi:id="_njAMEJnsEeeCzKHJj7Wq7w" definition="[10]" base_property="_dWxYQT0zEeaQfbTekb55bw"/>
+  <C_Cpp:Array xmi:id="_njFroZnsEeeCzKHJj7Wq7w" definition="[4]" base_property="_dWxYST0zEeaQfbTekb55bw"/>
+  <C_Cpp:Array xmi:id="_njHg0JnsEeeCzKHJj7Wq7w" definition="[defSize]" base_property="_dWxYTj0zEeaQfbTekb55bw"/>
+  <standard:Create xmi:id="_njJWAJnsEeeCzKHJj7Wq7w" base_BehavioralFeature="_dWx_XD0zEeaQfbTekb55bw"/>
+  <C_Cpp:ConstInit xmi:id="_njJWAZnsEeeCzKHJj7Wq7w" initialisation="size(10), numberOfElements(0), readPos(0), writePos(0), compSize(4), compNumbers(0), compReadPos(0), compWritePos(0), numberOfDeferreds(0), readDef(0), writeDef(0) " base_operation="_dWx_XD0zEeaQfbTekb55bw"/>
+  <C_Cpp:Ptr xmi:id="_njLLMJnsEeeCzKHJj7Wq7w" base_parameter="_dWx_WD0zEeaQfbTekb55bw"/>
+  <C_Cpp:Ptr xmi:id="_njNAYJnsEeeCzKHJj7Wq7w" base_parameter="_dWx_Uz0zEeaQfbTekb55bw"/>
+  <C_Cpp:Ref xmi:id="_njOOgJnsEeeCzKHJj7Wq7w" base_parameter="_dWx_Xz0zEeaQfbTekb55bw"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/sysinterfaces.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/sysinterfaces.uml
index 7d0c2f5..441fd77 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/sysinterfaces.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/model/sysinterfaces.uml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_1cmegOVVEeaYxL1QJO8D3g" name="sysinterfaces">
+<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_nhfJIZnsEeeCzKHJj7Wq7w" name="sysinterfaces">
   <packagedElement xmi:type="uml:Interface" xmi:id="_PTWzwCS-Ed-A_I32T0fkaA" name="IStart">
     <generalization xmi:id="_XpdjECS-Ed-A_I32T0fkaA" general="_BHFPQJsqEd61Eo3nmu3JhQ"/>
   </packagedElement>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/src-gen/ComplexSM/classes/ComplexSM.cpp b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/src-gen/ComplexSM/classes/ComplexSM.cpp
index c3151ec..6777ad0 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/src-gen/ComplexSM/classes/ComplexSM.cpp
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/ComplexSM_defaultNode_ComplexSMDepPlan/src-gen/ComplexSM/classes/ComplexSM.cpp
@@ -311,7 +311,6 @@
 			if (true) {
 				setFlag(COMPLEXSM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID),
 						statemachine::TF_TIME_EVENT, false);
-				add(2, 3);
 				mult(3, 5);
 				std::cout << "From State1 to State0 \n";
 				activeStateID = STATE0_ID;
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/SimpleSM_defaultNode_SimpleSMDepPlan b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/SimpleSM_defaultNode_SimpleSMDepPlan
deleted file mode 100755
index 6cd26cf..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/SimpleSM_defaultNode_SimpleSMDepPlan
+++ /dev/null
Binary files differ
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/makefile b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/makefile
deleted file mode 100644
index b0df890..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/makefile
+++ /dev/null
@@ -1,61 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
--include ../makefile.init
-
-RM := rm -rf
-
-# All of the sources participating in the build are defined here
--include sources.mk
--include src-gen/statemachine/subdir.mk
--include src-gen/SimpleSM/classes/subdir.mk
--include src-gen/BootLoaderCpp/subdir.mk
--include subdir.mk
--include objects.mk
-
-ifneq ($(MAKECMDGOALS),clean)
-ifneq ($(strip $(CC_DEPS)),)
--include $(CC_DEPS)
-endif
-ifneq ($(strip $(C++_DEPS)),)
--include $(C++_DEPS)
-endif
-ifneq ($(strip $(C_UPPER_DEPS)),)
--include $(C_UPPER_DEPS)
-endif
-ifneq ($(strip $(CXX_DEPS)),)
--include $(CXX_DEPS)
-endif
-ifneq ($(strip $(CPP_DEPS)),)
--include $(CPP_DEPS)
-endif
-ifneq ($(strip $(C_DEPS)),)
--include $(C_DEPS)
-endif
-endif
-
--include ../makefile.defs
-
-# Add inputs and outputs from these tool invocations to the build variables 
-
-# All Target
-all: SimpleSM_defaultNode_SimpleSMDepPlan
-
-# Tool invocations
-SimpleSM_defaultNode_SimpleSMDepPlan: $(OBJS) $(USER_OBJS)
-	@echo 'Building target: $@'
-	@echo 'Invoking: GCC C++ Linker'
-	g++  -o "SimpleSM_defaultNode_SimpleSMDepPlan" $(OBJS) $(USER_OBJS) $(LIBS)
-	@echo 'Finished building target: $@'
-	@echo ' '
-
-# Other Targets
-clean:
-	-$(RM) $(CC_DEPS)$(C++_DEPS)$(EXECUTABLES)$(C_UPPER_DEPS)$(CXX_DEPS)$(OBJS)$(CPP_DEPS)$(C_DEPS) SimpleSM_defaultNode_SimpleSMDepPlan
-	-@echo ' '
-
-.PHONY: all clean dependents
-.SECONDARY:
-
--include ../makefile.targets
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/objects.mk b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/objects.mk
deleted file mode 100644
index 4f2f5a9..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/objects.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-USER_OBJS :=
-
-LIBS := -lpthread -lrt
-
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/sources.mk b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/sources.mk
deleted file mode 100644
index ea0d1d8..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/sources.mk
+++ /dev/null
@@ -1,29 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-C_UPPER_SRCS := 
-CXX_SRCS := 
-C++_SRCS := 
-OBJ_SRCS := 
-CC_SRCS := 
-ASM_SRCS := 
-CPP_SRCS := 
-C_SRCS := 
-O_SRCS := 
-S_UPPER_SRCS := 
-CC_DEPS := 
-C++_DEPS := 
-EXECUTABLES := 
-C_UPPER_DEPS := 
-CXX_DEPS := 
-OBJS := 
-CPP_DEPS := 
-C_DEPS := 
-
-# Every subdirectory with source files must be described here
-SUBDIRS := \
-src-gen/BootLoaderCpp \
-src-gen/SimpleSM/classes \
-src-gen/statemachine \
-
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/BootLoader.d b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/BootLoader.d
deleted file mode 100644
index 934b766..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/BootLoader.d
+++ /dev/null
@@ -1,35 +0,0 @@
-src-gen/BootLoaderCpp/BootLoader.o: \
- ../src-gen/BootLoaderCpp/BootLoader.cpp \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/BootLoader.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/Pkg_BootLoaderCpp.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/PrimitiveTypes/Pkg_PrimitiveTypes.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/Pkg_classes.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/Pkg_SimpleSM.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/EventPriorityQueue.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Event_t.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/StructForThread_t.h
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/BootLoader.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/Pkg_BootLoaderCpp.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/PrimitiveTypes/Pkg_PrimitiveTypes.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/Pkg_classes.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/Pkg_SimpleSM.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/EventPriorityQueue.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Event_t.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/StructForThread_t.h:
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/BootLoader.o b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/BootLoader.o
deleted file mode 100644
index dd86099..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/BootLoader.o
+++ /dev/null
Binary files differ
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/NodeInfo.d b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/NodeInfo.d
deleted file mode 100644
index c7ac88b..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/NodeInfo.d
+++ /dev/null
@@ -1,10 +0,0 @@
-src-gen/BootLoaderCpp/NodeInfo.o: ../src-gen/BootLoaderCpp/NodeInfo.cpp \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/NodeInfo.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/Pkg_BootLoaderCpp.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/PrimitiveTypes/Pkg_PrimitiveTypes.h
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/NodeInfo.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/Pkg_BootLoaderCpp.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/PrimitiveTypes/Pkg_PrimitiveTypes.h:
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/NodeInfo.o b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/NodeInfo.o
deleted file mode 100644
index 6942aab..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/NodeInfo.o
+++ /dev/null
Binary files differ
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/subdir.mk b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/subdir.mk
deleted file mode 100644
index 9d1108c..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/BootLoaderCpp/subdir.mk
+++ /dev/null
@@ -1,27 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables 
-CPP_SRCS += \
-../src-gen/BootLoaderCpp/BootLoader.cpp \
-../src-gen/BootLoaderCpp/NodeInfo.cpp 
-
-OBJS += \
-./src-gen/BootLoaderCpp/BootLoader.o \
-./src-gen/BootLoaderCpp/NodeInfo.o 
-
-CPP_DEPS += \
-./src-gen/BootLoaderCpp/BootLoader.d \
-./src-gen/BootLoaderCpp/NodeInfo.d 
-
-
-# Each subdirectory must supply rules for building sources it contributes
-src-gen/BootLoaderCpp/%.o: ../src-gen/BootLoaderCpp/%.cpp
-	@echo 'Building file: $<'
-	@echo 'Invoking: GCC C++ Compiler'
-	g++ -I"/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen" -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/SimpleSM/classes/SimpleSM.d b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/SimpleSM/classes/SimpleSM.d
deleted file mode 100644
index 296bc05..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/SimpleSM/classes/SimpleSM.d
+++ /dev/null
@@ -1,38 +0,0 @@
-src-gen/SimpleSM/classes/SimpleSM.o: \
- ../src-gen/SimpleSM/classes/SimpleSM.cpp \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/Pkg_classes.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/Pkg_SimpleSM.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/PrimitiveTypes/Pkg_PrimitiveTypes.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/EventPriorityQueue.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Event_t.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/StructForThread_t.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/sysinterfaces/IStart.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/sysinterfaces/Pkg_sysinterfaces.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/sysinterfaces/IRunnable.h
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/Pkg_classes.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/Pkg_SimpleSM.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/PrimitiveTypes/Pkg_PrimitiveTypes.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/EventPriorityQueue.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Event_t.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/StructForThread_t.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/sysinterfaces/IStart.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/sysinterfaces/Pkg_sysinterfaces.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/sysinterfaces/IRunnable.h:
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/SimpleSM/classes/SimpleSM.o b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/SimpleSM/classes/SimpleSM.o
deleted file mode 100644
index 40f2b3b..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/SimpleSM/classes/SimpleSM.o
+++ /dev/null
Binary files differ
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/SimpleSM/classes/subdir.mk b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/SimpleSM/classes/subdir.mk
deleted file mode 100644
index cb6762b..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/SimpleSM/classes/subdir.mk
+++ /dev/null
@@ -1,24 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables 
-CPP_SRCS += \
-../src-gen/SimpleSM/classes/SimpleSM.cpp 
-
-OBJS += \
-./src-gen/SimpleSM/classes/SimpleSM.o 
-
-CPP_DEPS += \
-./src-gen/SimpleSM/classes/SimpleSM.d 
-
-
-# Each subdirectory must supply rules for building sources it contributes
-src-gen/SimpleSM/classes/%.o: ../src-gen/SimpleSM/classes/%.cpp
-	@echo 'Building file: $<'
-	@echo 'Invoking: GCC C++ Compiler'
-	g++ -I"/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen" -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/EventPriorityQueue.d b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/EventPriorityQueue.d
deleted file mode 100644
index 36a562d..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/EventPriorityQueue.d
+++ /dev/null
@@ -1,14 +0,0 @@
-src-gen/statemachine/EventPriorityQueue.o: \
- ../src-gen/statemachine/EventPriorityQueue.cpp \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/EventPriorityQueue.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Event_t.h
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/EventPriorityQueue.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Event_t.h:
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/EventPriorityQueue.o b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/EventPriorityQueue.o
deleted file mode 100644
index 2d32b4d..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/EventPriorityQueue.o
+++ /dev/null
Binary files differ
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/Event_t.d b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/Event_t.d
deleted file mode 100644
index 88a78ec..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/Event_t.d
+++ /dev/null
@@ -1,10 +0,0 @@
-src-gen/statemachine/Event_t.o: ../src-gen/statemachine/Event_t.cpp \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Event_t.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Event_t.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h:
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/Event_t.o b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/Event_t.o
deleted file mode 100644
index ddad098..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/Event_t.o
+++ /dev/null
Binary files differ
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/StructForThread_t.d b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/StructForThread_t.d
deleted file mode 100644
index 316ec25..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/StructForThread_t.d
+++ /dev/null
@@ -1,11 +0,0 @@
-src-gen/statemachine/StructForThread_t.o: \
- ../src-gen/statemachine/StructForThread_t.cpp \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/StructForThread_t.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h \
- /export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/StructForThread_t.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/statemachine/Pkg_statemachine.h:
-
-/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/AnsiCLibrary/Pkg_AnsiCLibrary.h:
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/StructForThread_t.o b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/StructForThread_t.o
deleted file mode 100644
index 44f90db..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/StructForThread_t.o
+++ /dev/null
Binary files differ
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/subdir.mk b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/subdir.mk
deleted file mode 100644
index 457888c..0000000
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/Debug/src-gen/statemachine/subdir.mk
+++ /dev/null
@@ -1,30 +0,0 @@
-################################################################################
-# Automatically-generated file. Do not edit!
-################################################################################
-
-# Add inputs and outputs from these tool invocations to the build variables 
-CPP_SRCS += \
-../src-gen/statemachine/EventPriorityQueue.cpp \
-../src-gen/statemachine/Event_t.cpp \
-../src-gen/statemachine/StructForThread_t.cpp 
-
-OBJS += \
-./src-gen/statemachine/EventPriorityQueue.o \
-./src-gen/statemachine/Event_t.o \
-./src-gen/statemachine/StructForThread_t.o 
-
-CPP_DEPS += \
-./src-gen/statemachine/EventPriorityQueue.d \
-./src-gen/statemachine/Event_t.d \
-./src-gen/statemachine/StructForThread_t.d 
-
-
-# Each subdirectory must supply rules for building sources it contributes
-src-gen/statemachine/%.o: ../src-gen/statemachine/%.cpp
-	@echo 'Building file: $<'
-	@echo 'Invoking: GCC C++ Compiler'
-	g++ -I"/export/home/ansgar/workspaces/neon/runtime-New_configurationClean/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen" -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@)" -o "$@" "$<"
-	@echo 'Finished building: $<'
-	@echo ' '
-
-
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml
index a055bcb..11d825b 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
-  <uml:Model xmi:id="_PBMu8OWqEeaYxL1QJO8D3g" name="AnsiCLibrary">
+  <uml:Model xmi:id="_BKOBYpnuEeeCzKHJj7Wq7w" name="AnsiCLibrary">
     <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_8I6RgBydEduyofBvg4RL2w" name="void"/>
     <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_LTZesByeEduyofBvg4RL2w" name="unsigned int"/>
     <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_5lVhgBydEduyofBvg4RL2w" name="char"/>
@@ -13,5 +13,5 @@
       <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
     </profileApplication>
   </uml:Model>
-  <standard:ModelLibrary xmi:id="_PBMu8-WqEeaYxL1QJO8D3g" base_Package="_PBMu8OWqEeaYxL1QJO8D3g"/>
+  <standard:ModelLibrary xmi:id="_BKOocJnuEeeCzKHJj7Wq7w" base_Package="_BKOBYpnuEeeCzKHJj7Wq7w"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/BootLoaderCpp.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/BootLoaderCpp.uml
index 7113467..5553cb1 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/BootLoaderCpp.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/BootLoaderCpp.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
-  <uml:Model xmi:id="_PBoz0OWqEeaYxL1QJO8D3g" name="BootLoaderCpp">
+  <uml:Model xmi:id="_BKwM4JnuEeeCzKHJj7Wq7w" name="BootLoaderCpp">
     <packagedElement xmi:type="uml:Class" xmi:id="_yvoocHhpEealuJVOx0h2iw" name="BootLoader">
       <ownedAttribute xmi:id="_i8h2AHlvEeavUcYMQ2Z1Aw" name="argc" isStatic="true">
         <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml#Integer"/>
@@ -10,14 +10,15 @@
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JDJtYHjkEeakrcXZeNIVKw" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_JDNXwHjkEeakrcXZeNIVKw" value="1"/>
       </ownedAttribute>
-      <ownedAttribute xmi:id="_PBrQFeWqEeaYxL1QJO8D3g" name="mainInstance" aggregation="composite">
+      <ownedAttribute xmi:id="_BKz3RZnuEeeCzKHJj7Wq7w" name="mainInstance" aggregation="composite">
         <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/SimpleSM.uml#_oqZNUDLaEd2qeKRLMdIx_A"/>
       </ownedAttribute>
-      <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PBr3IOWqEeaYxL1QJO8D3g" name="init" specification="_8b9jYHjjEeakrcXZeNIVKw">
+      <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BK0eUJnuEeeCzKHJj7Wq7w" name="init" specification="_8b9jYHjjEeakrcXZeNIVKw">
         <language>C/C++</language>
-        <body></body>
+        <body>mainInstance.run();
+</body>
       </ownedBehavior>
-      <ownedOperation xmi:id="_8b9jYHjjEeakrcXZeNIVKw" name="init" method="_PBr3IOWqEeaYxL1QJO8D3g"/>
+      <ownedOperation xmi:id="_8b9jYHjjEeakrcXZeNIVKw" name="init" method="_BK0eUJnuEeeCzKHJj7Wq7w"/>
     </packagedElement>
     <packagedElement xmi:type="uml:Class" xmi:id="_CS_KsHjwEeasG4qn4umteA" name="NodeInfo">
       <ownedAttribute xmi:id="_IHT5wHjwEeasG4qn4umteA" name="nodeIndex" isStatic="true">
@@ -36,6 +37,6 @@
       <appliedProfile href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
     </profileApplication>
   </uml:Model>
-  <C_Cpp:Include xmi:id="_PBpa4OWqEeaYxL1QJO8D3g" body="BootLoaderCpp::BootLoader bootloader;&#xA;&#xA;int main (int argc, const char* argv[])&#xA;{&#xA;&#x9;// store arguments for future access&#xA;&#x9;BootLoaderCpp::BootLoader::argc = argc;&#xA;&#x9;BootLoaderCpp::BootLoader::argv = argv;&#xA;&#xA;&#x9;bootloader.init();&#xA;&#x9;return 0;&#xA;}&#xA;" base_class="_yvoocHhpEealuJVOx0h2iw" base_Classifier="_yvoocHhpEealuJVOx0h2iw"/>
-  <C_Cpp:Ptr xmi:id="_PBqpA-WqEeaYxL1QJO8D3g" base_property="_ET2FoHjkEeakrcXZeNIVKw"/>
+  <C_Cpp:Include xmi:id="_BKwz8JnuEeeCzKHJj7Wq7w" body="BootLoaderCpp::BootLoader bootloader;&#xA;&#xA;int main (int argc, const char* argv[])&#xA;{&#xA;&#x9;// store arguments for future access&#xA;&#x9;BootLoaderCpp::BootLoader::argc = argc;&#xA;&#x9;BootLoaderCpp::BootLoader::argv = argv;&#xA;&#xA;&#x9;bootloader.init();&#xA;&#x9;return 0;&#xA;}&#xA;" base_class="_yvoocHhpEealuJVOx0h2iw" base_Classifier="_yvoocHhpEealuJVOx0h2iw"/>
+  <C_Cpp:Ptr xmi:id="_BKypIZnuEeeCzKHJj7Wq7w" base_property="_ET2FoHjkEeakrcXZeNIVKw"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml
index b383e0e..d789d1e 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
-  <uml:Model xmi:id="_PBpa4eWqEeaYxL1QJO8D3g" name="PrimitiveTypes" URI="http://www.omg.org/spec/PrimitiveTypes/20131001">
+  <uml:Model xmi:id="_BKwz8ZnuEeeCzKHJj7Wq7w" name="PrimitiveTypes" URI="http://www.omg.org/spec/PrimitiveTypes/20131001">
     <packagedElement xmi:type="uml:PrimitiveType" xmi:id="Integer" name="Integer">
       <ownedComment xmi:id="Integer-_ownedComment.0" annotatedElement="Integer">
         <body>Integer is a primitive type representing integer values.</body>
@@ -24,8 +24,8 @@
       <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
     </profileApplication>
   </uml:Model>
-  <Ecore:EPackage xmi:id="_PBpa5eWqEeaYxL1QJO8D3g" base_Package="_PBpa4eWqEeaYxL1QJO8D3g" packageName="types" nsPrefix="types" nsURI="http://www.eclipse.org/uml2/5.0.0/Types" basePackage="org.eclipse.uml2" prefix="Types"/>
-  <standard:ModelLibrary xmi:id="_PBpa5uWqEeaYxL1QJO8D3g" base_Package="_PBpa4eWqEeaYxL1QJO8D3g"/>
-  <Ecore:EDataType xmi:id="_PBqB8uWqEeaYxL1QJO8D3g" instanceClassName="int" base_PrimitiveType="Integer"/>
-  <Ecore:EDataType xmi:id="_PBqpAeWqEeaYxL1QJO8D3g" instanceClassName="java.lang.String" base_PrimitiveType="String"/>
+  <Ecore:EPackage xmi:id="_BKwz9ZnuEeeCzKHJj7Wq7w" base_Package="_BKwz8ZnuEeeCzKHJj7Wq7w" packageName="types" nsPrefix="types" nsURI="http://www.eclipse.org/uml2/5.0.0/Types" basePackage="org.eclipse.uml2" prefix="Types"/>
+  <standard:ModelLibrary xmi:id="_BKwz9pnuEeeCzKHJj7Wq7w" base_Package="_BKwz8ZnuEeeCzKHJj7Wq7w"/>
+  <Ecore:EDataType xmi:id="_BKxbApnuEeeCzKHJj7Wq7w" instanceClassName="int" base_PrimitiveType="Integer"/>
+  <Ecore:EDataType xmi:id="_BKyCEpnuEeeCzKHJj7Wq7w" instanceClassName="java.lang.String" base_PrimitiveType="String"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/SimpleSM.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/SimpleSM.uml
index 9ee74c9..488a4c3 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/SimpleSM.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/SimpleSM.uml
@@ -1,78 +1,79 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:Deployment="http://www.eclipse.org/papyrus/Deployment/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
   <uml:Model xmi:id="_O6TiIDLUEd26WNosUASSSw" name="SimpleSM">
-    <packagedElement xmi:type="uml:Package" xmi:id="_PBEMEeWqEeaYxL1QJO8D3g" name="deployment">
-      <packagedElement xmi:type="uml:Package" xmi:id="_PBEzJeWqEeaYxL1QJO8D3g" name="SimpleSMDepPlan">
+    <packagedElement xmi:type="uml:Package" xmi:id="_BKDCRZnuEeeCzKHJj7Wq7w" name="deployment">
+      <packagedElement xmi:type="uml:Package" xmi:id="_BKDpWpnuEeeCzKHJj7Wq7w" name="SimpleSMDepPlan">
         <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_GYJDwG-QEea89JTVlr8RHA" name="mainInstance" classifier="_oqZNUDLaEd2qeKRLMdIx_A"/>
       </packagedElement>
     </packagedElement>
-    <packagedElement xmi:type="uml:Package" xmi:id="_PBFaMOWqEeaYxL1QJO8D3g" name="classes">
-      <packagedElement xmi:type="uml:Class" xmi:id="_oqZNUDLaEd2qeKRLMdIx_A" name="SimpleSM" classifierBehavior="_PBC98eWqEeaYxL1QJO8D3g">
+    <packagedElement xmi:type="uml:Package" xmi:id="_BKEQYZnuEeeCzKHJj7Wq7w" name="classes">
+      <packagedElement xmi:type="uml:Class" xmi:id="_oqZNUDLaEd2qeKRLMdIx_A" name="SimpleSM" classifierBehavior="_BKCbMpnuEeeCzKHJj7Wq7w">
         <ownedComment xmi:id="_cb-ncDemEeGPyrZ5I3hMlA" annotatedElement="_oqZNUDLaEd2qeKRLMdIx_A">
           <body>State-machine support is enabled with a container rule</body>
         </ownedComment>
-        <ownedAttribute xmi:id="_PABqQOWqEeaYxL1QJO8D3g" name="systemState">
+        <ownedAttribute xmi:id="_BIzsIJnuEeeCzKHJj7Wq7w" name="systemState">
           <type xmi:type="uml:Enumeration" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml#_uYyt0CdFEea3Ob5UfxuCGA"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PAK0MeWqEeaYxL1QJO8D3g" name="Junction">
-          <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
-        </ownedAttribute>
-        <ownedAttribute xmi:id="_PAN3geWqEeaYxL1QJO8D3g" name="states" type="_PAK0NuWqEeaYxL1QJO8D3g"/>
-        <ownedAttribute xmi:id="_PAQTweWqEeaYxL1QJO8D3g" name="activeStateID" type="_PAK0MuWqEeaYxL1QJO8D3g"/>
-        <ownedAttribute xmi:id="_PAVzU-WqEeaYxL1QJO8D3g" name="dispatchFlag">
+        <ownedAttribute xmi:id="_BJH1MZnuEeeCzKHJj7Wq7w" name="states" type="_BJBulJnuEeeCzKHJj7Wq7w"/>
+        <ownedAttribute xmi:id="_BJNUwJnuEeeCzKHJj7Wq7w" name="activeStateID" type="_BJBukJnuEeeCzKHJj7Wq7w"/>
+        <ownedAttribute xmi:id="_BJTbYJnuEeeCzKHJj7Wq7w" name="dispatchFlag">
           <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PAZdsOWqEeaYxL1QJO8D3g" name="threads">
+        <ownedAttribute xmi:id="_BJYT4JnuEeeCzKHJj7Wq7w" name="threads">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml#_ea234NYGEd-CgJIavLpOxQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PAbS4eWqEeaYxL1QJO8D3g" name="flags">
+        <ownedAttribute xmi:id="_BJbXMZnuEeeCzKHJj7Wq7w" name="flags">
           <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PAdvIOWqEeaYxL1QJO8D3g" name="conds">
+        <ownedAttribute xmi:id="_BJdzcZnuEeeCzKHJj7Wq7w" name="conds">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml#_-vYZoCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PAfkUeWqEeaYxL1QJO8D3g" name="mutexes">
+        <ownedAttribute xmi:id="_BJhd0ZnuEeeCzKHJj7Wq7w" name="mutexes">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml#__niwsCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PAhZgeWqEeaYxL1QJO8D3g" name="threadStructs">
+        <ownedAttribute xmi:id="_BJj6EZnuEeeCzKHJj7Wq7w" name="threadStructs">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml#_4Z1UwCmREearkPe7QerpcQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PAs_sOWqEeaYxL1QJO8D3g" name="doActivityTable" type="_PAouQeWqEeaYxL1QJO8D3g"/>
-        <ownedAttribute xmi:id="_PAwDBOWqEeaYxL1QJO8D3g" name="timeEventTable" type="_PAouQeWqEeaYxL1QJO8D3g"/>
-        <ownedAttribute xmi:id="_PAyfQOWqEeaYxL1QJO8D3g" name="timeEventThreads">
+        <ownedAttribute xmi:id="_BJtrEZnuEeeCzKHJj7Wq7w" name="doActivityTable" type="_BJrO0pnuEeeCzKHJj7Wq7w"/>
+        <ownedAttribute xmi:id="_BJwuZJnuEeeCzKHJj7Wq7w" name="timeEventTable" type="_BJrO0pnuEeeCzKHJj7Wq7w"/>
+        <ownedAttribute xmi:id="_BJzxsJnuEeeCzKHJj7Wq7w" name="timeEventThreads">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml#_ea234NYGEd-CgJIavLpOxQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PA0UcOWqEeaYxL1QJO8D3g" name="timeEventFlags">
+        <ownedAttribute xmi:id="_BJ2N8JnuEeeCzKHJj7Wq7w" name="timeEventFlags">
           <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PA3XwOWqEeaYxL1QJO8D3g" name="timeEventConds">
+        <ownedAttribute xmi:id="_BJ4qMZnuEeeCzKHJj7Wq7w" name="timeEventConds">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml#_-vYZoCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PA6bEeWqEeaYxL1QJO8D3g" name="timeEventMutexes">
+        <ownedAttribute xmi:id="_BJ7GcJnuEeeCzKHJj7Wq7w" name="timeEventMutexes">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml#__niwsCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PA9eYeWqEeaYxL1QJO8D3g" name="timeEventThreadStructs">
+        <ownedAttribute xmi:id="_BJ9isZnuEeeCzKHJj7Wq7w" name="timeEventThreadStructs">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml#_4Z1UwCmREearkPe7QerpcQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PA_6peWqEeaYxL1QJO8D3g" name="eventQueue">
+        <ownedAttribute xmi:id="_BKAmAJnuEeeCzKHJj7Wq7w" name="eventQueue">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml#_dWxYQD0zEeaQfbTekb55bw"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PBAhsOWqEeaYxL1QJO8D3g" name="currentEvent">
+        <ownedAttribute xmi:id="_BKAmAZnuEeeCzKHJj7Wq7w" name="currentEvent">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml#_MyJIUD0zEeaQfbTekb55bw"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PBC98uWqEeaYxL1QJO8D3g" name="dispatchThread">
+        <ownedAttribute xmi:id="_BKDCQJnuEeeCzKHJj7Wq7w" name="dispatchThread">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml#_ea234NYGEd-CgJIavLpOxQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PBC98-WqEeaYxL1QJO8D3g" name="dispatchStruct">
+        <ownedAttribute xmi:id="_BKDCQZnuEeeCzKHJj7Wq7w" name="dispatchStruct">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml#_4Z1UwCmREearkPe7QerpcQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PBC99OWqEeaYxL1QJO8D3g" name="runToCompletionMutex">
+        <ownedAttribute xmi:id="_BKDCQpnuEeeCzKHJj7Wq7w" name="runToCompletionMutex">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml#__niwsCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedAttribute xmi:id="_PBC99eWqEeaYxL1QJO8D3g" name="runToCompletionCond">
+        <ownedAttribute xmi:id="_BKDCQ5nuEeeCzKHJj7Wq7w" name="runToCompletionCond">
           <type xmi:type="uml:Class" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml#_-vYZoCa0EeazPcQ6-9hBeQ"/>
         </ownedAttribute>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PBC98eWqEeaYxL1QJO8D3g" name="dispatchEvent" specification="_PBC98OWqEeaYxL1QJO8D3g">
+        <interfaceRealization xmi:id="_bi6iwJlGEeejksbGg7yusw" client="_oqZNUDLaEd2qeKRLMdIx_A">
+          <supplier xmi:type="uml:Interface" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
+          <contract href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
+        </interfaceRealization>
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BKCbMpnuEeeCzKHJj7Wq7w" name="dispatchEvent" specification="_BKCbMZnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>bool popDeferred = false;
 while(true) {
@@ -82,15 +83,12 @@
 	if (currentEvent != NULL) {
 		SIMPLESM_GET_CONTROL
 		switch(currentEvent->eventID) {
-			case TE_VALUE_50_UNIT_MS__ID:
-				processTE_value_50_unit_ms_();
+			case TE_VALUE_250_UNIT_MS__ID:
+				processTE_value_250_unit_ms_();
 				break;
 			case TE_VALUE_500_UNIT_MS__ID:
 				processTE_value_500_unit_ms_();
 				break;
-			case TE_VALUE_25_UNIT_MS__ID:
-				processTE_value_25_unit_ms_();
-				break;
 				case COMPLETIONEVENT_ID: 
 					processCompletionEvent();
 				break;
@@ -115,15 +113,6 @@
 cout &lt;&lt; &quot;a=&quot; &lt;&lt; a &lt;&lt; &quot; b=&quot; &lt;&lt; b &lt;&lt; &quot; a+b=&quot; &lt;&lt; a+b &lt;&lt; endl;
 return a+b;</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_qxjWINnmEd2_cstbO2Uzgg" name="mult" specification="_4ZEZwHecEd6r18stFZxmFQ">
-          <ownedParameter xmi:id="_YURmYGkzEearUflqhq5Pgw" name="res" direction="return">
-            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YUTbkGkzEearUflqhq5Pgw" value="1"/>
-            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YUUCoGkzEearUflqhq5Pgw" value="1"/>
-          </ownedParameter>
-          <language>C/C++</language>
-          <body>cout &lt;&lt; &quot;a=&quot; &lt;&lt; a &lt;&lt; &quot; b=&quot; &lt;&lt; b &lt;&lt; &quot; a*b=&quot; &lt;&lt; a*b &lt;&lt; endl;
-return a*b;</body>
-        </ownedBehavior>
         <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_YNCW4CgBEeapjr3l63b85A" name="run" specification="_VGsRACgBEeapjr3l63b85A">
           <language>C/C++</language>
           <body>cout &lt;&lt; &quot;call add (2, 3);&quot; &lt;&lt; endl;
@@ -132,29 +121,27 @@
 sleep(15);
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAQ60uWqEeaYxL1QJO8D3g" name="SMSimple_Region0_Enter" specification="_PAQ60OWqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJN70pnuEeeCzKHJj7Wq7w" name="SMSimple_Region0_Enter" specification="_BJN70JnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>switch(enter_mode) {
 	case SMSIMPLE_REGION0_DEFAULT:
-		activeStateID = STATE0_ID;
+		activeStateID = FLIP_ID;
 		
-		setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
+		setFlag(SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
 		
 		//TODO: set systemState to EVENT_CONSUMED
 		break;
 }</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAVzUOWqEeaYxL1QJO8D3g" name="SimpleSM" specification="_PASwAOWqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJS0UJnuEeeCzKHJj7Wq7w" name="SimpleSM" specification="_BJOi4JnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>startBehavior();</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAVzUuWqEeaYxL1QJO8D3g" name="startBehavior" specification="_PAVzUeWqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJS0UpnuEeeCzKHJj7Wq7w" name="startBehavior" specification="_BJS0UZnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>systemState = statemachine::IDLE;
-doActivityTable[STATE0_ID] =  states[STATE0_ID].doActivity;
-doActivityTable[STATE1_ID] =  states[STATE1_ID].doActivity;
-doActivityTable[STATE2_ID] =  states[STATE2_ID].doActivity;
+doActivityTable[FLIP_ID] =  states[FLIP_ID].doActivity;
+doActivityTable[FLOP_ID] =  states[FLOP_ID].doActivity;
 
 // initialize all threads, the threads wait until the associated flag is set
 for(int i = 0; i &lt; (int) STATE_MAX; i++) {
@@ -168,10 +155,9 @@
 	}
 }
 
-timeEventThreadStructs[SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID)].duration = 50;
+timeEventThreadStructs[SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID)].duration = 250;
 timeEventThreadStructs[SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID)].duration = 500;
-timeEventThreadStructs[SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID)].duration = 25;
-for(int i = SIMPLESM_TIME_EVENT_LOWER_BOUND; i &lt; 3; i++) {
+for(int i = SIMPLESM_TIME_EVENT_LOWER_BOUND; i &lt; 2; i++) {
 	timeEventThreadStructs[SIMPLESM_TE_INDEX(i)].id = i;
 	timeEventThreadStructs[SIMPLESM_TE_INDEX(i)].ptr = this;
 	timeEventThreadStructs[SIMPLESM_TE_INDEX(i)].func_type = statemachine::TF_TIME_EVENT;
@@ -196,91 +182,17 @@
 SMSimple_Region0_Enter(SMSIMPLE_REGION0_DEFAULT);
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAWaYOWqEeaYxL1QJO8D3g" name="processTE_value_50_unit_ms_" specification="_PAVzVOWqEeaYxL1QJO8D3g">
-          <language>C++</language>
-          <body>systemState = statemachine::EVENT_PROCESSING;
-if (systemState == statemachine::EVENT_PROCESSING) {
-	switch(activeStateID) {
-		case STATE0_ID: 
-			//from State0 to State1
-			if (true) {
-			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
-					setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
-			activeStateID = STATE1_ID;
-			//starting the counters for time events
-			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
-			systemState = statemachine::EVENT_CONSUMED;
-			}
-			break;
-		default:
-			//do nothing
-			break;
-	}
-}
-</body>
-        </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAWaYuWqEeaYxL1QJO8D3g" name="processTE_value_500_unit_ms_" specification="_PAWaYeWqEeaYxL1QJO8D3g">
-          <language>C++</language>
-          <body>systemState = statemachine::EVENT_PROCESSING;
-if (systemState == statemachine::EVENT_PROCESSING) {
-	switch(activeStateID) {
-		case STATE1_ID: 
-			//from State1 to State0
-			if (true) {
-			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
-			add(2,3);
-			mult(3,5);
-			std::cout &lt;&lt;&quot;From State1 to State0 \n&quot;;
-			activeStateID = STATE0_ID;
-			//starting the counters for time events
-			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
-					setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
-			systemState = statemachine::EVENT_CONSUMED;
-			}
-			break;
-		case STATE2_ID: 
-			//from State2 to Junction
-			if (true) {
-				Junction = 0;
-				if (true) {
-					Junction = 1;
-				}
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
-				std::cout &lt;&lt;&quot;From State 2 to Junction1\n&quot;;
-				if (Junction == 0) {
-					activeStateID = STATE0_ID;
-					//starting the counters for time events
-					setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
-							setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
-				} else 
-				if (Junction == 1) {
-					std::cout &lt;&lt; &quot;From Junction1 to State 1 \n&quot;;
-					activeStateID = STATE1_ID;
-					//starting the counters for time events
-					setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
-				}
-			systemState = statemachine::EVENT_CONSUMED;
-			}
-			break;
-		default:
-			//do nothing
-			break;
-	}
-}
-</body>
-        </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAWaZOWqEeaYxL1QJO8D3g" name="processCE_CServer_impl_add" specification="_PAWaY-WqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJTbYpnuEeeCzKHJj7Wq7w" name="processCE_CServer_impl_add" specification="_BJTbYZnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>SIMPLESM_GET_CONTROL
 systemState = statemachine::EVENT_PROCESSING;
 if (systemState == statemachine::EVENT_PROCESSING) {
 	switch(activeStateID) {
-		case STATE0_ID: 
-			//from State0 to State1
+		case FLIP_ID: 
+			//from Flip to Flop
 			if (true) {
-			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
-					setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
-			activeStateID = STATE1_ID;
+			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
+			activeStateID = FLOP_ID;
 			//starting the counters for time events
 			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
 			systemState = statemachine::EVENT_CONSUMED;
@@ -294,18 +206,18 @@
 SIMPLESM_RELEASE_CONTROL
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAYPk-WqEeaYxL1QJO8D3g" name="processTE_value_25_unit_ms_" specification="_PAYPkuWqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJVQkJnuEeeCzKHJj7Wq7w" name="processTE_value_250_unit_ms_" specification="_BJUph5nuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>systemState = statemachine::EVENT_PROCESSING;
 if (systemState == statemachine::EVENT_PROCESSING) {
 	switch(activeStateID) {
-		case STATE0_ID: 
-			//from State0 to State2
+		case FLIP_ID: 
+			//from Flip to Flop
 			if (true) {
-			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
-					setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
-			std::cout &lt;&lt; &quot;From State 0 to State 2\n&quot;;
-			activeStateID = STATE2_ID;
+			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
+			std::cout &lt;&lt;&quot;From Flip to Flop&quot;
+			               &lt;&lt; std::endl;
+			activeStateID = FLOP_ID;
 			//starting the counters for time events
 			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
 			systemState = statemachine::EVENT_CONSUMED;
@@ -318,12 +230,35 @@
 }
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAY2oOWqEeaYxL1QJO8D3g" name="processCompletionEvent" specification="_PAYPlOWqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJV3oJnuEeeCzKHJj7Wq7w" name="processTE_value_500_unit_ms_" specification="_BJVQkZnuEeeCzKHJj7Wq7w">
+          <language>C++</language>
+          <body>systemState = statemachine::EVENT_PROCESSING;
+if (systemState == statemachine::EVENT_PROCESSING) {
+	switch(activeStateID) {
+		case FLOP_ID: 
+			//from Flop to Flip
+			if (true) {
+			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID), statemachine::TF_TIME_EVENT, false);
+			std::cout &lt;&lt;&quot;From Flop to Flip&quot; &lt;&lt; std::endl;
+			activeStateID = FLIP_ID;
+			//starting the counters for time events
+			setFlag(SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID), statemachine::TF_TIME_EVENT, true);
+			systemState = statemachine::EVENT_CONSUMED;
+			}
+			break;
+		default:
+			//do nothing
+			break;
+	}
+}
+</body>
+        </ownedBehavior>
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJWesZnuEeeCzKHJj7Wq7w" name="processCompletionEvent" specification="_BJWesJnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>systemState = statemachine::EVENT_PROCESSING;
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAouQOWqEeaYxL1QJO8D3g" name="thread_func_wrapper" specification="_PAjOseWqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJrO0ZnuEeeCzKHJj7Wq7w" name="thread_func_wrapper" specification="_BJmWUZnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>statemachine::StructForThread_t* cptr = (statemachine::StructForThread_t*)data;
 SimpleSM* ptr = (SimpleSM*) cptr->ptr;
@@ -337,7 +272,7 @@
 }
 return NULL;</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAvb8-WqEeaYxL1QJO8D3g" name="doCallActivity" specification="_PAvb8eWqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJwHU5nuEeeCzKHJj7Wq7w" name="doCallActivity" specification="_BJwHUZnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>flags[id] = false;
 while(true) {
@@ -355,7 +290,7 @@
 	pthread_mutex_unlock(&amp;mutexes[id]);
 }</body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PAwDA-WqEeaYxL1QJO8D3g" name="setFlag" specification="_PAvb9OWqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJwuY5nuEeeCzKHJj7Wq7w" name="setFlag" specification="_BJwHVJnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>//value = true => start activity
 //value = false => stop activity
@@ -370,7 +305,7 @@
 }
 </body>
         </ownedBehavior>
-        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_PA_6pOWqEeaYxL1QJO8D3g" name="listenTimeEvent" specification="_PA_6oeWqEeaYxL1QJO8D3g">
+        <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_BJ_-9JnuEeeCzKHJj7Wq7w" name="listenTimeEvent" specification="_BJ_-8ZnuEeeCzKHJj7Wq7w">
           <language>C++</language>
           <body>struct timeval tv;
 struct timespec ts;
@@ -403,7 +338,7 @@
 	}
 }</body>
         </ownedBehavior>
-        <ownedOperation xmi:id="_PBC98OWqEeaYxL1QJO8D3g" name="dispatchEvent" method="_PBC98eWqEeaYxL1QJO8D3g"/>
+        <ownedOperation xmi:id="_BKCbMZnuEeeCzKHJj7Wq7w" name="dispatchEvent" method="_BKCbMpnuEeeCzKHJj7Wq7w"/>
         <ownedOperation xmi:id="_TbIjUJYlEd6G9q9hwr11bw" name="add" method="_ML-4AKI5Ed6FqJCjEUrkqQ">
           <ownedParameter xmi:id="_guLbIGk0EearUflqhq5Pgw" name="a">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml#Integer"/>
@@ -417,101 +352,82 @@
             <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YOGs8GkzEearUflqhq5Pgw" value="1"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_4ZEZwHecEd6r18stFZxmFQ" name="mult" method="_qxjWINnmEd2_cstbO2Uzgg">
-          <ownedParameter xmi:id="_fHa4sGk0EearUflqhq5Pgw" name="a">
-            <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml#Integer"/>
-          </ownedParameter>
-          <ownedParameter xmi:id="_gA9v0Gk0EearUflqhq5Pgw" name="b">
-            <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml#Integer"/>
-          </ownedParameter>
-          <ownedParameter xmi:id="_YUC84GkzEearUflqhq5Pgw" name="res" direction="return">
-            <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml#Integer"/>
-            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YUELAGkzEearUflqhq5Pgw" value="1"/>
-            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YUEyEGkzEearUflqhq5Pgw" value="1"/>
-          </ownedParameter>
-        </ownedOperation>
         <ownedOperation xmi:id="_VGsRACgBEeapjr3l63b85A" name="run" method="_YNCW4CgBEeapjr3l63b85A"/>
-        <ownedOperation xmi:id="_PAQ60OWqEeaYxL1QJO8D3g" name="SMSimple_Region0_Enter" method="_PAQ60uWqEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_PAQ60eWqEeaYxL1QJO8D3g" name="enter_mode">
+        <ownedOperation xmi:id="_BJN70JnuEeeCzKHJj7Wq7w" name="SMSimple_Region0_Enter" method="_BJN70pnuEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_BJN70ZnuEeeCzKHJj7Wq7w" name="enter_mode">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_PASwAOWqEeaYxL1QJO8D3g" name="SimpleSM" method="_PAVzUOWqEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_PAVzUeWqEeaYxL1QJO8D3g" name="startBehavior" method="_PAVzUuWqEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_PAVzVOWqEeaYxL1QJO8D3g" name="processTE_value_50_unit_ms_" method="_PAWaYOWqEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_PAWaYeWqEeaYxL1QJO8D3g" name="processTE_value_500_unit_ms_" method="_PAWaYuWqEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_PAWaY-WqEeaYxL1QJO8D3g" name="processCE_CServer_impl_add" method="_PAWaZOWqEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_PAXogOWqEeaYxL1QJO8D3g" name="a">
+        <ownedOperation xmi:id="_BJOi4JnuEeeCzKHJj7Wq7w" name="SimpleSM" method="_BJS0UJnuEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_BJS0UZnuEeeCzKHJj7Wq7w" name="startBehavior" method="_BJS0UpnuEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_BJTbYZnuEeeCzKHJj7Wq7w" name="processCE_CServer_impl_add" method="_BJTbYpnuEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_BJUCcJnuEeeCzKHJj7Wq7w" name="a">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml#Integer"/>
-            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PAXogeWqEeaYxL1QJO8D3g" value="1"/>
-            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PAXoguWqEeaYxL1QJO8D3g" value="1"/>
+            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_BJUCcZnuEeeCzKHJj7Wq7w" value="1"/>
+            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_BJUpgJnuEeeCzKHJj7Wq7w" value="1"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_PAXog-WqEeaYxL1QJO8D3g" name="b">
+          <ownedParameter xmi:id="_BJUpgZnuEeeCzKHJj7Wq7w" name="b">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/PrimitiveTypes.uml#Integer"/>
-            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PAXohOWqEeaYxL1QJO8D3g" value="1"/>
-            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PAXoheWqEeaYxL1QJO8D3g" value="1"/>
+            <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_BJUpgpnuEeeCzKHJj7Wq7w" value="1"/>
+            <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_BJUpg5nuEeeCzKHJj7Wq7w" value="1"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_PAYPkuWqEeaYxL1QJO8D3g" name="processTE_value_25_unit_ms_" method="_PAYPk-WqEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_PAYPlOWqEeaYxL1QJO8D3g" name="processCompletionEvent" method="_PAY2oOWqEeaYxL1QJO8D3g"/>
-        <ownedOperation xmi:id="_PAjOseWqEeaYxL1QJO8D3g" name="thread_func_wrapper" isStatic="true" method="_PAouQOWqEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_PAjOsuWqEeaYxL1QJO8D3g" name="data">
+        <ownedOperation xmi:id="_BJUph5nuEeeCzKHJj7Wq7w" name="processTE_value_250_unit_ms_" method="_BJVQkJnuEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_BJVQkZnuEeeCzKHJj7Wq7w" name="processTE_value_500_unit_ms_" method="_BJV3oJnuEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_BJWesJnuEeeCzKHJj7Wq7w" name="processCompletionEvent" method="_BJWesZnuEeeCzKHJj7Wq7w"/>
+        <ownedOperation xmi:id="_BJmWUZnuEeeCzKHJj7Wq7w" name="thread_func_wrapper" isStatic="true" method="_BJrO0ZnuEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_BJmWUpnuEeeCzKHJj7Wq7w" name="data">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_PAlq8eWqEeaYxL1QJO8D3g" name="ret" direction="return">
+          <ownedParameter xmi:id="_BJoykZnuEeeCzKHJj7Wq7w" name="ret" direction="return">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_PAvb8eWqEeaYxL1QJO8D3g" name="doCallActivity" method="_PAvb8-WqEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_PAvb8uWqEeaYxL1QJO8D3g" name="id">
+        <ownedOperation xmi:id="_BJwHUZnuEeeCzKHJj7Wq7w" name="doCallActivity" method="_BJwHU5nuEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_BJwHUpnuEeeCzKHJj7Wq7w" name="id">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_PAvb9OWqEeaYxL1QJO8D3g" name="setFlag" method="_PAwDA-WqEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_PAwDAOWqEeaYxL1QJO8D3g" name="id">
+        <ownedOperation xmi:id="_BJwHVJnuEeeCzKHJj7Wq7w" name="setFlag" method="_BJwuY5nuEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_BJwuYJnuEeeCzKHJj7Wq7w" name="id">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_PAwDAeWqEeaYxL1QJO8D3g" name="func_type">
+          <ownedParameter xmi:id="_BJwuYZnuEeeCzKHJj7Wq7w" name="func_type">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_PAwDAuWqEeaYxL1QJO8D3g" name="value">
+          <ownedParameter xmi:id="_BJwuYpnuEeeCzKHJj7Wq7w" name="value">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_PA_6oeWqEeaYxL1QJO8D3g" name="listenTimeEvent" method="_PA_6pOWqEeaYxL1QJO8D3g">
-          <ownedParameter xmi:id="_PA_6ouWqEeaYxL1QJO8D3g" name="id">
+        <ownedOperation xmi:id="_BJ_-8ZnuEeeCzKHJj7Wq7w" name="listenTimeEvent" method="_BJ_-9JnuEeeCzKHJj7Wq7w">
+          <ownedParameter xmi:id="_BJ_-8pnuEeeCzKHJj7Wq7w" name="id">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
           </ownedParameter>
-          <ownedParameter xmi:id="_PA_6o-WqEeaYxL1QJO8D3g" name="duration">
+          <ownedParameter xmi:id="_BJ_-85nuEeeCzKHJj7Wq7w" name="duration">
             <type xmi:type="uml:PrimitiveType" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
           </ownedParameter>
         </ownedOperation>
-        <ownedOperation xmi:id="_PAK0M-WqEeaYxL1QJO8D3g" name="entry_dft"/>
-        <ownedOperation xmi:id="_PAK0NOWqEeaYxL1QJO8D3g" name="exit_dft"/>
-        <ownedOperation xmi:id="_PAK0NeWqEeaYxL1QJO8D3g" name="doActivity_dft"/>
-        <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_PAK0NuWqEeaYxL1QJO8D3g" name="State_t"/>
-        <nestedClassifier xmi:type="uml:Enumeration" xmi:id="_PAK0MuWqEeaYxL1QJO8D3g" name="StateIDEnum">
-          <ownedLiteral xmi:id="_PAY2oeWqEeaYxL1QJO8D3g" name="STATE0_ID"/>
-          <ownedLiteral xmi:id="_PAY2ouWqEeaYxL1QJO8D3g" name="STATE1_ID"/>
-          <ownedLiteral xmi:id="_PAY2o-WqEeaYxL1QJO8D3g" name="STATE2_ID"/>
-          <ownedLiteral xmi:id="_PAY2pOWqEeaYxL1QJO8D3g" name="STATE_MAX"/>
+        <ownedOperation xmi:id="_BJBukZnuEeeCzKHJj7Wq7w" name="entry_dft"/>
+        <ownedOperation xmi:id="_BJBukpnuEeeCzKHJj7Wq7w" name="exit_dft"/>
+        <ownedOperation xmi:id="_BJBuk5nuEeeCzKHJj7Wq7w" name="doActivity_dft"/>
+        <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_BJBulJnuEeeCzKHJj7Wq7w" name="State_t"/>
+        <nestedClassifier xmi:type="uml:Enumeration" xmi:id="_BJBukJnuEeeCzKHJj7Wq7w" name="StateIDEnum">
+          <ownedLiteral xmi:id="_BJXFwJnuEeeCzKHJj7Wq7w" name="FLIP_ID"/>
+          <ownedLiteral xmi:id="_BJXFwZnuEeeCzKHJj7Wq7w" name="FLOP_ID"/>
+          <ownedLiteral xmi:id="_BJXFwpnuEeeCzKHJj7Wq7w" name="STATE_MAX"/>
         </nestedClassifier>
-        <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_PAouQeWqEeaYxL1QJO8D3g" name="FptPointer"/>
-        <nestedClassifier xmi:type="uml:Enumeration" xmi:id="_PAJmEeWqEeaYxL1QJO8D3g" name="EventId_t">
-          <ownedLiteral xmi:id="_PAJmEuWqEeaYxL1QJO8D3g" name="TE_VALUE_50_UNIT_MS__ID"/>
-          <ownedLiteral xmi:id="_PAKNIOWqEeaYxL1QJO8D3g" name="TE_VALUE_500_UNIT_MS__ID"/>
-          <ownedLiteral xmi:id="_PAKNIeWqEeaYxL1QJO8D3g" name="TE_VALUE_25_UNIT_MS__ID"/>
-          <ownedLiteral xmi:id="_PAKNIuWqEeaYxL1QJO8D3g" name="CE_CSERVER_IMPL_ADD_ID"/>
-          <ownedLiteral xmi:id="_PAK0MOWqEeaYxL1QJO8D3g" name="COMPLETIONEVENT_ID"/>
+        <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_BJrO0pnuEeeCzKHJj7Wq7w" name="FptPointer"/>
+        <nestedClassifier xmi:type="uml:Enumeration" xmi:id="_BI_5YZnuEeeCzKHJj7Wq7w" name="EventId_t">
+          <ownedLiteral xmi:id="_BJAgcJnuEeeCzKHJj7Wq7w" name="TE_VALUE_250_UNIT_MS__ID"/>
+          <ownedLiteral xmi:id="_BJAgcZnuEeeCzKHJj7Wq7w" name="TE_VALUE_500_UNIT_MS__ID"/>
+          <ownedLiteral xmi:id="_BJBHgJnuEeeCzKHJj7Wq7w" name="CE_CSERVER_IMPL_ADD_ID"/>
+          <ownedLiteral xmi:id="_BJBHgZnuEeeCzKHJj7Wq7w" name="COMPLETIONEVENT_ID"/>
         </nestedClassifier>
       </packagedElement>
-      <packagedElement xmi:type="uml:Realization" xmi:id="_yHXTMG-EEea89JTVlr8RHA" client="_oqZNUDLaEd2qeKRLMdIx_A">
-        <supplier xmi:type="uml:Interface" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/sysinterfaces.uml#_PTWzwCS-Ed-A_I32T0fkaA"/>
-      </packagedElement>
-      <packagedElement xmi:type="uml:Dependency" xmi:id="_PABqQeWqEeaYxL1QJO8D3g" client="_oqZNUDLaEd2qeKRLMdIx_A">
+      <packagedElement xmi:type="uml:Dependency" xmi:id="_BIzsIZnuEeeCzKHJj7Wq7w" client="_oqZNUDLaEd2qeKRLMdIx_A">
         <supplier xmi:type="uml:Enumeration" href="/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml#_hNs5oCdSEea6h5xPEh8iAg"/>
       </packagedElement>
-      <packagedElement xmi:type="uml:Dependency" xmi:id="_PAN3gOWqEeaYxL1QJO8D3g" client="_PAK0NuWqEeaYxL1QJO8D3g" supplier="_PAK0MuWqEeaYxL1QJO8D3g"/>
+      <packagedElement xmi:type="uml:Dependency" xmi:id="_BJH1MJnuEeeCzKHJj7Wq7w" client="_BJBulJnuEeeCzKHJj7Wq7w" supplier="_BJBukJnuEeeCzKHJj7Wq7w"/>
     </packagedElement>
     <profileApplication xmi:id="_O6TiIjLUEd26WNosUASSSw">
       <eAnnotations xmi:id="_O6TiIzLUEd26WNosUASSSw" source="http://www.eclipse.org/uml2/2.0.0/UML">
@@ -527,7 +443,7 @@
     </profileApplication>
     <profileApplication xmi:id="_zi-sUE2sEeGl8qrc8BM7vA">
       <eAnnotations xmi:id="_0QJUUE2sEeGl8qrc8BM7vA" source="http://www.eclipse.org/uml2/2.0.0/UML">
-        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/MARTE/1#//Alloc"/>
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/MARTE/1#//MARTE_Foundations/Alloc"/>
       </eAnnotations>
       <appliedProfile href="pathmap://Papyrus_PROFILES/MARTE.profile.uml#_ar8OsAPMEdyuUt-4qHuVvQ"/>
     </profileApplication>
@@ -543,32 +459,32 @@
       </eAnnotations>
       <appliedProfile href="pathmap://DEP_PROFILE/Deployment.profile.uml#_gPDsIBa-EearhdjjJ6cVzQ"/>
     </profileApplication>
-    <profileApplication xmi:id="_PABqQuWqEeaYxL1QJO8D3g">
-      <eAnnotations xmi:id="_PABqQ-WqEeaYxL1QJO8D3g" source="http://www.eclipse.org/uml2/2.0.0/UML">
+    <profileApplication xmi:id="_BI0TMJnuEeeCzKHJj7Wq7w">
+      <eAnnotations xmi:id="_BI0TMZnuEeeCzKHJj7Wq7w" source="http://www.eclipse.org/uml2/2.0.0/UML">
         <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard#/"/>
       </eAnnotations>
       <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
     </profileApplication>
   </uml:Model>
-  <Deployment:DeploymentPlan xmi:id="_PBEzJ-WqEeaYxL1QJO8D3g" base_Package="_PBEzJeWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Include xmi:id="_PBFaM-WqEeaYxL1QJO8D3g" body="#include &lt;iostream>&#xA;using namespace std;&#xA;&#xA;#include &lt;unistd.h>&#xA;" header="#define SIMPLESM_TIME_EVENT_LOWER_BOUND (0)&#xA;#define SIMPLESM_CHANGE_EVENT_LOWER_BOUND (3)&#xA;#define SIMPLESM_TE_INDEX(id) (id - SIMPLESM_TIME_EVENT_LOWER_BOUND)&#xA;#define SIMPLESM_CHE_INDEX(id) (id - SIMPLESM_CHANGE_EVENT_LOWER_BOUND)&#xA;#define SMSIMPLE_REGION0_DEFAULT (0)&#xA;#define SMSIMPLE_REGION0 (0)&#xA;#include &quot;time.h&quot;&#xA;#include &quot;pthread.h&quot;&#xA;#include &quot;time.h&quot;&#xA;&#x9;&#x9;#include &quot;sys/time.h&quot;&#xA;#define CHECKPOINT if (systemState == statemachine::EVENT_PROCESSING) {return;}&#xA;#define SimpleSM_THREAD_CREATE(thThread, str) pthread_create(&amp;thThread, NULL, &amp;SimpleSM::thread_func_wrapper, &amp;str);&#xA;#define SIMPLESM_GET_CONTROL /*mutex synchronization to protect run-to-completion semantics*/ \&#xA;&#x9;&#x9;pthread_mutex_lock(&amp;runToCompletionMutex); \&#xA;&#x9;&#x9;while (systemState != statemachine::IDLE) {\&#xA;&#x9;&#x9;&#x9;pthread_cond_wait(&amp;runToCompletionCond, &amp;runToCompletionMutex);\&#xA;&#x9;&#x9;}&#xA;#define SIMPLESM_RELEASE_CONTROL systemState = statemachine::IDLE; pthread_cond_signal(&amp;runToCompletionCond); \&#xA;&#x9;&#x9;&#x9;&#x9;pthread_mutex_unlock(&amp;runToCompletionMutex);" base_class="_oqZNUDLaEd2qeKRLMdIx_A"/>
-  <C_Cpp:Typedef xmi:id="_PBJrouWqEeaYxL1QJO8D3g" definition="struct State_t {&#xA;&#x9;//1 is configured as the maximum number of orthogonal regions a composite states can have&#xA;&#x9;unsigned int /*StateIDEnum*/ previousStates[1]; //for history states&#xA;&#x9;unsigned int /*StateIDEnum*/ actives[1];&#xA;&#x9;void (SimpleSM::*entry)();&#xA;&#x9;void (SimpleSM::*exit)();&#xA;&#x9;void (SimpleSM::*doActivity)();&#xA;&#x9;State_t() {&#xA;&#x9;&#x9;entry = &amp;SimpleSM::entry_dft;&#xA;&#x9;&#x9;exit = &amp;SimpleSM::exit_dft;&#xA;&#x9;&#x9;doActivity = &amp;SimpleSM::doActivity_dft;&#xA;&#x9;&#x9;for(int i = 0; i &lt; 1; i++) {&#xA;&#x9;&#x9;&#x9;previousStates[i] = STATE_MAX;&#xA;&#x9;&#x9;&#x9;actives[i] = STATE_MAX;&#xA;&#x9;&#x9;}&#xA;&#x9;}&#xA;} " base_primitivetype="_PAK0NuWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBJro-WqEeaYxL1QJO8D3g" definition="[3]" base_property="_PAN3geWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBK5xeWqEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_PAZdsOWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBLg0OWqEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_PAbS4eWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBLg0-WqEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_PAdvIOWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBMH4OWqEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_PAfkUeWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBRAYeWqEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_PAhZgeWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Typedef xmi:id="_PBRncOWqEeaYxL1QJO8D3g" definition="void (SimpleSM::*typeName)()" base_primitivetype="_PAouQeWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBRnceWqEeaYxL1QJO8D3g" definition="[STATE_MAX]" base_property="_PAs_sOWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBRnc-WqEeaYxL1QJO8D3g" definition="[3]" base_property="_PAwDBOWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBSOgOWqEeaYxL1QJO8D3g" definition="[3]" base_property="_PAyfQOWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBSOguWqEeaYxL1QJO8D3g" definition="[3]" base_property="_PA0UcOWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBSOhOWqEeaYxL1QJO8D3g" definition="[3]" base_property="_PA3XwOWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBS1kOWqEeaYxL1QJO8D3g" definition="[3]" base_property="_PA6bEeWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Array xmi:id="_PBS1kuWqEeaYxL1QJO8D3g" definition="[3]" base_property="_PA9eYeWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Ptr xmi:id="_PBb_gOWqEeaYxL1QJO8D3g" base_property="_PBAhsOWqEeaYxL1QJO8D3g"/>
-  <standard:Create xmi:id="_PBg4AeWqEeaYxL1QJO8D3g" base_BehavioralFeature="_PASwAOWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Ptr xmi:id="_PBj7UuWqEeaYxL1QJO8D3g" base_parameter="_PAjOsuWqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Ptr xmi:id="_PBj7VOWqEeaYxL1QJO8D3g" base_parameter="_PAlq8eWqEeaYxL1QJO8D3g"/>
+  <Deployment:DeploymentPlan xmi:id="_BKEQYJnuEeeCzKHJj7Wq7w" base_Package="_BKDpWpnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Include xmi:id="_BKEQZJnuEeeCzKHJj7Wq7w" body="#include &lt;iostream>&#xA;using namespace std;&#xA;&#xA;#include &lt;unistd.h>&#xA;" header="#define SIMPLESM_TIME_EVENT_LOWER_BOUND (0)&#xA;#define SIMPLESM_CHANGE_EVENT_LOWER_BOUND (2)&#xA;#define SIMPLESM_TE_INDEX(id) (id - SIMPLESM_TIME_EVENT_LOWER_BOUND)&#xA;#define SIMPLESM_CHE_INDEX(id) (id - SIMPLESM_CHANGE_EVENT_LOWER_BOUND)&#xA;#define SMSIMPLE_REGION0_DEFAULT (0)&#xA;#define SMSIMPLE_REGION0 (0)&#xA;#include &quot;time.h&quot;&#xA;#include &quot;pthread.h&quot;&#xA;#include &quot;time.h&quot;&#xA;&#x9;&#x9;#include &quot;sys/time.h&quot;&#xA;#define CHECKPOINT if (systemState == statemachine::EVENT_PROCESSING) {return;}&#xA;#define SimpleSM_THREAD_CREATE(thThread, str) pthread_create(&amp;thThread, NULL, &amp;SimpleSM::thread_func_wrapper, &amp;str);&#xA;#define SIMPLESM_GET_CONTROL /*mutex synchronization to protect run-to-completion semantics*/ \&#xA;&#x9;&#x9;pthread_mutex_lock(&amp;runToCompletionMutex); \&#xA;&#x9;&#x9;while (systemState != statemachine::IDLE) {\&#xA;&#x9;&#x9;&#x9;pthread_cond_wait(&amp;runToCompletionCond, &amp;runToCompletionMutex);\&#xA;&#x9;&#x9;}&#xA;#define SIMPLESM_RELEASE_CONTROL systemState = statemachine::IDLE; pthread_cond_signal(&amp;runToCompletionCond); \&#xA;&#x9;&#x9;&#x9;&#x9;pthread_mutex_unlock(&amp;runToCompletionMutex);" base_class="_oqZNUDLaEd2qeKRLMdIx_A"/>
+  <C_Cpp:Typedef xmi:id="_BKJI4JnuEeeCzKHJj7Wq7w" definition="struct State_t {&#xA;&#x9;//1 is configured as the maximum number of orthogonal regions a composite states can have&#xA;&#x9;unsigned int /*StateIDEnum*/ previousStates[1]; //for history states&#xA;&#x9;unsigned int /*StateIDEnum*/ actives[1];&#xA;&#x9;void (SimpleSM::*entry)();&#xA;&#x9;void (SimpleSM::*exit)();&#xA;&#x9;void (SimpleSM::*doActivity)();&#xA;&#x9;State_t() {&#xA;&#x9;&#x9;entry = &amp;SimpleSM::entry_dft;&#xA;&#x9;&#x9;exit = &amp;SimpleSM::exit_dft;&#xA;&#x9;&#x9;doActivity = &amp;SimpleSM::doActivity_dft;&#xA;&#x9;&#x9;for(int i = 0; i &lt; 1; i++) {&#xA;&#x9;&#x9;&#x9;previousStates[i] = STATE_MAX;&#xA;&#x9;&#x9;&#x9;actives[i] = STATE_MAX;&#xA;&#x9;&#x9;}&#xA;&#x9;}&#xA;} " base_primitivetype="_BJBulJnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKJI4ZnuEeeCzKHJj7Wq7w" definition="[2]" base_property="_BJH1MZnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKLlIpnuEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_BJYT4JnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKMMMJnuEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_BJbXMZnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKMzQZnuEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_BJdzcZnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKNaUZnuEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_BJhd0ZnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKSS0pnuEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_BJj6EZnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Typedef xmi:id="_BKS54ZnuEeeCzKHJj7Wq7w" definition="void (SimpleSM::*typeName)()" base_primitivetype="_BJrO0pnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKTg8JnuEeeCzKHJj7Wq7w" definition="[STATE_MAX]" base_property="_BJtrEZnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKTg8pnuEeeCzKHJj7Wq7w" definition="[2]" base_property="_BJwuZJnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKUIAJnuEeeCzKHJj7Wq7w" definition="[2]" base_property="_BJzxsJnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKUIApnuEeeCzKHJj7Wq7w" definition="[2]" base_property="_BJ2N8JnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKUvEJnuEeeCzKHJj7Wq7w" definition="[2]" base_property="_BJ4qMZnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKUvEpnuEeeCzKHJj7Wq7w" definition="[2]" base_property="_BJ7GcJnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Array xmi:id="_BKVWIJnuEeeCzKHJj7Wq7w" definition="[2]" base_property="_BJ9isZnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Ptr xmi:id="_BKg8UJnuEeeCzKHJj7Wq7w" base_property="_BKAmAZnuEeeCzKHJj7Wq7w"/>
+  <standard:Create xmi:id="_BKpfMJnuEeeCzKHJj7Wq7w" base_BehavioralFeature="_BJOi4JnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Ptr xmi:id="_BKr7cJnuEeeCzKHJj7Wq7w" base_parameter="_BJmWUpnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Ptr xmi:id="_BKr7cpnuEeeCzKHJj7Wq7w" base_parameter="_BJoykZnuEeeCzKHJj7Wq7w"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml
index d0f9461..6f820f1 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/pthread.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
-  <uml:Model xmi:id="_PBK5wOWqEeaYxL1QJO8D3g" name="pthread">
+  <uml:Model xmi:id="_BKK-EZnuEeeCzKHJj7Wq7w" name="pthread">
     <packagedElement xmi:type="uml:Class" xmi:id="_ea234NYGEd-CgJIavLpOxQ" name="pthread_t"/>
     <packagedElement xmi:type="uml:Class" xmi:id="_-vYZoCa0EeazPcQ6-9hBeQ" name="pthread_cond_t"/>
     <packagedElement xmi:type="uml:Class" xmi:id="__niwsCa0EeazPcQ6-9hBeQ" name="pthread_mutex_t"/>
@@ -11,7 +11,7 @@
       <appliedProfile href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
     </profileApplication>
   </uml:Model>
-  <C_Cpp:ExternLibrary xmi:id="_PBK5w-WqEeaYxL1QJO8D3g" base_package="_PBK5wOWqEeaYxL1QJO8D3g">
+  <C_Cpp:ExternLibrary xmi:id="_BKLlIJnuEeeCzKHJj7Wq7w" base_package="_BKK-EZnuEeeCzKHJj7Wq7w">
     <libs>pthread</libs>
     <libs>rt</libs>
     <includes>pthread.h</includes>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml
index 6caee3e..3f902b7 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/statemachine.uml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
-  <uml:Model xmi:id="_PBGBQ-WqEeaYxL1QJO8D3g" name="statemachine">
+  <uml:Model xmi:id="_BKFegZnuEeeCzKHJj7Wq7w" name="statemachine">
     <packagedElement xmi:type="uml:Enumeration" xmi:id="_hNs5oCdSEea6h5xPEh8iAg" name="ThreadFunctions">
       <ownedLiteral xmi:id="_kWR0ICdSEea6h5xPEh8iAg" name="TF_CHANGE_EVENT"/>
       <ownedLiteral xmi:id="_tj4MICdSEea6h5xPEh8iAg" name="TF_TIME_EVENT"/>
@@ -266,21 +266,21 @@
       <appliedProfile href="pathmap://TRAFO_PROFILE/Transformation.profile.uml#_fPDsIBa-EearhdjjJ6cVzQ"/>
     </profileApplication>
   </uml:Model>
-  <C_Cpp:Include xmi:id="_PBGBSeWqEeaYxL1QJO8D3g" header="// common definitions for statemachine&#xA;&#xA;#define TIME_EVENT_LOWER_BOUND (0)&#xA;#define CHANGE_EVENT_LOWER_BOUND (2)&#xA;#define TE_INDEX(id) (id - TIME_EVENT_LOWER_BOUND)&#xA;#define CHE_INDEX(id) (id - CHANGE_EVENT_LOWER_BOUND)&#xA;#define SMSERVER_REGION0_DEFAULT (0)&#xA;#define SMSERVER_REGION0 (0)&#xA;#include &quot;time.h&quot;&#xA;#include &quot;pthread.h&quot;&#xA;#define CHECKPOINT if (systemState == statemachine::EVENT_PROCESSING) {return;}" base_package="_PBGBQ-WqEeaYxL1QJO8D3g"/>
-  <C_Cpp:Ptr xmi:id="_PBNWAOWqEeaYxL1QJO8D3g" base_property="_jliRwCkVEea0-deBroAIbQ"/>
-  <standard:Create xmi:id="_PBOkIuWqEeaYxL1QJO8D3g" base_BehavioralFeature="_ZmpmwCkVEea0-deBroAIbQ"/>
-  <C_Cpp:ConstInit xmi:id="_PBOkI-WqEeaYxL1QJO8D3g" initialisation="ptr(ptr), id(id), enter_mode(enter_mode), func_type(func_type), duration(duration)" base_operation="_ZmpmwCkVEea0-deBroAIbQ"/>
-  <C_Cpp:Ptr xmi:id="_PBPLMOWqEeaYxL1QJO8D3g" base_parameter="_E56cgCkWEea0-deBroAIbQ"/>
-  <standard:Create xmi:id="_PBRAYOWqEeaYxL1QJO8D3g" base_BehavioralFeature="_-pXrgCkVEea0-deBroAIbQ"/>
-  <C_Cpp:Include xmi:id="_PBTcoeWqEeaYxL1QJO8D3g" header="#include &quot;pthread.h&quot;&#xD;&#xA;#include &quot;stdio.h&quot;&#xD;&#xA;#include &quot;string.h&quot;&#xD;&#xA;&#xD;&#xA;#define defSize (10)" base_class="_dWxYQD0zEeaQfbTekb55bw" base_Classifier="_dWxYQD0zEeaQfbTekb55bw"/>
-  <C_Cpp:Include xmi:id="_PBTcpOWqEeaYxL1QJO8D3g" header="#define EVENT_DATA_SIZE (50)" base_class="_MyJIUD0zEeaQfbTekb55bw" base_Classifier="_MyJIUD0zEeaQfbTekb55bw"/>
-  <C_Cpp:Array xmi:id="_PBUqwOWqEeaYxL1QJO8D3g" definition="[EVENT_DATA_SIZE]" base_property="_MyJIUz0zEeaQfbTekb55bw"/>
-  <C_Cpp:Array xmi:id="_PBVR1OWqEeaYxL1QJO8D3g" definition="[10]" base_property="_dWxYQT0zEeaQfbTekb55bw"/>
-  <C_Cpp:Array xmi:id="_PBXHAeWqEeaYxL1QJO8D3g" definition="[4]" base_property="_dWxYST0zEeaQfbTekb55bw"/>
-  <C_Cpp:Array xmi:id="_PBYVIeWqEeaYxL1QJO8D3g" definition="[defSize]" base_property="_dWxYTj0zEeaQfbTekb55bw"/>
-  <standard:Create xmi:id="_PBZjQOWqEeaYxL1QJO8D3g" base_BehavioralFeature="_dWx_XD0zEeaQfbTekb55bw"/>
-  <C_Cpp:ConstInit xmi:id="_PBZjQeWqEeaYxL1QJO8D3g" initialisation="size(10), numberOfElements(0), readPos(0), writePos(0), compSize(4), compNumbers(0), compReadPos(0), compWritePos(0), numberOfDeferreds(0), readDef(0), writeDef(0) " base_operation="_dWx_XD0zEeaQfbTekb55bw"/>
-  <C_Cpp:Ptr xmi:id="_PBZjRuWqEeaYxL1QJO8D3g" base_parameter="_dWx_WD0zEeaQfbTekb55bw"/>
-  <C_Cpp:Ptr xmi:id="_PBaxYuWqEeaYxL1QJO8D3g" base_parameter="_dWx_Uz0zEeaQfbTekb55bw"/>
-  <C_Cpp:Ref xmi:id="_PBbYceWqEeaYxL1QJO8D3g" base_parameter="_dWx_Xz0zEeaQfbTekb55bw"/>
+  <C_Cpp:Include xmi:id="_BKFeh5nuEeeCzKHJj7Wq7w" header="// common definitions for statemachine&#xA;&#xA;#define TIME_EVENT_LOWER_BOUND (0)&#xA;#define CHANGE_EVENT_LOWER_BOUND (2)&#xA;#define TE_INDEX(id) (id - TIME_EVENT_LOWER_BOUND)&#xA;#define CHE_INDEX(id) (id - CHANGE_EVENT_LOWER_BOUND)&#xA;#define SMSERVER_REGION0_DEFAULT (0)&#xA;#define SMSERVER_REGION0 (0)&#xA;#include &quot;time.h&quot;&#xA;#include &quot;pthread.h&quot;&#xA;#define CHECKPOINT if (systemState == statemachine::EVENT_PROCESSING) {return;}" base_package="_BKFegZnuEeeCzKHJj7Wq7w"/>
+  <C_Cpp:Ptr xmi:id="_BKPPgJnuEeeCzKHJj7Wq7w" base_property="_jliRwCkVEea0-deBroAIbQ"/>
+  <standard:Create xmi:id="_BKQdoJnuEeeCzKHJj7Wq7w" base_BehavioralFeature="_ZmpmwCkVEea0-deBroAIbQ"/>
+  <C_Cpp:ConstInit xmi:id="_BKQdoZnuEeeCzKHJj7Wq7w" initialisation="ptr(ptr), id(id), enter_mode(enter_mode), func_type(func_type), duration(duration)" base_operation="_ZmpmwCkVEea0-deBroAIbQ"/>
+  <C_Cpp:Ptr xmi:id="_BKQdopnuEeeCzKHJj7Wq7w" base_parameter="_E56cgCkWEea0-deBroAIbQ"/>
+  <standard:Create xmi:id="_BKSS0ZnuEeeCzKHJj7Wq7w" base_BehavioralFeature="_-pXrgCkVEea0-deBroAIbQ"/>
+  <C_Cpp:Include xmi:id="_BKV9MZnuEeeCzKHJj7Wq7w" header="#include &quot;pthread.h&quot;&#xD;&#xA;#include &quot;stdio.h&quot;&#xD;&#xA;#include &quot;string.h&quot;&#xD;&#xA;&#xD;&#xA;#define defSize (10)" base_class="_dWxYQD0zEeaQfbTekb55bw" base_Classifier="_dWxYQD0zEeaQfbTekb55bw"/>
+  <C_Cpp:Include xmi:id="_BKV9NJnuEeeCzKHJj7Wq7w" header="#define EVENT_DATA_SIZE (50)" base_class="_MyJIUD0zEeaQfbTekb55bw" base_Classifier="_MyJIUD0zEeaQfbTekb55bw"/>
+  <C_Cpp:Array xmi:id="_BKXLU5nuEeeCzKHJj7Wq7w" definition="[EVENT_DATA_SIZE]" base_property="_MyJIUz0zEeaQfbTekb55bw"/>
+  <C_Cpp:Array xmi:id="_BKYZc5nuEeeCzKHJj7Wq7w" definition="[10]" base_property="_dWxYQT0zEeaQfbTekb55bw"/>
+  <C_Cpp:Array xmi:id="_BKZnkpnuEeeCzKHJj7Wq7w" definition="[4]" base_property="_dWxYST0zEeaQfbTekb55bw"/>
+  <C_Cpp:Array xmi:id="_BKa1sJnuEeeCzKHJj7Wq7w" definition="[defSize]" base_property="_dWxYTj0zEeaQfbTekb55bw"/>
+  <standard:Create xmi:id="_BKcq4JnuEeeCzKHJj7Wq7w" base_BehavioralFeature="_dWx_XD0zEeaQfbTekb55bw"/>
+  <C_Cpp:ConstInit xmi:id="_BKcq4ZnuEeeCzKHJj7Wq7w" initialisation="size(10), numberOfElements(0), readPos(0), writePos(0), compSize(4), compNumbers(0), compReadPos(0), compWritePos(0), numberOfDeferreds(0), readDef(0), writeDef(0) " base_operation="_dWx_XD0zEeaQfbTekb55bw"/>
+  <C_Cpp:Ptr xmi:id="_BKdR8pnuEeeCzKHJj7Wq7w" base_parameter="_dWx_WD0zEeaQfbTekb55bw"/>
+  <C_Cpp:Ptr xmi:id="_BKfHIpnuEeeCzKHJj7Wq7w" base_parameter="_dWx_Uz0zEeaQfbTekb55bw"/>
+  <C_Cpp:Ref xmi:id="_BKfuMpnuEeeCzKHJj7Wq7w" base_parameter="_dWx_Xz0zEeaQfbTekb55bw"/>
 </xmi:XMI>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/sysinterfaces.uml b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/sysinterfaces.uml
index 75035fe..41e5268 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/sysinterfaces.uml
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/model/sysinterfaces.uml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_PBFaNeWqEeaYxL1QJO8D3g" name="sysinterfaces">
+<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_BKE3cJnuEeeCzKHJj7Wq7w" name="sysinterfaces">
   <packagedElement xmi:type="uml:Interface" xmi:id="_PTWzwCS-Ed-A_I32T0fkaA" name="IStart">
     <generalization xmi:id="_XpdjECS-Ed-A_I32T0fkaA" general="_BHFPQJsqEd61Eo3nmu3JhQ"/>
   </packagedElement>
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/BootLoader.cpp b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/BootLoader.cpp
index e444fdf..4eb5839 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/BootLoader.cpp
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/BootLoaderCpp/BootLoader.cpp
@@ -43,6 +43,7 @@
  * 
  */
 void BootLoader::init() {
+	mainInstance.run();
 }
 
 } // of namespace BootLoaderCpp
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.cpp b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.cpp
index 93ca1f9..bfbed57 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.cpp
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.cpp
@@ -41,15 +41,12 @@
 		if (currentEvent != NULL) {
 			SIMPLESM_GET_CONTROL
 			switch (currentEvent->eventID) {
-			case TE_VALUE_50_UNIT_MS__ID:
-				processTE_value_50_unit_ms_();
+			case TE_VALUE_250_UNIT_MS__ID:
+				processTE_value_250_unit_ms_();
 				break;
 			case TE_VALUE_500_UNIT_MS__ID:
 				processTE_value_500_unit_ms_();
 				break;
-			case TE_VALUE_25_UNIT_MS__ID:
-				processTE_value_25_unit_ms_();
-				break;
 			case COMPLETIONEVENT_ID:
 				processCompletionEvent();
 				break;
@@ -80,18 +77,6 @@
 
 /**
  * 
- * @param a 
- * @param b 
- * @return res 
- */
-::PrimitiveTypes::Integer SimpleSM::mult(::PrimitiveTypes::Integer /*in*/a,
-		::PrimitiveTypes::Integer /*in*/b) {
-	cout << "a=" << a << " b=" << b << " a*b=" << a * b << endl;
-	return a * b;
-}
-
-/**
- * 
  */
 void SimpleSM::run() {
 	cout << "call add (2, 3);" << endl;
@@ -107,11 +92,9 @@
 void SimpleSM::SMSimple_Region0_Enter(char /*in*/enter_mode) {
 	switch (enter_mode) {
 	case SMSIMPLE_REGION0_DEFAULT:
-		activeStateID = STATE0_ID;
+		activeStateID = FLIP_ID;
 
-		setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID),
-				statemachine::TF_TIME_EVENT, true);
-		setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID),
+		setFlag(SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID),
 				statemachine::TF_TIME_EVENT, true);
 
 		//TODO: set systemState to EVENT_CONSUMED
@@ -131,9 +114,8 @@
  */
 void SimpleSM::startBehavior() {
 	systemState = statemachine::IDLE;
-	doActivityTable[STATE0_ID] = states[STATE0_ID].doActivity;
-	doActivityTable[STATE1_ID] = states[STATE1_ID].doActivity;
-	doActivityTable[STATE2_ID] = states[STATE2_ID].doActivity;
+	doActivityTable[FLIP_ID] = states[FLIP_ID].doActivity;
+	doActivityTable[FLOP_ID] = states[FLOP_ID].doActivity;
 
 	// initialize all threads, the threads wait until the associated flag is set
 	for (int i = 0; i < (int) STATE_MAX; i++) {
@@ -148,13 +130,11 @@
 		}
 	}
 
-	timeEventThreadStructs[SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID)].duration =
-			50;
+	timeEventThreadStructs[SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID)].duration =
+			250;
 	timeEventThreadStructs[SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID)].duration =
 			500;
-	timeEventThreadStructs[SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID)].duration =
-			25;
-	for (int i = SIMPLESM_TIME_EVENT_LOWER_BOUND; i < 3; i++) {
+	for (int i = SIMPLESM_TIME_EVENT_LOWER_BOUND; i < 2; i++) {
 		timeEventThreadStructs[SIMPLESM_TE_INDEX(i)].id = i;
 		timeEventThreadStructs[SIMPLESM_TE_INDEX(i)].ptr = this;
 		timeEventThreadStructs[SIMPLESM_TE_INDEX(i)].func_type =
@@ -184,19 +164,48 @@
 
 /**
  * 
+ * @param a 
+ * @param b 
  */
-void SimpleSM::processTE_value_50_unit_ms_() {
+void SimpleSM::processCE_CServer_impl_add(::PrimitiveTypes::Integer /*in*/a,
+		::PrimitiveTypes::Integer /*in*/b) {
+	SIMPLESM_GET_CONTROL systemState = statemachine::EVENT_PROCESSING;
+	if (systemState == statemachine::EVENT_PROCESSING) {
+		switch (activeStateID) {
+		case FLIP_ID:
+			//from Flip to Flop
+			if (true) {
+				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID),
+						statemachine::TF_TIME_EVENT, false);
+				activeStateID = FLOP_ID;
+				//starting the counters for time events
+				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID),
+						statemachine::TF_TIME_EVENT, true);
+				systemState = statemachine::EVENT_CONSUMED;
+			}
+			break;
+		default:
+			//do nothing
+			break;
+		}
+	}
+	SIMPLESM_RELEASE_CONTROL
+}
+
+/**
+ * 
+ */
+void SimpleSM::processTE_value_250_unit_ms_() {
 	systemState = statemachine::EVENT_PROCESSING;
 	if (systemState == statemachine::EVENT_PROCESSING) {
 		switch (activeStateID) {
-		case STATE0_ID:
-			//from State0 to State1
+		case FLIP_ID:
+			//from Flip to Flop
 			if (true) {
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID),
+				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID),
 						statemachine::TF_TIME_EVENT, false);
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID),
-						statemachine::TF_TIME_EVENT, false);
-				activeStateID = STATE1_ID;
+				std::cout << "From Flip to Flop" << std::endl;
+				activeStateID = FLOP_ID;
 				//starting the counters for time events
 				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID),
 						statemachine::TF_TIME_EVENT, true);
@@ -217,107 +226,15 @@
 	systemState = statemachine::EVENT_PROCESSING;
 	if (systemState == statemachine::EVENT_PROCESSING) {
 		switch (activeStateID) {
-		case STATE1_ID:
-			//from State1 to State0
+		case FLOP_ID:
+			//from Flop to Flip
 			if (true) {
 				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID),
 						statemachine::TF_TIME_EVENT, false);
-				add(2, 3);
-				mult(3, 5);
-				std::cout << "From State1 to State0 \n";
-				activeStateID = STATE0_ID;
+				std::cout << "From Flop to Flip" << std::endl;
+				activeStateID = FLIP_ID;
 				//starting the counters for time events
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID),
-						statemachine::TF_TIME_EVENT, true);
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID),
-						statemachine::TF_TIME_EVENT, true);
-				systemState = statemachine::EVENT_CONSUMED;
-			}
-			break;
-		case STATE2_ID:
-			//from State2 to Junction
-			if (true) {
-				Junction = 0;
-				if (true) {
-					Junction = 1;
-				}
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID),
-						statemachine::TF_TIME_EVENT, false);
-				std::cout << "From State 2 to Junction1\n";
-				if (Junction == 0) {
-					activeStateID = STATE0_ID;
-					//starting the counters for time events
-					setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID),
-							statemachine::TF_TIME_EVENT, true);
-					setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID),
-							statemachine::TF_TIME_EVENT, true);
-				} else if (Junction == 1) {
-					std::cout << "From Junction1 to State 1 \n";
-					activeStateID = STATE1_ID;
-					//starting the counters for time events
-					setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID),
-							statemachine::TF_TIME_EVENT, true);
-				}
-				systemState = statemachine::EVENT_CONSUMED;
-			}
-			break;
-		default:
-			//do nothing
-			break;
-		}
-	}
-}
-
-/**
- * 
- * @param a 
- * @param b 
- */
-void SimpleSM::processCE_CServer_impl_add(::PrimitiveTypes::Integer /*in*/a,
-		::PrimitiveTypes::Integer /*in*/b) {
-	SIMPLESM_GET_CONTROL systemState = statemachine::EVENT_PROCESSING;
-	if (systemState == statemachine::EVENT_PROCESSING) {
-		switch (activeStateID) {
-		case STATE0_ID:
-			//from State0 to State1
-			if (true) {
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID),
-						statemachine::TF_TIME_EVENT, false);
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID),
-						statemachine::TF_TIME_EVENT, false);
-				activeStateID = STATE1_ID;
-				//starting the counters for time events
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID),
-						statemachine::TF_TIME_EVENT, true);
-				systemState = statemachine::EVENT_CONSUMED;
-			}
-			break;
-		default:
-			//do nothing
-			break;
-		}
-	}
-	SIMPLESM_RELEASE_CONTROL
-}
-
-/**
- * 
- */
-void SimpleSM::processTE_value_25_unit_ms_() {
-	systemState = statemachine::EVENT_PROCESSING;
-	if (systemState == statemachine::EVENT_PROCESSING) {
-		switch (activeStateID) {
-		case STATE0_ID:
-			//from State0 to State2
-			if (true) {
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_50_UNIT_MS__ID),
-						statemachine::TF_TIME_EVENT, false);
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_25_UNIT_MS__ID),
-						statemachine::TF_TIME_EVENT, false);
-				std::cout << "From State 0 to State 2\n";
-				activeStateID = STATE2_ID;
-				//starting the counters for time events
-				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_500_UNIT_MS__ID),
+				setFlag(SIMPLESM_TE_INDEX(TE_VALUE_250_UNIT_MS__ID),
 						statemachine::TF_TIME_EVENT, true);
 				systemState = statemachine::EVENT_CONSUMED;
 			}
diff --git a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.h b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.h
index f5e3309..974e396 100644
--- a/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.h
+++ b/transformation/languages/cpp/org.eclipse.papyrus.designer.transformation.languages.cpp.tests/expectedResult/SimpleSM_defaultNode_SimpleSMDepPlan/src-gen/SimpleSM/classes/SimpleSM.h
@@ -17,10 +17,11 @@
 #include "statemachine/EventPriorityQueue.h"
 #include "statemachine/Pkg_statemachine.h"
 #include "statemachine/StructForThread_t.h"
+#include "sysinterfaces/IStart.h"
 
 // Include from Include stereotype (header)
 #define SIMPLESM_TIME_EVENT_LOWER_BOUND (0)
-#define SIMPLESM_CHANGE_EVENT_LOWER_BOUND (3)
+#define SIMPLESM_CHANGE_EVENT_LOWER_BOUND (2)
 #define SIMPLESM_TE_INDEX(id) (id - SIMPLESM_TIME_EVENT_LOWER_BOUND)
 #define SIMPLESM_CHE_INDEX(id) (id - SIMPLESM_CHANGE_EVENT_LOWER_BOUND)
 #define SMSIMPLE_REGION0_DEFAULT (0)
@@ -51,7 +52,7 @@
 /**
  * State-machine support is enabled with a container rule
  */
-class SimpleSM {
+class SimpleSM: public ::sysinterfaces::IStart {
 public:
 	/**
 	 * 
@@ -81,15 +82,11 @@
 		/**
 		 * 
 		 */
-		STATE0_ID,
+		FLIP_ID,
 		/**
 		 * 
 		 */
-		STATE1_ID,
-		/**
-		 * 
-		 */
-		STATE2_ID,
+		FLOP_ID,
 		/**
 		 * 
 		 */
@@ -107,7 +104,7 @@
 		/**
 		 * 
 		 */
-		TE_VALUE_50_UNIT_MS__ID,
+		TE_VALUE_250_UNIT_MS__ID,
 		/**
 		 * 
 		 */
@@ -115,10 +112,6 @@
 		/**
 		 * 
 		 */
-		TE_VALUE_25_UNIT_MS__ID,
-		/**
-		 * 
-		 */
 		CE_CSERVER_IMPL_ADD_ID,
 		/**
 		 * 
@@ -132,11 +125,7 @@
 	/**
 	 * 
 	 */
-	int Junction;
-	/**
-	 * 
-	 */
-	::SimpleSM::classes::SimpleSM::State_t states[3];
+	::SimpleSM::classes::SimpleSM::State_t states[2];
 	/**
 	 * 
 	 */
@@ -172,27 +161,27 @@
 	/**
 	 * 
 	 */
-	::SimpleSM::classes::SimpleSM::FptPointer timeEventTable[3];
+	::SimpleSM::classes::SimpleSM::FptPointer timeEventTable[2];
 	/**
 	 * 
 	 */
-	pthread_t timeEventThreads[3];
+	pthread_t timeEventThreads[2];
 	/**
 	 * 
 	 */
-	bool timeEventFlags[3];
+	bool timeEventFlags[2];
 	/**
 	 * 
 	 */
-	pthread_cond_t timeEventConds[3];
+	pthread_cond_t timeEventConds[2];
 	/**
 	 * 
 	 */
-	pthread_mutex_t timeEventMutexes[3];
+	pthread_mutex_t timeEventMutexes[2];
 	/**
 	 * 
 	 */
-	::statemachine::StructForThread_t timeEventThreadStructs[3];
+	::statemachine::StructForThread_t timeEventThreadStructs[2];
 	/**
 	 * 
 	 */
@@ -234,15 +223,6 @@
 
 	/**
 	 * 
-	 * @param a 
-	 * @param b 
-	 * @return res 
-	 */
-	::PrimitiveTypes::Integer mult(::PrimitiveTypes::Integer /*in*/a,
-			::PrimitiveTypes::Integer /*in*/b);
-
-	/**
-	 * 
 	 */
 	void run();
 
@@ -264,16 +244,6 @@
 
 	/**
 	 * 
-	 */
-	void processTE_value_50_unit_ms_();
-
-	/**
-	 * 
-	 */
-	void processTE_value_500_unit_ms_();
-
-	/**
-	 * 
 	 * @param a 
 	 * @param b 
 	 */
@@ -283,7 +253,12 @@
 	/**
 	 * 
 	 */
-	void processTE_value_25_unit_ms_();
+	void processTE_value_250_unit_ms_();
+
+	/**
+	 * 
+	 */
+	void processTE_value_500_unit_ms_();
 
 	/**
 	 *