diff --git a/build.txt b/build.txt
index 78cc597f0e63edb3fa93d42e136ffcb95d41ca0f..7700898e6388d7acde3abe15d1151a293a1c3083 100644
--- a/build.txt
+++ b/build.txt
@@ -1 +1 @@
-12715
\ No newline at end of file
+12721
\ No newline at end of file
diff --git a/modeling/DIPLODOCUS/802.15.4.xml b/modeling/DIPLODOCUS/802.15.4.xml
index 0038bde72fedf2e7dbfd2b14e0cd380e6784c98b..226880781b10b43cdf3bd5c6120b186aca5bdf23 100644
--- a/modeling/DIPLODOCUS/802.15.4.xml
+++ b/modeling/DIPLODOCUS/802.15.4.xml
@@ -19573,7 +19573,7 @@ SRC to CWM1, CWS and SINK
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="6136" >
+<!-- COMPONENT type="1508" id="6136" >
 <cdparam x="668" y="275" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -19583,7 +19583,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="1" id="6133" />
 <TGConnectingPoint num="2" id="6134" />
 <TGConnectingPoint num="3" id="6135" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1507" id="6138" >
 <cdparam x="465" y="594" />
@@ -19616,7 +19616,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="13" id="6152" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="6158" >
+<!-- COMPONENT type="1508" id="6158" >
 <cdparam x="198" y="272" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -19626,7 +19626,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="1" id="6155" />
 <TGConnectingPoint num="2" id="6156" />
 <TGConnectingPoint num="3" id="6157" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1500" id="6174" >
 <cdparam x="198" y="362" />
@@ -19811,7 +19811,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="9" id="6256" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="6262" >
+<!-- CONNECTOR type="1501" id="6262" >
 <cdparam x="801" y="457" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -19853,7 +19853,7 @@ SRC to CWM1, CWS and SINK
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="6264" >
 <cdparam x="723" y="370" />
@@ -19913,7 +19913,7 @@ SRC to CWM1, CWS and SINK
 <P2  x="425" y="550" id="6139" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="6274" >
+<!-- CONNECTOR type="1501" id="6274" >
 <cdparam x="94" y="485" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -19964,7 +19964,7 @@ SRC to CWM1, CWS and SINK
 <P1  x="213" y="302" id="6157" />
 <P2  x="213" y="352" id="6162" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="6277" >
 <cdparam x="173" y="377" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -20023,7 +20023,7 @@ SRC to CWM1, CWS and SINK
 <P2  x="456" y="117" id="6180" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="6283" >
+<!-- CONNECTOR type="1501" id="6283" >
 <cdparam x="209" y="311" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -20038,7 +20038,7 @@ SRC to CWM1, CWS and SINK
 <P1  x="683" y="221" id="6237" />
 <P2  x="683" y="275" id="6132" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="6285" >
 <cdparam x="683" y="305" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
diff --git a/modeling/DIPLODOCUS/CPlibrary/DMAPollingCycleP_AD.lib b/modeling/DIPLODOCUS/CPlibrary/DMAPollingCycleP_AD.lib
index 6966203d75c84fe7618a16f74165d79d7fb9fe89..0fbe679974464fa81277e9a0a808d7cc492cd758 100644
--- a/modeling/DIPLODOCUS/CPlibrary/DMAPollingCycleP_AD.lib
+++ b/modeling/DIPLODOCUS/CPlibrary/DMAPollingCycleP_AD.lib
@@ -3,7 +3,7 @@
 <TURTLEGSELECTEDCOMPONENTS version="0.96-beta1" copyMaxId="141314" decX="14" decY="10" >
 
 <CommunicationPatternDiagramPanelCopy name="DMAPollingCycleP_AD" xSel="14" ySel="10" widthSel="638" heightSel="382" >
-<CONNECTOR type="1501" id="141311" >
+<!--CONNECTOR type="1501" id="141311" >
 <cdparam x="174" y="274" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -36,9 +36,9 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
-<CONNECTOR type="1501" id="141310" >
+<!--CONNECTOR type="1501" id="141310" >
 <cdparam x="418" y="121" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -56,7 +56,7 @@
 <TGConnectingPoint num="1" id="141307" />
 <TGConnectingPoint num="2" id="141308" />
 <TGConnectingPoint num="3" id="141309" />
-</COMPONENT>
+</COMPONENT-->
 
 <CONNECTOR type="1501" id="141303" >
 <cdparam x="271" y="184" />
@@ -163,14 +163,14 @@
 <TGConnectingPoint num="0" id="141271" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="141299" >
+<!--CONNECTOR type="1501" id="141299" >
 <cdparam x="316" y="90" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
 <P1  x="311" y="40" id="141271" />
 <P2  x="311" y="84" id="141306" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanelCopy>
 
diff --git a/modeling/DIPLODOCUS/CPlibrary/DMATransferCycleP_AD.lib b/modeling/DIPLODOCUS/CPlibrary/DMATransferCycleP_AD.lib
index 4493a4bc5456913dbc9243fef03ef96c43d3e3d5..fbf568870a991552dc6abb09fa3170c9043345cb 100644
--- a/modeling/DIPLODOCUS/CPlibrary/DMATransferCycleP_AD.lib
+++ b/modeling/DIPLODOCUS/CPlibrary/DMATransferCycleP_AD.lib
@@ -29,7 +29,7 @@
 <TGConnectingPoint num="9" id="140366" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="140355" >
+<!-- CONNECTOR type="1501" id="140355" >
 <cdparam x="382" y="90" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -70,7 +70,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="77479" >
 <cdparam x="342" y="324" />
@@ -133,7 +133,7 @@
 <infoparam name="guard 3" value="[ else ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="77451" >
+<!-- COMPONENT type="1508" id="77451" >
 <cdparam x="367" y="229" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -143,7 +143,7 @@
 <TGConnectingPoint num="1" id="77448" />
 <TGConnectingPoint num="2" id="77449" />
 <TGConnectingPoint num="3" id="77450" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1507" id="77464" >
 <cdparam x="372" y="520" />
@@ -189,14 +189,14 @@
 <P2  x="382" y="432" id="140357" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="77487" >
+<!-- CONNECTOR type="1501" id="77487" >
 <cdparam x="382" y="259" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
 <P1  x="382" y="259" id="77450" />
 <P2  x="382" y="299" id="77425" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanelCopy>
 
diff --git a/modeling/DIPLODOCUS/CPlibrary/DMATransfer_NoPolling_MainCP.lib b/modeling/DIPLODOCUS/CPlibrary/DMATransfer_NoPolling_MainCP.lib
index bf31ad61b6aaf64cdc050180c1af107ab89944b5..5cfcc71faafdd6410b9a9493f9bdcbc8df55fe6d 100644
--- a/modeling/DIPLODOCUS/CPlibrary/DMATransfer_NoPolling_MainCP.lib
+++ b/modeling/DIPLODOCUS/CPlibrary/DMATransfer_NoPolling_MainCP.lib
@@ -46,7 +46,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="7701" >
+<!-- CONNECTOR type="1501" id="7701" >
 <cdparam x="282" y="387" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -79,7 +79,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <COMPONENT type="1500" id="7650" >
 <cdparam x="374" y="286" />
@@ -152,7 +152,7 @@
 <TGConnectingPoint num="9" id="7617" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="7623" >
+<!--COMPONENT type="1508" id="7623" >
 <cdparam x="374" y="184" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -162,7 +162,7 @@
 <TGConnectingPoint num="1" id="7620" />
 <TGConnectingPoint num="2" id="7621" />
 <TGConnectingPoint num="3" id="7622" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="7634" >
 <cdparam x="461" y="341" />
@@ -208,7 +208,7 @@
 <P2  x="523" y="411" id="7606" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="7706" >
+<!-- CONNECTOR type="1501" id="7706" >
 <cdparam x="389" y="132" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -223,7 +223,7 @@
 <P1  x="389" y="214" id="7622" />
 <P2  x="389" y="276" id="7638" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="23058" >
 <cdparam x="398" y="55" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
diff --git a/modeling/DIPLODOCUS/CPlibrary/LoadCPU_mainCP.lib b/modeling/DIPLODOCUS/CPlibrary/LoadCPU_mainCP.lib
index 7c0f4dd45a7c58854df703587f7b18edc04889ab..bc850b1a6e0ea30fbf11ed64cba7ccb163e76d68 100644
--- a/modeling/DIPLODOCUS/CPlibrary/LoadCPU_mainCP.lib
+++ b/modeling/DIPLODOCUS/CPlibrary/LoadCPU_mainCP.lib
@@ -64,7 +64,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="9922" >
+<!-- CONNECTOR type="1501" id="9922" >
 <cdparam x="256" y="376" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -109,7 +109,7 @@
 <TGConnectingPoint num="1" id="9898" />
 <TGConnectingPoint num="2" id="9899" />
 <TGConnectingPoint num="3" id="9900" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="9885" >
 <cdparam x="299" y="102" />
@@ -181,7 +181,7 @@
 <P2  x="361" y="97" id="9886" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="9901" >
+<!-- CONNECTOR type="1501" id="9901" >
 <cdparam x="361" y="142" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -196,7 +196,7 @@
 <P1  x="361" y="220" id="9900" />
 <P2  x="361" y="260" id="9903" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanelCopy>
 
diff --git a/modeling/DIPLODOCUS/CPlibrary/StoreCPU_mainCP.lib b/modeling/DIPLODOCUS/CPlibrary/StoreCPU_mainCP.lib
index 740681d07b249f3f03a80504a902cdfc51a94daf..9bfde1ff13b73633a7d8cd83ae3e58173795f1a2 100644
--- a/modeling/DIPLODOCUS/CPlibrary/StoreCPU_mainCP.lib
+++ b/modeling/DIPLODOCUS/CPlibrary/StoreCPU_mainCP.lib
@@ -3,7 +3,7 @@
 <TURTLEGSELECTEDCOMPONENTS version="0.96-beta1" copyMaxId="5622" decX="91" decY="17" >
 
 <CommunicationPatternDiagramPanelCopy name="MainCP" xSel="91" ySel="17" widthSel="426" heightSel="465" >
-<CONNECTOR type="1501" id="5619" >
+<!-- CONNECTOR type="1501" id="5619" >
 <cdparam x="253" y="388" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -36,7 +36,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="5617" >
 <cdparam x="318" y="297" />
@@ -117,7 +117,7 @@
 <TGConnectingPoint num="9" id="1710" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="5593" >
+<!-- COMPONENT type="1508" id="5593" >
 <cdparam x="343" y="202" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -127,7 +127,7 @@
 <TGConnectingPoint num="1" id="5595" />
 <TGConnectingPoint num="2" id="5596" />
 <TGConnectingPoint num="3" id="5597" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="5582" >
 <cdparam x="296" y="114" />
@@ -181,7 +181,7 @@
 <P2  x="358" y="109" id="5583" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="5598" >
+<!-- CONNECTOR type="1501" id="5598" >
 <cdparam x="358" y="154" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -196,7 +196,7 @@
 <P1  x="358" y="232" id="5597" />
 <P2  x="358" y="272" id="5600" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanelCopy>
 
diff --git a/modeling/DIPLODOCUS/MODELS_2014demo.xml b/modeling/DIPLODOCUS/MODELS_2014demo.xml
index 4b23c4ce88af24e7219f74fa9a529ddcfdb89227..7df510c673072fb5e8ac71229d5f6bbc3343fb8c 100644
--- a/modeling/DIPLODOCUS/MODELS_2014demo.xml
+++ b/modeling/DIPLODOCUS/MODELS_2014demo.xml
@@ -20402,7 +20402,7 @@ SRC to CWM1, CWS and SINK
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="6200" >
+<!-- COMPONENT type="1508" id="6200" >
 <cdparam x="668" y="275" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -20412,7 +20412,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="1" id="6197" />
 <TGConnectingPoint num="2" id="6198" />
 <TGConnectingPoint num="3" id="6199" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1507" id="6202" >
 <cdparam x="465" y="594" />
@@ -20445,7 +20445,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="13" id="6216" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="6222" >
+<!-- COMPONENT type="1508" id="6222" >
 <cdparam x="198" y="272" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -20455,7 +20455,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="1" id="6219" />
 <TGConnectingPoint num="2" id="6220" />
 <TGConnectingPoint num="3" id="6221" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1500" id="6238" >
 <cdparam x="198" y="362" />
@@ -20640,7 +20640,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="9" id="6320" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="6326" >
+<!-- CONNECTOR type="1501" id="6326" >
 <cdparam x="801" y="457" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -20682,7 +20682,7 @@ SRC to CWM1, CWS and SINK
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="6328" >
 <cdparam x="723" y="370" />
@@ -20742,7 +20742,7 @@ SRC to CWM1, CWS and SINK
 <P2  x="425" y="550" id="6203" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="6338" >
+<!-- CONNECTOR type="1501" id="6338" >
 <cdparam x="94" y="485" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -20793,7 +20793,7 @@ SRC to CWM1, CWS and SINK
 <P1  x="213" y="302" id="6221" />
 <P2  x="213" y="352" id="6226" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="6341" >
 <cdparam x="173" y="377" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -20852,7 +20852,7 @@ SRC to CWM1, CWS and SINK
 <P2  x="456" y="117" id="6244" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="6347" >
+<!-- CONNECTOR type="1501" id="6347" >
 <cdparam x="209" y="311" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -20875,7 +20875,7 @@ SRC to CWM1, CWS and SINK
 <P1  x="683" y="305" id="6199" />
 <P2  x="683" y="345" id="6183" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
diff --git a/modeling/DIPLODOCUS/MODELS_2014demoFinal.xml b/modeling/DIPLODOCUS/MODELS_2014demoFinal.xml
index 795ad10afb6cb91e4d06062648b1bd9b9da83f81..4f846ab5e2b1601f41715ca41ab9f5cbd3aadf03 100644
--- a/modeling/DIPLODOCUS/MODELS_2014demoFinal.xml
+++ b/modeling/DIPLODOCUS/MODELS_2014demoFinal.xml
@@ -14163,7 +14163,7 @@ SRC to CWM1, CWS and SINK
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="10192" >
+<!-- COMPONENT type="1508" id="10192" >
 <cdparam x="668" y="275" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -14173,7 +14173,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="1" id="10189" />
 <TGConnectingPoint num="2" id="10190" />
 <TGConnectingPoint num="3" id="10191" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1507" id="10194" >
 <cdparam x="465" y="594" />
@@ -14206,7 +14206,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="13" id="10208" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="10214" >
+<!-- COMPONENT type="1508" id="10214" >
 <cdparam x="198" y="272" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -14216,7 +14216,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="1" id="10211" />
 <TGConnectingPoint num="2" id="10212" />
 <TGConnectingPoint num="3" id="10213" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1500" id="10230" >
 <cdparam x="198" y="362" />
@@ -14401,7 +14401,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="9" id="10312" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="10318" >
+<!-- CONNECTOR type="1501" id="10318" >
 <cdparam x="801" y="457" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -14443,7 +14443,7 @@ SRC to CWM1, CWS and SINK
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="10320" >
 <cdparam x="723" y="370" />
@@ -14503,7 +14503,7 @@ SRC to CWM1, CWS and SINK
 <P2  x="425" y="550" id="10195" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="10330" >
+<!-- CONNECTOR type="1501" id="10330" >
 <cdparam x="94" y="485" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -14554,7 +14554,7 @@ SRC to CWM1, CWS and SINK
 <P1  x="213" y="302" id="10213" />
 <P2  x="213" y="352" id="10218" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="10333" >
 <cdparam x="173" y="377" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -14613,7 +14613,7 @@ SRC to CWM1, CWS and SINK
 <P2  x="456" y="117" id="10236" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="10339" >
+<!-- CONNECTOR type="1501" id="10339" >
 <cdparam x="209" y="311" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -14636,7 +14636,7 @@ SRC to CWM1, CWS and SINK
 <P1  x="683" y="305" id="10191" />
 <P2  x="683" y="345" id="10175" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
diff --git a/modeling/DIPLODOCUS/MODELS_2014demoTurin.xml b/modeling/DIPLODOCUS/MODELS_2014demoTurin.xml
index 365870870d48d0496ae67dd4c9ec13b48586f8e3..ee1add4c3f7c6aafd962e9d2da26e869c814d6f3 100644
--- a/modeling/DIPLODOCUS/MODELS_2014demoTurin.xml
+++ b/modeling/DIPLODOCUS/MODELS_2014demoTurin.xml
@@ -4346,7 +4346,7 @@ SRC to CWM1, CWS and SINK
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="1266" >
+<!-- COMPONENT type="1508" id="1266" >
 <cdparam x="668" y="275" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -4356,7 +4356,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="1" id="1263" />
 <TGConnectingPoint num="2" id="1264" />
 <TGConnectingPoint num="3" id="1265" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1507" id="1268" >
 <cdparam x="465" y="594" />
@@ -4389,7 +4389,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="13" id="1282" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="1288" >
+<!-- COMPONENT type="1508" id="1288" >
 <cdparam x="198" y="272" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -4399,7 +4399,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="1" id="1285" />
 <TGConnectingPoint num="2" id="1286" />
 <TGConnectingPoint num="3" id="1287" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1500" id="1304" >
 <cdparam x="198" y="362" />
@@ -4584,7 +4584,7 @@ SRC to CWM1, CWS and SINK
 <TGConnectingPoint num="9" id="1386" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="1392" >
+<!-- CONNECTOR type="1501" id="1392" >
 <cdparam x="801" y="457" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -4626,7 +4626,7 @@ SRC to CWM1, CWS and SINK
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1394" >
 <cdparam x="723" y="370" />
@@ -4686,7 +4686,7 @@ SRC to CWM1, CWS and SINK
 <P2  x="425" y="550" id="1269" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1404" >
+<!-- CONNECTOR type="1501" id="1404" >
 <cdparam x="94" y="485" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -4737,7 +4737,7 @@ SRC to CWM1, CWS and SINK
 <P1  x="213" y="302" id="1287" />
 <P2  x="213" y="352" id="1292" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1407" >
 <cdparam x="173" y="377" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -4796,7 +4796,7 @@ SRC to CWM1, CWS and SINK
 <P2  x="456" y="117" id="1310" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1413" >
+<!-- CONNECTOR type="1501" id="1413" >
 <cdparam x="209" y="311" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -4819,7 +4819,7 @@ SRC to CWM1, CWS and SINK
 <P1  x="683" y="305" id="1265" />
 <P2  x="683" y="345" id="1249" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
diff --git a/modeling/DIPLODOCUS/ZigBeeTutorial.xml b/modeling/DIPLODOCUS/ZigBeeTutorial.xml
index ba2ca48c0ab2e0acce7213fb8039910f21830928..95a32d4a4902d8a4a6d0d4d3e2a76f9e463b7011 100644
--- a/modeling/DIPLODOCUS/ZigBeeTutorial.xml
+++ b/modeling/DIPLODOCUS/ZigBeeTutorial.xml
@@ -6235,7 +6235,7 @@ POLLING
 <TGConnectingPoint num="0" id="2490" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="2496" >
+<!-- COMPONENT type="1508" id="2496" >
 <cdparam x="360" y="163" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -6245,7 +6245,7 @@ POLLING
 <TGConnectingPoint num="1" id="2493" />
 <TGConnectingPoint num="2" id="2494" />
 <TGConnectingPoint num="3" id="2495" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="2507" >
 <cdparam x="182" y="332" />
@@ -6299,7 +6299,7 @@ POLLING
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="2516" >
+<!-- CONNECTOR type="1501" id="2516" >
 <cdparam x="244" y="372" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -6309,7 +6309,8 @@ POLLING
 <Point x="136" y="425" />
 <Point x="136" y="178" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR><SUBCOMPONENT type="-1" id="2513" >
+</CONNECTOR>
+<SUBCOMPONENT type="-1" id="2513" >
 <father id="2516" num="0" />
 <cdparam x="244" y="425" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -6332,7 +6333,7 @@ POLLING
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="2517" >
 <cdparam x="375" y="314" />
@@ -6342,22 +6343,22 @@ POLLING
 <P2  x="375" y="386" id="2463" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="2518" >
+<!-- CONNECTOR type="1501" id="2518" >
 <cdparam x="375" y="193" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
 <P1  x="375" y="193" id="2495" />
 <P2  x="375" y="249" id="2477" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
-<CONNECTOR type="1501" id="2519" >
+</CONNECTOR-->
+<!-- CONNECTOR type="1501" id="2519" >
 <cdparam x="375" y="115" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
 <P1  x="375" y="115" id="2508" />
 <P2  x="375" y="163" id="2492" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -6911,7 +6912,7 @@ POLLING
 <infoparam name="guard 3" value="[ transferTerminated == true ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="2866" >
+<!-- COMPONENT type="1508" id="2866" >
 <cdparam x="279" y="127" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -6921,7 +6922,7 @@ POLLING
 <TGConnectingPoint num="1" id="2863" />
 <TGConnectingPoint num="2" id="2864" />
 <TGConnectingPoint num="3" id="2865" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="2877" >
 <cdparam x="101" y="296" />
@@ -6958,7 +6959,7 @@ POLLING
 <P2  x="294" y="337" id="2844" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="2884" >
+<!-- CONNECTOR type="1501" id="2884" >
 <cdparam x="163" y="336" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -6968,7 +6969,8 @@ POLLING
 <Point x="55" y="389" />
 <Point x="55" y="142" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR><SUBCOMPONENT type="-1" id="2881" >
+</CONNECTOR>
+<SUBCOMPONENT type="-1" id="2881" >
 <father id="2884" num="0" />
 <cdparam x="163" y="389" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -6991,7 +6993,7 @@ POLLING
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="2886" >
 <cdparam x="254" y="238" />
@@ -7010,22 +7012,22 @@ POLLING
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="2887" >
+<!-- CONNECTOR type="1501" id="2887" >
 <cdparam x="294" y="157" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
 <P1  x="294" y="157" id="2865" />
 <P2  x="294" y="213" id="2849" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
-<CONNECTOR type="1501" id="2888" >
+</CONNECTOR-->
+<!-- CONNECTOR type="1501" id="2888" >
 <cdparam x="294" y="79" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
 <P1  x="294" y="79" id="2878" />
 <P2  x="294" y="127" id="2862" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
diff --git a/modeling/DIPLODOCUS/Zigbee.xml b/modeling/DIPLODOCUS/Zigbee.xml
index 88fe2e202264d020644a033ce4d2e3b5512677c0..3077fffb998d8ab9e61e7cac5d28035e5fb9062e 100644
--- a/modeling/DIPLODOCUS/Zigbee.xml
+++ b/modeling/DIPLODOCUS/Zigbee.xml
@@ -4229,7 +4229,7 @@
 <infoparam name="guard 3" value="[ else ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="1323" >
+<!-- COMPONENT type="1508" id="1323" >
 <cdparam x="346" y="190" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -4239,7 +4239,7 @@
 <TGConnectingPoint num="1" id="1320" />
 <TGConnectingPoint num="2" id="1321" />
 <TGConnectingPoint num="3" id="1322" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1334" >
 <cdparam x="305" y="102" />
@@ -4312,7 +4312,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1355" >
+<!-- CONNECTOR type="1501" id="1355" >
 <cdparam x="256" y="376" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -4345,7 +4345,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1356" >
 <cdparam x="361" y="325" />
@@ -4363,7 +4363,7 @@
 <P2  x="361" y="97" id="1324" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1358" >
+<!-- CONNECTOR type="1501" id="1358" >
 <cdparam x="361" y="142" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -4378,7 +4378,7 @@
 <P1  x="361" y="220" id="1322" />
 <P2  x="361" y="260" id="1306" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -4927,7 +4927,7 @@ CPU via interrupts (no polling messages)
 <TGConnectingPoint num="9" id="1718" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="1724" >
+<!-- COMPONENT type="1508" id="1724" >
 <cdparam x="278" y="185" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -4937,7 +4937,7 @@ CPU via interrupts (no polling messages)
 <TGConnectingPoint num="1" id="1721" />
 <TGConnectingPoint num="2" id="1722" />
 <TGConnectingPoint num="3" id="1723" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1735" >
 <cdparam x="371" y="342" />
@@ -5036,7 +5036,7 @@ CPU via interrupts (no polling messages)
 <P2  x="427" y="412" id="1707" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1769" >
+<!-- CONNECTOR type="1501" id="1769" >
 <cdparam x="186" y="388" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -5069,7 +5069,7 @@ CPU via interrupts (no polling messages)
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1771" >
 <cdparam x="253" y="302" />
@@ -5105,7 +5105,7 @@ CPU via interrupts (no polling messages)
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1774" >
+<!-- CONNECTOR type="1501" id="1774" >
 <cdparam x="293" y="133" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -5120,7 +5120,7 @@ CPU via interrupts (no polling messages)
 <P1  x="293" y="215" id="1723" />
 <P2  x="293" y="277" id="1739" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1776" >
 <cdparam x="291" y="25" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -6148,7 +6148,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="2409" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="2415" >
+<!-- COMPONENT type="1508" id="2415" >
 <cdparam x="250" y="191" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -6158,7 +6158,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="2412" />
 <TGConnectingPoint num="2" id="2413" />
 <TGConnectingPoint num="3" id="2414" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="2426" >
 <cdparam x="337" y="348" />
@@ -6239,7 +6239,7 @@ INTERRUPTS
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="2447" >
+<!-- CONNECTOR type="1501" id="2447" >
 <cdparam x="158" y="394" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -6272,7 +6272,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="2448" >
 <cdparam x="399" y="388" />
@@ -6282,7 +6282,7 @@ INTERRUPTS
 <P2  x="399" y="418" id="2398" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="2449" >
+<!-- CONNECTOR type="1501" id="2449" >
 <cdparam x="265" y="139" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -6297,7 +6297,7 @@ INTERRUPTS
 <P1  x="265" y="221" id="2414" />
 <P2  x="265" y="283" id="2385" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="2451" >
 <cdparam x="263" y="31" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -6381,7 +6381,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="2479" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="2485" >
+<!-- COMPONENT type="1508" id="2485" >
 <cdparam x="225" y="195" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -6391,7 +6391,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="2482" />
 <TGConnectingPoint num="2" id="2483" />
 <TGConnectingPoint num="3" id="2484" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="2496" >
 <cdparam x="312" y="352" />
@@ -6438,7 +6438,7 @@ INTERRUPTS
 <TGConnectingPoint num="0" id="2508" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="2513" >
+<!-- CONNECTOR type="1501" id="2513" >
 <cdparam x="133" y="398" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -6471,7 +6471,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="2515" >
 <cdparam x="200" y="312" />
@@ -6515,7 +6515,7 @@ INTERRUPTS
 <P2  x="374" y="422" id="2468" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="2519" >
+<!-- CONNECTOR type="1501" id="2519" >
 <cdparam x="240" y="143" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -6530,7 +6530,7 @@ INTERRUPTS
 <P1  x="240" y="225" id="2484" />
 <P2  x="240" y="287" id="2455" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="2521" >
 <cdparam x="238" y="35" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
diff --git a/modeling/DIPLODOCUS/ZigbeeCommunications.xml b/modeling/DIPLODOCUS/ZigbeeCommunications.xml
index 177315434b2dcc59794a67f95d577ffe3b9fab7d..3812a1b97161e1d86614067e1527b6cfe349d7d1 100644
--- a/modeling/DIPLODOCUS/ZigbeeCommunications.xml
+++ b/modeling/DIPLODOCUS/ZigbeeCommunications.xml
@@ -61,7 +61,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="21" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="27" >
+<!-- COMPONENT type="1508" id="27" >
 <cdparam x="237" y="197" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -71,7 +71,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="24" />
 <TGConnectingPoint num="2" id="25" />
 <TGConnectingPoint num="3" id="26" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="38" >
 <cdparam x="324" y="354" />
@@ -170,7 +170,7 @@ INTERRUPTS
 <P2  x="386" y="424" id="10" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="72" >
+<!-- CONNECTOR type="1501" id="72" >
 <cdparam x="145" y="400" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -203,7 +203,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="74" >
 <cdparam x="212" y="314" />
@@ -247,7 +247,7 @@ INTERRUPTS
 <P2  x="252" y="100" id="55" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="78" >
+<!-- CONNECTOR type="1501" id="78" >
 <cdparam x="252" y="145" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -262,7 +262,7 @@ INTERRUPTS
 <P1  x="252" y="227" id="26" />
 <P2  x="252" y="289" id="42" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -1672,7 +1672,7 @@ POLLING
 <TGConnectingPoint num="0" id="947" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="953" >
+<!-- COMPONENT type="1508" id="953" >
 <cdparam x="360" y="163" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -1682,7 +1682,7 @@ POLLING
 <TGConnectingPoint num="1" id="950" />
 <TGConnectingPoint num="2" id="951" />
 <TGConnectingPoint num="3" id="952" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="964" >
 <cdparam x="182" y="332" />
@@ -1736,7 +1736,7 @@ POLLING
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="973" >
+<!-- CONNECTOR type="1501" id="973" >
 <cdparam x="244" y="372" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -1769,7 +1769,7 @@ POLLING
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="974" >
 <cdparam x="375" y="314" />
@@ -1779,7 +1779,7 @@ POLLING
 <P2  x="375" y="386" id="920" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="975" >
+<!-- CONNECTOR type="1501" id="975" >
 <cdparam x="375" y="193" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -1794,7 +1794,7 @@ POLLING
 <P1  x="375" y="115" id="965" />
 <P2  x="375" y="163" id="949" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -2340,7 +2340,7 @@ POLLING
 <infoparam name="guard 3" value="[ transferTerminated == true ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="1323" >
+<!-- COMPONENT type="1508" id="1323" >
 <cdparam x="279" y="127" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2350,7 +2350,7 @@ POLLING
 <TGConnectingPoint num="1" id="1320" />
 <TGConnectingPoint num="2" id="1321" />
 <TGConnectingPoint num="3" id="1322" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1334" >
 <cdparam x="101" y="296" />
@@ -2387,7 +2387,7 @@ POLLING
 <P2  x="294" y="337" id="1301" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1341" >
+<!-- CONNECTOR type="1501" id="1341" >
 <cdparam x="163" y="336" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -2420,7 +2420,7 @@ POLLING
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1343" >
 <cdparam x="254" y="238" />
@@ -2439,7 +2439,7 @@ POLLING
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1344" >
+<!-- CONNECTOR type="1501" id="1344" >
 <cdparam x="294" y="157" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -2454,7 +2454,7 @@ POLLING
 <P1  x="294" y="79" id="1335" />
 <P2  x="294" y="127" id="1319" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -2734,7 +2734,7 @@ POLLING
 
 <Modeling type="TML CP" nameTab="Load_CPU" >
 <CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="1400" minY="10" maxY="900" >
-<CONNECTOR type="1501" id="3903" >
+<!-- CONNECTOR type="1501" id="3903" >
 <cdparam x="212" y="387" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -2767,7 +2767,7 @@ POLLING
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="3901" >
 <cdparam x="277" y="296" />
@@ -2838,7 +2838,7 @@ POLLING
 <infoparam name="guard 3" value="[ else ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="3877" >
+<!-- COMPONENT type="1508" id="3877" >
 <cdparam x="302" y="201" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2848,7 +2848,7 @@ POLLING
 <TGConnectingPoint num="1" id="3879" />
 <TGConnectingPoint num="2" id="3880" />
 <TGConnectingPoint num="3" id="3881" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="3866" >
 <cdparam x="255" y="113" />
@@ -2936,7 +2936,7 @@ POLLING
 <P2  x="317" y="108" id="3867" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="3882" >
+<!-- CONNECTOR type="1501" id="3882" >
 <cdparam x="317" y="153" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -2951,7 +2951,7 @@ POLLING
 <P1  x="317" y="231" id="3881" />
 <P2  x="317" y="271" id="3884" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -3341,7 +3341,7 @@ POLLING
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="5618" >
+<!-- CONNECTOR type="1501" id="5618" >
 <cdparam x="275" y="449" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -3374,7 +3374,7 @@ POLLING
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <COMPONENT type="301" id="1697" >
 <cdparam x="536" y="48" />
@@ -3418,7 +3418,7 @@ POLLING
 <TGConnectingPoint num="9" id="1709" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="5592" >
+<!-- COMPONENT type="1508" id="5592" >
 <cdparam x="365" y="263" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -3428,7 +3428,7 @@ POLLING
 <TGConnectingPoint num="1" id="5594" />
 <TGConnectingPoint num="2" id="5595" />
 <TGConnectingPoint num="3" id="5596" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="5581" >
 <cdparam x="318" y="175" />
@@ -3482,7 +3482,7 @@ POLLING
 <P2  x="380" y="170" id="5582" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="5597" >
+<!-- CONNECTOR type="1501" id="5597" >
 <cdparam x="380" y="215" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -3497,7 +3497,7 @@ POLLING
 <P1  x="380" y="293" id="5596" />
 <P2  x="380" y="333" id="5599" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -3847,7 +3847,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="1887" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="1893" >
+<!-- COMPONENT type="1508" id="1893" >
 <cdparam x="237" y="197" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -3857,7 +3857,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="1890" />
 <TGConnectingPoint num="2" id="1891" />
 <TGConnectingPoint num="3" id="1892" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1904" >
 <cdparam x="324" y="354" />
@@ -3956,7 +3956,7 @@ INTERRUPTS
 <P2  x="386" y="424" id="1876" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1938" >
+<!-- CONNECTOR type="1501" id="1938" >
 <cdparam x="145" y="400" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -3989,7 +3989,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1940" >
 <cdparam x="212" y="314" />
@@ -4033,7 +4033,7 @@ INTERRUPTS
 <P2  x="252" y="100" id="1921" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1944" >
+<!-- CONNECTOR type="1501" id="1944" >
 <cdparam x="252" y="145" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -4048,7 +4048,7 @@ INTERRUPTS
 <P1  x="252" y="227" id="1892" />
 <P2  x="252" y="289" id="1908" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -4975,7 +4975,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="2553" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="2559" >
+<!-- COMPONENT type="1508" id="2559" >
 <cdparam x="237" y="197" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -4985,7 +4985,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="2556" />
 <TGConnectingPoint num="2" id="2557" />
 <TGConnectingPoint num="3" id="2558" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="2570" >
 <cdparam x="324" y="354" />
@@ -5084,7 +5084,7 @@ INTERRUPTS
 <P2  x="386" y="424" id="2542" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="2604" >
+<!-- CONNECTOR type="1501" id="2604" >
 <cdparam x="145" y="400" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -5117,7 +5117,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="2606" >
 <cdparam x="212" y="314" />
@@ -5161,7 +5161,7 @@ INTERRUPTS
 <P2  x="252" y="100" id="2587" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="2610" >
+<!-- CONNECTOR type="1501" id="2610" >
 <cdparam x="252" y="145" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -5176,7 +5176,7 @@ INTERRUPTS
 <P1  x="252" y="227" id="2558" />
 <P2  x="252" y="289" id="2574" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -6103,7 +6103,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="3219" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="3225" >
+<!-- COMPONENT type="1508" id="3225" >
 <cdparam x="237" y="197" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -6113,7 +6113,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="3222" />
 <TGConnectingPoint num="2" id="3223" />
 <TGConnectingPoint num="3" id="3224" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="3236" >
 <cdparam x="324" y="354" />
@@ -6212,7 +6212,7 @@ INTERRUPTS
 <P2  x="386" y="424" id="3208" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="3270" >
+<!-- CONNECTOR type="1501" id="3270" >
 <cdparam x="145" y="400" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -6245,7 +6245,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="3272" >
 <cdparam x="212" y="314" />
@@ -6289,7 +6289,7 @@ INTERRUPTS
 <P2  x="252" y="100" id="3253" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="3276" >
+<!-- CONNECTOR type="1501" id="3276" >
 <cdparam x="252" y="145" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -6304,7 +6304,7 @@ INTERRUPTS
 <P1  x="252" y="227" id="3224" />
 <P2  x="252" y="289" id="3240" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
diff --git a/modeling/DIPLODOCUS/Zigbee_Andrea.xml b/modeling/DIPLODOCUS/Zigbee_Andrea.xml
index f7134753e75e2b83859356a80847590d66ce26db..e43a72c5a7d0bc2b15296aaea443cf12bafc5add 100644
--- a/modeling/DIPLODOCUS/Zigbee_Andrea.xml
+++ b/modeling/DIPLODOCUS/Zigbee_Andrea.xml
@@ -22104,7 +22104,7 @@ input components per cycle
 <TGConnectingPoint num="9" id="7576" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="7582" >
+<!-- COMPONENT type="1508" id="7582" >
 <cdparam x="343" y="202" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -22114,7 +22114,7 @@ input components per cycle
 <TGConnectingPoint num="1" id="7579" />
 <TGConnectingPoint num="2" id="7580" />
 <TGConnectingPoint num="3" id="7581" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="7593" >
 <cdparam x="296" y="114" />
@@ -22152,7 +22152,7 @@ input components per cycle
 <TGConnectingPoint num="0" id="7596" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="7601" >
+<!-- CONNECTOR type="1501" id="7601" >
 <cdparam x="253" y="388" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -22185,7 +22185,7 @@ input components per cycle
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="7603" >
 <cdparam x="318" y="297" />
@@ -22220,7 +22220,7 @@ input components per cycle
 <P2  x="358" y="109" id="7583" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="7606" >
+<!-- CONNECTOR type="1501" id="7606" >
 <cdparam x="358" y="154" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -22235,7 +22235,7 @@ input components per cycle
 <P1  x="358" y="232" id="7581" />
 <P2  x="358" y="272" id="7554" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -22622,7 +22622,7 @@ input components per cycle
 </extraparam>
 </COMPONENT>
 
-<COMPONENT type="1508" id="7856" >
+<!-- COMPONENT type="1508" id="7856" >
 <cdparam x="346" y="190" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -22632,7 +22632,7 @@ input components per cycle
 <TGConnectingPoint num="1" id="7853" />
 <TGConnectingPoint num="2" id="7854" />
 <TGConnectingPoint num="3" id="7855" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="7867" >
 <cdparam x="299" y="102" />
@@ -22705,7 +22705,7 @@ input components per cycle
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="7888" >
+<!-- CONNECTOR type="1501" id="7888" >
 <cdparam x="256" y="376" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -22738,7 +22738,7 @@ input components per cycle
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="7889" >
 <cdparam x="361" y="325" />
@@ -22756,7 +22756,7 @@ input components per cycle
 <P2  x="361" y="97" id="7857" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="7891" >
+<!-- CONNECTOR type="1501" id="7891" >
 <cdparam x="361" y="142" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -22771,7 +22771,7 @@ input components per cycle
 <P1  x="361" y="220" id="7855" />
 <P2  x="361" y="260" id="7822" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -23247,7 +23247,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="8167" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="8173" >
+<!-- COMPONENT type="1508" id="8173" >
 <cdparam x="281" y="543" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -23257,7 +23257,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="8170" />
 <TGConnectingPoint num="2" id="8171" />
 <TGConnectingPoint num="3" id="8172" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="8184" >
 <cdparam x="368" y="700" />
@@ -23357,7 +23357,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="8221" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="8227" >
+<!-- COMPONENT type="1508" id="8227" >
 <cdparam x="281" y="183" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -23367,7 +23367,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="8224" />
 <TGConnectingPoint num="2" id="8225" />
 <TGConnectingPoint num="3" id="8226" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="8238" >
 <cdparam x="234" y="95" />
@@ -23413,7 +23413,7 @@ INTERRUPTS
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="8246" >
+<!-- CONNECTOR type="1501" id="8246" >
 <cdparam x="191" y="369" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -23446,7 +23446,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="8247" >
 <cdparam x="430" y="740" />
@@ -23456,7 +23456,7 @@ INTERRUPTS
 <P2  x="430" y="770" id="8156" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="8251" >
+<!-- CONNECTOR type="1501" id="8251" >
 <cdparam x="189" y="746" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -23489,7 +23489,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="8253" >
 <cdparam x="256" y="660" />
@@ -23525,7 +23525,7 @@ INTERRUPTS
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="8256" >
+<!-- CONNECTOR type="1501" id="8256" >
 <cdparam x="296" y="491" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -23540,7 +23540,7 @@ INTERRUPTS
 <P1  x="296" y="573" id="8172" />
 <P2  x="296" y="635" id="8188" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="8258" >
 <cdparam x="296" y="318" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -23557,7 +23557,7 @@ INTERRUPTS
 <P2  x="296" y="90" id="8228" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="8260" >
+<!-- CONNECTOR type="1501" id="8260" >
 <cdparam x="296" y="135" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -23572,7 +23572,7 @@ INTERRUPTS
 <P1  x="296" y="213" id="8226" />
 <P2  x="296" y="253" id="8109" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -24871,7 +24871,7 @@ sequence diagram.
 </extraparam>
 </COMPONENT>
 
-<COMPONENT type="1508" id="9105" >
+<!-- COMPONENT type="1508" id="9105" >
 <cdparam x="340" y="217" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -24881,7 +24881,7 @@ sequence diagram.
 <TGConnectingPoint num="1" id="9102" />
 <TGConnectingPoint num="2" id="9103" />
 <TGConnectingPoint num="3" id="9104" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="9116" >
 <cdparam x="293" y="129" />
@@ -24937,7 +24937,7 @@ sequence diagram.
 <TGConnectingPoint num="0" id="9130" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="9135" >
+<!-- CONNECTOR type="1501" id="9135" >
 <cdparam x="250" y="403" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -24970,7 +24970,7 @@ sequence diagram.
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="9137" >
 <cdparam x="315" y="312" />
@@ -25005,7 +25005,7 @@ sequence diagram.
 <P2  x="355" y="124" id="9106" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="9140" >
+<!-- CONNECTOR type="1501" id="9140" >
 <cdparam x="355" y="169" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -25020,7 +25020,7 @@ sequence diagram.
 <P1  x="355" y="247" id="9104" />
 <P2  x="355" y="287" id="9071" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -25540,7 +25540,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="9432" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="9438" >
+<!-- COMPONENT type="1508" id="9438" >
 <cdparam x="329" y="553" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -25550,7 +25550,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="9435" />
 <TGConnectingPoint num="2" id="9436" />
 <TGConnectingPoint num="3" id="9437" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="9449" >
 <cdparam x="416" y="710" />
@@ -25606,7 +25606,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="9470" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="9476" >
+<!-- COMPONENT type="1508" id="9476" >
 <cdparam x="329" y="193" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -25616,7 +25616,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="9473" />
 <TGConnectingPoint num="2" id="9474" />
 <TGConnectingPoint num="3" id="9475" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="9487" >
 <cdparam x="282" y="105" />
@@ -25679,7 +25679,7 @@ INTERRUPTS
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="9497" >
+<!-- CONNECTOR type="1501" id="9497" >
 <cdparam x="237" y="756" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -25747,7 +25747,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="9503" >
 <cdparam x="304" y="288" />
@@ -25774,7 +25774,7 @@ INTERRUPTS
 <P2  x="478" y="780" id="9421" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="9505" >
+<!-- CONNECTOR type="1501" id="9505" >
 <cdparam x="344" y="501" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -25789,7 +25789,7 @@ INTERRUPTS
 <P1  x="344" y="583" id="9437" />
 <P2  x="344" y="645" id="9358" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="9507" >
 <cdparam x="344" y="328" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -25806,7 +25806,7 @@ INTERRUPTS
 <P2  x="344" y="100" id="9477" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="9509" >
+<!-- CONNECTOR type="1501" id="9509" >
 <cdparam x="344" y="145" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -25821,7 +25821,7 @@ INTERRUPTS
 <P1  x="344" y="223" id="9475" />
 <P2  x="344" y="263" id="9374" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -27120,7 +27120,7 @@ sequence diagram.
 </extraparam>
 </COMPONENT>
 
-<COMPONENT type="1508" id="10354" >
+<!-- COMPONENT type="1508" id="10354" >
 <cdparam x="351" y="210" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -27130,7 +27130,7 @@ sequence diagram.
 <TGConnectingPoint num="1" id="10351" />
 <TGConnectingPoint num="2" id="10352" />
 <TGConnectingPoint num="3" id="10353" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="10365" >
 <cdparam x="304" y="122" />
@@ -27186,7 +27186,7 @@ sequence diagram.
 <TGConnectingPoint num="0" id="10379" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="10384" >
+<!-- CONNECTOR type="1501" id="10384" >
 <cdparam x="261" y="396" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -27219,7 +27219,7 @@ sequence diagram.
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="10386" >
 <cdparam x="326" y="305" />
@@ -27254,7 +27254,7 @@ sequence diagram.
 <P2  x="366" y="117" id="10355" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="10389" >
+<!-- CONNECTOR type="1501" id="10389" >
 <cdparam x="366" y="162" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -27269,7 +27269,7 @@ sequence diagram.
 <P1  x="366" y="240" id="10353" />
 <P2  x="366" y="280" id="10320" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -27696,7 +27696,7 @@ sequence diagram.
 <TGConnectingPoint num="9" id="10646" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="10652" >
+<!-- COMPONENT type="1508" id="10652" >
 <cdparam x="262" y="196" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -27706,7 +27706,7 @@ sequence diagram.
 <TGConnectingPoint num="1" id="10649" />
 <TGConnectingPoint num="2" id="10650" />
 <TGConnectingPoint num="3" id="10651" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="10663" >
 <cdparam x="215" y="108" />
@@ -27761,7 +27761,7 @@ sequence diagram.
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="10673" >
+<!-- CONNECTOR type="1501" id="10673" >
 <cdparam x="172" y="382" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -27794,7 +27794,7 @@ sequence diagram.
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="10674" >
 <cdparam x="277" y="331" />
@@ -27812,7 +27812,7 @@ sequence diagram.
 <P2  x="277" y="103" id="10653" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="10676" >
+<!--  CONNECTOR type="1501" id="10676" >
 <cdparam x="277" y="148" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -27827,7 +27827,7 @@ sequence diagram.
 <P1  x="277" y="226" id="10651" />
 <P2  x="277" y="266" id="10607" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -28214,7 +28214,7 @@ sequence diagram.
 </extraparam>
 </COMPONENT>
 
-<COMPONENT type="1508" id="10926" >
+<!-- COMPONENT type="1508" id="10926" >
 <cdparam x="260" y="183" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -28224,7 +28224,7 @@ sequence diagram.
 <TGConnectingPoint num="1" id="10923" />
 <TGConnectingPoint num="2" id="10924" />
 <TGConnectingPoint num="3" id="10925" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="10937" >
 <cdparam x="213" y="95" />
@@ -28280,7 +28280,7 @@ sequence diagram.
 <TGConnectingPoint num="0" id="10951" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="10956" >
+<!-- CONNECTOR type="1501" id="10956" >
 <cdparam x="170" y="369" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -28313,7 +28313,7 @@ sequence diagram.
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="10958" >
 <cdparam x="235" y="278" />
@@ -28348,7 +28348,7 @@ sequence diagram.
 <P2  x="275" y="90" id="10927" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="10961" >
+<!-- CONNECTOR type="1501" id="10961" >
 <cdparam x="275" y="135" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -28363,7 +28363,7 @@ sequence diagram.
 <P1  x="275" y="213" id="10925" />
 <P2  x="275" y="253" id="10892" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -28772,7 +28772,7 @@ sequence diagram.
 </extraparam>
 </COMPONENT>
 
-<COMPONENT type="1508" id="11213" >
+<!-- COMPONENT type="1508" id="11213" >
 <cdparam x="405" y="249" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -28782,7 +28782,7 @@ sequence diagram.
 <TGConnectingPoint num="1" id="11210" />
 <TGConnectingPoint num="2" id="11211" />
 <TGConnectingPoint num="3" id="11212" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="11224" >
 <cdparam x="358" y="161" />
@@ -28838,7 +28838,7 @@ sequence diagram.
 <TGConnectingPoint num="0" id="11238" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="11243" >
+<!-- CONNECTOR type="1501" id="11243" >
 <cdparam x="315" y="435" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -28871,7 +28871,7 @@ sequence diagram.
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="11245" >
 <cdparam x="380" y="344" />
@@ -28906,7 +28906,7 @@ sequence diagram.
 <P2  x="420" y="156" id="11214" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="11248" >
+<!-- CONNECTOR type="1501" id="11248" >
 <cdparam x="420" y="201" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -28921,7 +28921,7 @@ sequence diagram.
 <P1  x="420" y="279" id="11212" />
 <P2  x="420" y="319" id="11179" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -29348,7 +29348,7 @@ sequence diagram.
 <TGConnectingPoint num="9" id="11505" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="11511" >
+<!-- COMPONENT type="1508" id="11511" >
 <cdparam x="260" y="198" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -29358,7 +29358,7 @@ sequence diagram.
 <TGConnectingPoint num="1" id="11508" />
 <TGConnectingPoint num="2" id="11509" />
 <TGConnectingPoint num="3" id="11510" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="11522" >
 <cdparam x="213" y="110" />
@@ -29413,7 +29413,7 @@ sequence diagram.
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="11532" >
+<!-- CONNECTOR type="1501" id="11532" >
 <cdparam x="170" y="384" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -29446,7 +29446,7 @@ sequence diagram.
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="11533" >
 <cdparam x="275" y="333" />
@@ -29464,7 +29464,7 @@ sequence diagram.
 <P2  x="275" y="105" id="11512" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="11535" >
+<!-- CONNECTOR type="1501" id="11535" >
 <cdparam x="275" y="150" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -29479,7 +29479,7 @@ sequence diagram.
 <P1  x="275" y="228" id="11510" />
 <P2  x="275" y="268" id="11466" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -29884,7 +29884,7 @@ sequence diagram.
 <TGConnectingPoint num="9" id="11790" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="11796" >
+<!-- COMPONENT type="1508" id="11796" >
 <cdparam x="267" y="201" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -29894,7 +29894,7 @@ sequence diagram.
 <TGConnectingPoint num="1" id="11793" />
 <TGConnectingPoint num="2" id="11794" />
 <TGConnectingPoint num="3" id="11795" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="11807" >
 <cdparam x="220" y="113" />
@@ -29949,7 +29949,7 @@ sequence diagram.
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="11817" >
+<!-- CONNECTOR type="1501" id="11817" >
 <cdparam x="177" y="387" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -29982,7 +29982,7 @@ sequence diagram.
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="11818" >
 <cdparam x="282" y="336" />
@@ -30000,7 +30000,7 @@ sequence diagram.
 <P2  x="282" y="108" id="11797" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="11820" >
+<!-- CONNECTOR type="1501" id="11820" >
 <cdparam x="282" y="153" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -30015,7 +30015,7 @@ sequence diagram.
 <P1  x="282" y="231" id="11795" />
 <P2  x="282" y="271" id="11751" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -30515,7 +30515,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="12110" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="12116" >
+<!-- COMPONENT type="1508" id="12116" >
 <cdparam x="319" y="222" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -30525,7 +30525,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="12113" />
 <TGConnectingPoint num="2" id="12114" />
 <TGConnectingPoint num="3" id="12115" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="12127" >
 <cdparam x="406" y="379" />
@@ -30563,7 +30563,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="12137" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="12143" >
+<!-- COMPONENT type="1508" id="12143" >
 <cdparam x="453" y="543" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -30573,7 +30573,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="12140" />
 <TGConnectingPoint num="2" id="12141" />
 <TGConnectingPoint num="3" id="12142" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="12154" >
 <cdparam x="406" y="459" />
@@ -30620,7 +30620,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="12166" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="12171" >
+<!-- CONNECTOR type="1501" id="12171" >
 <cdparam x="363" y="729" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -30653,7 +30653,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="12173" >
 <cdparam x="428" y="638" />
@@ -30672,7 +30672,7 @@ INTERRUPTS
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="12177" >
+<!-- CONNECTOR type="1501" id="12177" >
 <cdparam x="227" y="425" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -30705,7 +30705,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="12179" >
 <cdparam x="294" y="339" />
@@ -30749,7 +30749,7 @@ INTERRUPTS
 <P2  x="468" y="454" id="12144" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="12183" >
+<!-- CONNECTOR type="1501" id="12183" >
 <cdparam x="334" y="170" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -30764,7 +30764,7 @@ INTERRUPTS
 <P1  x="334" y="252" id="12115" />
 <P2  x="334" y="314" id="12052" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="12185" >
 <cdparam x="343" y="93" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -30781,7 +30781,7 @@ INTERRUPTS
 <P2  x="468" y="771" id="12155" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="12187" >
+<!-- CONNECTOR type="1501" id="12187" >
 <cdparam x="552" y="464" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -30796,7 +30796,7 @@ INTERRUPTS
 <P1  x="468" y="573" id="12142" />
 <P2  x="468" y="613" id="12036" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -32277,7 +32277,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="13092" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="13098" >
+<!-- COMPONENT type="1508" id="13098" >
 <cdparam x="272" y="204" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -32287,7 +32287,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="13095" />
 <TGConnectingPoint num="2" id="13096" />
 <TGConnectingPoint num="3" id="13097" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="13109" >
 <cdparam x="225" y="116" />
@@ -32342,7 +32342,7 @@ INTERRUPTS
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="13119" >
+<!-- CONNECTOR type="1501" id="13119" >
 <cdparam x="182" y="390" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -32375,7 +32375,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="13120" >
 <cdparam x="287" y="339" />
@@ -32393,7 +32393,7 @@ INTERRUPTS
 <P2  x="287" y="111" id="13099" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="13122" >
+<!-- CONNECTOR type="1501" id="13122" >
 <cdparam x="287" y="156" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -32408,7 +32408,7 @@ INTERRUPTS
 <P1  x="287" y="234" id="13097" />
 <P2  x="287" y="274" id="13070" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -32779,7 +32779,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="13360" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="13366" >
+<!-- COMPONENT type="1508" id="13366" >
 <cdparam x="268" y="197" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -32789,7 +32789,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="13363" />
 <TGConnectingPoint num="2" id="13364" />
 <TGConnectingPoint num="3" id="13365" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="13377" >
 <cdparam x="221" y="109" />
@@ -32844,7 +32844,7 @@ INTERRUPTS
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="13387" >
+<!-- CONNECTOR type="1501" id="13387" >
 <cdparam x="178" y="383" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -32877,7 +32877,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="13388" >
 <cdparam x="283" y="332" />
@@ -32895,7 +32895,7 @@ INTERRUPTS
 <P2  x="283" y="104" id="13367" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="13390" >
+<!-- CONNECTOR type="1501" id="13390" >
 <cdparam x="283" y="149" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -32910,7 +32910,7 @@ INTERRUPTS
 <P1  x="283" y="227" id="13365" />
 <P2  x="283" y="267" id="13338" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -33263,7 +33263,7 @@ INTERRUPTS
 <infoparam name="guard 3" value="[ else ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="13623" >
+<!-- COMPONENT type="1508" id="13623" >
 <cdparam x="260" y="185" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -33273,7 +33273,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="13620" />
 <TGConnectingPoint num="2" id="13621" />
 <TGConnectingPoint num="3" id="13622" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="13634" >
 <cdparam x="213" y="97" />
@@ -33329,7 +33329,7 @@ INTERRUPTS
 <TGConnectingPoint num="0" id="13648" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="13653" >
+<!-- CONNECTOR type="1501" id="13653" >
 <cdparam x="170" y="371" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -33362,7 +33362,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="13655" >
 <cdparam x="235" y="280" />
@@ -33397,7 +33397,7 @@ INTERRUPTS
 <P2  x="275" y="92" id="13624" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="13658" >
+<!-- CONNECTOR type="1501" id="13658" >
 <cdparam x="275" y="137" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -33412,7 +33412,7 @@ INTERRUPTS
 <P1  x="275" y="215" id="13622" />
 <P2  x="275" y="255" id="13606" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
@@ -33823,7 +33823,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="13902" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="13908" >
+<!-- COMPONENT type="1508" id="13908" >
 <cdparam x="272" y="176" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -33833,7 +33833,7 @@ INTERRUPTS
 <TGConnectingPoint num="1" id="13905" />
 <TGConnectingPoint num="2" id="13906" />
 <TGConnectingPoint num="3" id="13907" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="13919" >
 <cdparam x="359" y="333" />
@@ -33871,7 +33871,7 @@ INTERRUPTS
 <TGConnectingPoint num="9" id="13929" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="13934" >
+<!-- CONNECTOR type="1501" id="13934" >
 <cdparam x="180" y="379" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -33904,7 +33904,7 @@ INTERRUPTS
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="13936" >
 <cdparam x="247" y="293" />
@@ -33948,7 +33948,7 @@ INTERRUPTS
 <P2  x="421" y="403" id="13891" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="13940" >
+<!-- CONNECTOR type="1501" id="13940" >
 <cdparam x="287" y="124" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -33963,7 +33963,7 @@ INTERRUPTS
 <P1  x="287" y="206" id="13907" />
 <P2  x="287" y="268" id="13876" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="13942" >
 <cdparam x="296" y="47" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
diff --git a/modeling/modelsForTestingTTool/testCP.xml b/modeling/modelsForTestingTTool/testCP.xml
index 6708dbc59e11af7fc5362d1436b3a2838e676520..0a7b71ff2f5e7a746f91a01f7d3b457bfe55f60e 100644
--- a/modeling/modelsForTestingTTool/testCP.xml
+++ b/modeling/modelsForTestingTTool/testCP.xml
@@ -1955,7 +1955,7 @@
 <TGConnectingPoint num="9" id="1158" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="1164" >
+<!-- COMPONENT type="1508" id="1164" >
 <cdparam x="304" y="202" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -1965,7 +1965,7 @@
 <TGConnectingPoint num="1" id="1161" />
 <TGConnectingPoint num="2" id="1162" />
 <TGConnectingPoint num="3" id="1163" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1175" >
 <cdparam x="122" y="359" />
@@ -2092,7 +2092,7 @@
 <TGConnectingPoint num="9" id="1225" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="1230" >
+<!-- CONNECTOR type="1501" id="1230" >
 <cdparam x="466" y="506" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from Zama to junction1" value="null" />
@@ -2125,7 +2125,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1231" >
 <cdparam x="178" y="475" />
@@ -2193,7 +2193,7 @@
 <P2  x="319" y="91" id="1203" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1239" >
+<!-- CONNECTOR type="1501" id="1239" >
 <cdparam x="319" y="136" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from lala to junction1" value="null" />
@@ -2208,7 +2208,7 @@
 <P1  x="319" y="232" id="1163" />
 <P2  x="319" y="288" id="1190" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1241" >
 <cdparam x="319" y="488" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -2290,7 +2290,7 @@
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="1266" >
+<!-- COMPONENT type="1508" id="1266" >
 <cdparam x="755" y="345" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2300,7 +2300,7 @@
 <TGConnectingPoint num="1" id="1263" />
 <TGConnectingPoint num="2" id="1264" />
 <TGConnectingPoint num="3" id="1265" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1277" >
 <cdparam x="884" y="503" />
@@ -2378,7 +2378,7 @@
 <TGConnectingPoint num="13" id="1313" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="1319" >
+<!-- COMPONENT type="1508" id="1319" >
 <cdparam x="298" y="342" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2388,7 +2388,7 @@
 <TGConnectingPoint num="1" id="1316" />
 <TGConnectingPoint num="2" id="1317" />
 <TGConnectingPoint num="3" id="1318" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1500" id="1335" >
 <cdparam x="298" y="429" />
@@ -2569,7 +2569,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1395" >
+<!-- CONNECTOR type="1501" id="1395" >
 <cdparam x="946" y="543" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ExecuteTransfer2 to junction5" value="null" />
@@ -2602,7 +2602,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1397" >
 <cdparam x="810" y="452" />
@@ -2621,7 +2621,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1398" >
+<!-- CONNECTOR type="1501" id="1398" >
 <cdparam x="770" y="375" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from junction5 to choice5" value="null" />
@@ -2670,7 +2670,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1405" >
 <cdparam x="273" y="444" />
@@ -2689,7 +2689,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1406" >
+<!-- CONNECTOR type="1501" id="1406" >
 <cdparam x="313" y="372" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from junction2 to choice2" value="null" />
@@ -2704,7 +2704,7 @@
 <P1  x="313" y="294" id="1376" />
 <P2  x="313" y="342" id="1315" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1408" >
 <cdparam x="556" y="182" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -2830,7 +2830,7 @@
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="1456" >
+<!-- COMPONENT type="1508" id="1456" >
 <cdparam x="797" y="201" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2840,7 +2840,7 @@
 <TGConnectingPoint num="1" id="1453" />
 <TGConnectingPoint num="2" id="1454" />
 <TGConnectingPoint num="3" id="1455" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1467" >
 <cdparam x="756" y="89" />
@@ -2940,7 +2940,7 @@
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="1510" >
+<!-- COMPONENT type="1508" id="1510" >
 <cdparam x="315" y="188" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2950,7 +2950,7 @@
 <TGConnectingPoint num="1" id="1507" />
 <TGConnectingPoint num="2" id="1508" />
 <TGConnectingPoint num="3" id="1509" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1521" >
 <cdparam x="274" y="91" />
@@ -2979,7 +2979,7 @@
 <TGConnectingPoint num="0" id="1522" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="1527" >
+<!-- CONNECTOR type="1501" id="1527" >
 <cdparam x="205" y="382" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ExecuteTransfer3 to junction6" value="null" />
@@ -3012,7 +3012,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1529" >
 <cdparam x="290" y="291" />
@@ -3092,14 +3092,14 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1537" >
+<!-- CONNECTOR type="1501" id="1537" >
 <cdparam x="330" y="131" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ProgramTransfer3 to junction6" value="null" />
 <P1  x="330" y="131" id="1512" />
 <P2  x="330" y="188" id="1506" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1538" >
 <cdparam x="330" y="45" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -3108,7 +3108,7 @@
 <P2  x="330" y="86" id="1511" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1542" >
+<!-- CONNECTOR type="1501" id="1542" >
 <cdparam x="979" y="404" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ExecuteTransfer4 to junction7" value="null" />
@@ -3141,7 +3141,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1544" >
 <cdparam x="852" y="300" />
@@ -3177,7 +3177,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1547" >
+<!-- CONNECTOR type="1501" id="1547" >
 <cdparam x="812" y="231" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from junction7 to choice7" value="null" />
@@ -3192,7 +3192,7 @@
 <P1  x="812" y="129" id="1458" />
 <P2  x="812" y="201" id="1452" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1549" >
 <cdparam x="702" y="402" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -3201,14 +3201,14 @@
 <P2  x="702" y="444" id="1412" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1550" >
+<!-- CONNECTOR type="1501" id="1550" >
 <cdparam x="330" y="218" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from junction6 to choice6" value="null" />
 <P1  x="330" y="218" id="1509" />
 <P2  x="330" y="266" id="1493" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
diff --git a/modeling/modelsForTestingTTool/testCP2.xml b/modeling/modelsForTestingTTool/testCP2.xml
index 6bda7a93bfdb78ed625cb2ee83577f6ce1bf2bd1..6dac72745dfdbfa089ef9cc0fa322b2f8ae843ed 100644
--- a/modeling/modelsForTestingTTool/testCP2.xml
+++ b/modeling/modelsForTestingTTool/testCP2.xml
@@ -1953,7 +1953,7 @@
 <TGConnectingPoint num="9" id="1135" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="1141" >
+<!-- COMPONENT type="1508" id="1141" >
 <cdparam x="304" y="202" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -1963,7 +1963,7 @@
 <TGConnectingPoint num="1" id="1138" />
 <TGConnectingPoint num="2" id="1139" />
 <TGConnectingPoint num="3" id="1140" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1152" >
 <cdparam x="122" y="359" />
@@ -2090,7 +2090,7 @@
 <TGConnectingPoint num="9" id="1202" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="1207" >
+<!-- CONNECTOR type="1501" id="1207" >
 <cdparam x="466" y="506" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from Zama to junction1" value="null" />
@@ -2123,7 +2123,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1208" >
 <cdparam x="178" y="475" />
@@ -2191,7 +2191,7 @@
 <P2  x="319" y="91" id="1180" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1216" >
+<!-- CONNECTOR type="1501" id="1216" >
 <cdparam x="319" y="136" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from lala to junction1" value="null" />
@@ -2206,7 +2206,7 @@
 <P1  x="319" y="232" id="1140" />
 <P2  x="319" y="288" id="1167" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1218" >
 <cdparam x="319" y="488" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -2288,7 +2288,7 @@
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="1243" >
+<!-- COMPONENT type="1508" id="1243" >
 <cdparam x="755" y="345" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2298,7 +2298,7 @@
 <TGConnectingPoint num="1" id="1240" />
 <TGConnectingPoint num="2" id="1241" />
 <TGConnectingPoint num="3" id="1242" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1254" >
 <cdparam x="890" y="503" />
@@ -2376,7 +2376,7 @@
 <TGConnectingPoint num="13" id="1290" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="1296" >
+<!-- COMPONENT type="1508" id="1296" >
 <cdparam x="298" y="342" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2386,7 +2386,7 @@
 <TGConnectingPoint num="1" id="1293" />
 <TGConnectingPoint num="2" id="1294" />
 <TGConnectingPoint num="3" id="1295" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1500" id="1312" >
 <cdparam x="298" y="429" />
@@ -2567,7 +2567,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1372" >
+<!-- CONNECTOR type="1501" id="1372" >
 <cdparam x="946" y="543" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ExecuteTransfer2 to junction5" value="null" />
@@ -2600,7 +2600,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1374" >
 <cdparam x="810" y="452" />
@@ -2619,7 +2619,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1375" >
+<!-- CONNECTOR type="1501" id="1375" >
 <cdparam x="770" y="375" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from junction5 to choice5" value="null" />
@@ -2668,7 +2668,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1382" >
 <cdparam x="273" y="444" />
@@ -2687,7 +2687,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1383" >
+<!-- CONNECTOR type="1501" id="1383" >
 <cdparam x="313" y="372" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from junction2 to choice2" value="null" />
@@ -2702,7 +2702,7 @@
 <P1  x="313" y="294" id="1353" />
 <P2  x="313" y="342" id="1292" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1385" >
 <cdparam x="556" y="182" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -2828,7 +2828,7 @@
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="1433" >
+<!-- COMPONENT type="1508" id="1433" >
 <cdparam x="797" y="201" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2838,7 +2838,7 @@
 <TGConnectingPoint num="1" id="1430" />
 <TGConnectingPoint num="2" id="1431" />
 <TGConnectingPoint num="3" id="1432" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1444" >
 <cdparam x="756" y="89" />
@@ -2938,7 +2938,7 @@
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="1487" >
+<!-- COMPONENT type="1508" id="1487" >
 <cdparam x="315" y="188" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -2948,7 +2948,7 @@
 <TGConnectingPoint num="1" id="1484" />
 <TGConnectingPoint num="2" id="1485" />
 <TGConnectingPoint num="3" id="1486" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="1498" >
 <cdparam x="274" y="91" />
@@ -2977,7 +2977,7 @@
 <TGConnectingPoint num="0" id="1499" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="1504" >
+<!-- CONNECTOR type="1501" id="1504" >
 <cdparam x="205" y="382" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ExecuteTransfer3 to junction6" value="null" />
@@ -3010,7 +3010,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1506" >
 <cdparam x="290" y="291" />
@@ -3090,14 +3090,14 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1514" >
+<!-- CONNECTOR type="1501" id="1514" >
 <cdparam x="330" y="131" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ProgramTransfer3 to junction6" value="null" />
 <P1  x="330" y="131" id="1489" />
 <P2  x="330" y="188" id="1483" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1515" >
 <cdparam x="330" y="45" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -3106,7 +3106,7 @@
 <P2  x="330" y="86" id="1488" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1519" >
+<!-- CONNECTOR type="1501" id="1519" >
 <cdparam x="979" y="404" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ExecuteTransfer4 to junction7" value="null" />
@@ -3139,7 +3139,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="1521" >
 <cdparam x="852" y="300" />
@@ -3175,7 +3175,7 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="1524" >
+<!-- CONNECTOR type="1501" id="1524" >
 <cdparam x="812" y="231" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from junction7 to choice7" value="null" />
@@ -3190,7 +3190,7 @@
 <P1  x="812" y="129" id="1435" />
 <P2  x="812" y="201" id="1429" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="1526" >
 <cdparam x="702" y="402" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -3199,14 +3199,14 @@
 <P2  x="702" y="444" id="1389" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="1527" >
+<!-- CONNECTOR type="1501" id="1527" >
 <cdparam x="330" y="218" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from junction6 to choice6" value="null" />
 <P1  x="330" y="218" id="1486" />
 <P2  x="330" y="266" id="1470" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
diff --git a/modeling/modelsForTestingTTool/testCP3.xml b/modeling/modelsForTestingTTool/testCP3.xml
index 457d7b6261bc484a5f5a86184074ce766e4351e6..d37993f618e37bf518de55a88b1f2535f6b1068c 100644
--- a/modeling/modelsForTestingTTool/testCP3.xml
+++ b/modeling/modelsForTestingTTool/testCP3.xml
@@ -928,7 +928,7 @@
 <TGConnectingPoint num="9" id="386" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="392" >
+<!-- COMPONENT type="1508" id="392" >
 <cdparam x="302" y="198" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -938,7 +938,7 @@
 <TGConnectingPoint num="1" id="389" />
 <TGConnectingPoint num="2" id="390" />
 <TGConnectingPoint num="3" id="391" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="403" >
 <cdparam x="114" y="497" />
@@ -1065,14 +1065,14 @@
 <TGConnectingPoint num="9" id="453" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="455" >
+<!-- CONNECTOR type="1501" id="455" >
 <cdparam x="319" y="232" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
 <P1  x="317" y="228" id="391" />
 <P2  x="317" y="252" id="340" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="456" >
 <cdparam x="160" y="280" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -1081,7 +1081,7 @@
 <P2  x="317" y="426" id="418" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="460" >
+<!-- CONNECTOR type="1501" id="460" >
 <cdparam x="466" y="506" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from Zama to junction1" value="null" />
@@ -1114,7 +1114,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="461" >
 <cdparam x="176" y="613" />
@@ -1182,14 +1182,14 @@
 <P2  x="317" y="87" id="431" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="469" >
+<!-- CONNECTOR type="1501" id="469" >
 <cdparam x="317" y="132" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from lala to junction1" value="null" />
 <P1  x="317" y="132" id="432" />
 <P2  x="317" y="198" id="388" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="470" >
 <cdparam x="317" y="626" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -1323,7 +1323,7 @@
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="518" >
+<!-- COMPONENT type="1508" id="518" >
 <cdparam x="797" y="201" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -1333,7 +1333,7 @@
 <TGConnectingPoint num="1" id="515" />
 <TGConnectingPoint num="2" id="516" />
 <TGConnectingPoint num="3" id="517" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="529" >
 <cdparam x="750" y="89" />
@@ -1433,7 +1433,7 @@
 <infoparam name="guard 3" value="[ ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="572" >
+<!-- COMPONENT type="1508" id="572" >
 <cdparam x="315" y="188" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -1443,7 +1443,7 @@
 <TGConnectingPoint num="1" id="569" />
 <TGConnectingPoint num="2" id="570" />
 <TGConnectingPoint num="3" id="571" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="583" >
 <cdparam x="268" y="91" />
@@ -1472,7 +1472,7 @@
 <TGConnectingPoint num="0" id="584" />
 </COMPONENT>
 
-<CONNECTOR type="1501" id="589" >
+<!-- CONNECTOR type="1501" id="589" >
 <cdparam x="979" y="404" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector" value="null" />
@@ -1505,9 +1505,9 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
-<CONNECTOR type="1501" id="593" >
+<!-- CONNECTOR type="1501" id="593" >
 <cdparam x="205" y="382" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ExecuteTransfer3 to junction6" value="null" />
@@ -1540,7 +1540,7 @@
 <hidden value="false" />
 <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
 <infoparam name="point " value="null" />
-</SUBCOMPONENT>
+</SUBCOMPONENT-->
 
 <CONNECTOR type="1501" id="595" >
 <cdparam x="290" y="291" />
@@ -1620,14 +1620,14 @@
 <infoparam name="point " value="null" />
 </SUBCOMPONENT>
 
-<CONNECTOR type="1501" id="603" >
+<!-- CONNECTOR type="1501" id="603" >
 <cdparam x="330" y="131" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ProgramTransfer3 to junction6" value="null" />
 <P1  x="330" y="131" id="574" />
 <P2  x="330" y="188" id="568" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="604" >
 <cdparam x="330" y="45" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -1678,14 +1678,14 @@
 <P2  x="812" y="275" id="501" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="610" >
+<!-- CONNECTOR type="1501" id="610" >
 <cdparam x="812" y="129" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from ProgramTransfer4 to junction7" value="null" />
 <P1  x="812" y="129" id="520" />
 <P2  x="812" y="201" id="514" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 <CONNECTOR type="1501" id="611" >
 <cdparam x="702" y="402" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
@@ -1694,14 +1694,14 @@
 <P2  x="702" y="444" id="474" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
-<CONNECTOR type="1501" id="612" >
+<!-- CONNECTOR type="1501" id="612" >
 <cdparam x="330" y="218" />
 <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <infoparam name="connector from junction6 to choice6" value="null" />
 <P1  x="330" y="218" id="571" />
 <P2  x="330" y="266" id="555" />
 <AutomaticDrawing  data="true" />
-</CONNECTOR>
+</CONNECTOR-->
 
 </CommunicationPatternDiagramPanel>
 
diff --git a/src/main/java/avatartranslator/AvatarState.java b/src/main/java/avatartranslator/AvatarState.java
index 3dc8238c19c2d8dc7fa70564dbf8f0ae84d412c2..13702fb6ca968e817b732758f73aada713c91fa2 100644
--- a/src/main/java/avatartranslator/AvatarState.java
+++ b/src/main/java/avatartranslator/AvatarState.java
@@ -89,7 +89,6 @@ public class AvatarState extends AvatarStateElement {
         checkLatency = b;
     }
 
-
     public int hasEmptyTransitionsOnItself(AvatarStateMachine _asm) {
         AvatarTransition at;
         int cpt = 0;
diff --git a/src/main/java/ui/AbstractCDElement.java b/src/main/java/ui/AbstractCDElement.java
new file mode 100644
index 0000000000000000000000000000000000000000..afd37aeedc40af60a30811e394202b36c919fa2e
--- /dev/null
+++ b/src/main/java/ui/AbstractCDElement.java
@@ -0,0 +1,79 @@
+package ui;
+
+public abstract class AbstractCDElement implements CDElement {
+	
+	private boolean enabled;
+	
+	protected AbstractCDElement() {
+		enabled = true;
+	}
+    
+    /**
+     * Issue #69
+     * @param _enabled
+     */
+    @Override
+    public void setEnabled( final boolean _enabled ) {
+    	doSetEnabled( _enabled );
+    }
+    
+    /**
+     * Issue #69
+     * @param _enabled
+     */
+    @Override
+    public void doSetEnabled( final boolean _enabled ) {
+    	enabled = _enabled;
+    }
+
+    @Override
+    public boolean isEnabled() {
+        return enabled;
+    }
+
+    @Override
+    public boolean isEnabled( boolean checkBranch ) {
+        return isEnabled();
+    }
+
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	return false;
+    }
+
+    	/**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canLabelBeDisabled( TGCOneLineText label ) {
+    	return false;
+    }
+    
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.CDElement#acceptForward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptForward( final ICDElementVisitor visitor ) {
+		visitor.visit( this );
+    }
+    
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptBackward( final ICDElementVisitor visitor ) {
+		visitor.visit( this );
+    }
+//    
+//    @Override
+//    public boolean isFullDisabler() {
+//    	return false;
+//    }
+}
diff --git a/src/main/java/ui/ActionPerformer.java b/src/main/java/ui/ActionPerformer.java
index e5ace4879d4f47b74d379b37d23cca72133bfead..69831a95f2182b484e4e973f383a503c54c50c57 100644
--- a/src/main/java/ui/ActionPerformer.java
+++ b/src/main/java/ui/ActionPerformer.java
@@ -367,8 +367,8 @@ public class ActionPerformer {
             mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_RECEIVE_SIGNAL);
         } else if (command.equals(mgui.actions[TGUIAction.ASMD_LIBRARY_FUNCTION_CALL].getActionCommand())) {
             mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_LIBRARY_FUNCTION_CALL);
-        } else if (command.equals(mgui.actions[TGUIAction.ASMD_PARALLEL].getActionCommand())) {
-            mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_PARALLEL);
+// Issue #69       } else if (command.equals(mgui.actions[TGUIAction.ASMD_PARALLEL].getActionCommand())) {
+//            mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_PARALLEL);
         } else if (command.equals(mgui.actions[TGUIAction.ASMD_STATE].getActionCommand())) {
             mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_STATE);
         } else if (command.equals(mgui.actions[TGUIAction.ASMD_CHOICE].getActionCommand())) {
diff --git a/src/main/java/ui/ActivityDiagram2TMLTranslator.java b/src/main/java/ui/ActivityDiagram2TMLTranslator.java
new file mode 100644
index 0000000000000000000000000000000000000000..73dacbb477b7a2d03b8c797a0703b7dc2daffb8c
--- /dev/null
+++ b/src/main/java/ui/ActivityDiagram2TMLTranslator.java
@@ -0,0 +1,965 @@
+package ui;
+
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.Vector;
+
+import myutil.Conversion;
+import myutil.TraceManager;
+import tmltranslator.SecurityPattern;
+import tmltranslator.TMLActionState;
+import tmltranslator.TMLActivity;
+import tmltranslator.TMLActivityElement;
+import tmltranslator.TMLAttribute;
+import tmltranslator.TMLChannel;
+import tmltranslator.TMLCheckingError;
+import tmltranslator.TMLChoice;
+import tmltranslator.TMLDelay;
+import tmltranslator.TMLEvent;
+import tmltranslator.TMLExecC;
+import tmltranslator.TMLExecCInterval;
+import tmltranslator.TMLExecI;
+import tmltranslator.TMLExecIInterval;
+import tmltranslator.TMLForLoop;
+import tmltranslator.TMLJunction;
+import tmltranslator.TMLModeling;
+import tmltranslator.TMLNotifiedEvent;
+import tmltranslator.TMLRandom;
+import tmltranslator.TMLRandomSequence;
+import tmltranslator.TMLReadChannel;
+import tmltranslator.TMLRequest;
+import tmltranslator.TMLSelectEvt;
+import tmltranslator.TMLSendEvent;
+import tmltranslator.TMLSendRequest;
+import tmltranslator.TMLSequence;
+import tmltranslator.TMLStartState;
+import tmltranslator.TMLStopState;
+import tmltranslator.TMLTask;
+import tmltranslator.TMLType;
+import tmltranslator.TMLWaitEvent;
+import tmltranslator.TMLWriteChannel;
+import translator.CheckingError;
+import ui.tmlad.TMLADActionState;
+import ui.tmlad.TMLADChoice;
+import ui.tmlad.TMLADDecrypt;
+import ui.tmlad.TMLADDelay;
+import ui.tmlad.TMLADDelayInterval;
+import ui.tmlad.TMLADEncrypt;
+import ui.tmlad.TMLADExecC;
+import ui.tmlad.TMLADExecCInterval;
+import ui.tmlad.TMLADExecI;
+import ui.tmlad.TMLADExecIInterval;
+import ui.tmlad.TMLADForEverLoop;
+import ui.tmlad.TMLADForLoop;
+import ui.tmlad.TMLADForStaticLoop;
+import ui.tmlad.TMLADNotifiedEvent;
+import ui.tmlad.TMLADRandom;
+import ui.tmlad.TMLADReadChannel;
+import ui.tmlad.TMLADReadRequestArg;
+import ui.tmlad.TMLADSelectEvt;
+import ui.tmlad.TMLADSendEvent;
+import ui.tmlad.TMLADSendRequest;
+import ui.tmlad.TMLADSequence;
+import ui.tmlad.TMLADStartState;
+import ui.tmlad.TMLADStopState;
+import ui.tmlad.TMLADUnorderedSequence;
+import ui.tmlad.TMLADWaitEvent;
+import ui.tmlad.TMLADWriteChannel;
+import ui.tmlad.TMLActivityDiagramPanel;
+
+public class ActivityDiagram2TMLTranslator {
+	
+	public static final ActivityDiagram2TMLTranslator INSTANCE = new ActivityDiagram2TMLTranslator();
+	
+	private ActivityDiagram2TMLTranslator() {
+	}
+    
+	public void generateTaskActivityDiagrams(	final TMLTask tmltask,
+									    		final List<CheckingError> checkingErrors,
+												final List<CheckingError> warnings,
+												final CorrespondanceTGElement corrTgElement,
+												final TMLModeling<TGComponent> tmlm,
+												final Map<String, SecurityPattern> securityPatterns,
+												final Map<String, String> table,
+												final List<String> removedChannels,
+												final List<String> removedEvents,
+												final List<String> removedRequests )
+	throws MalformedTMLDesignException {
+        TMLActivity activity = tmltask.getActivityDiagram();
+        TMLActivityDiagramPanel tadp = (TMLActivityDiagramPanel)(activity.getReferenceObject());
+
+        TraceManager.addDev( "Generating activity diagram of: " + tmltask.getName());
+
+        // search for start state
+        List<TGComponent> list = tadp.getComponentList();
+        Iterator<TGComponent> iterator = list.listIterator();
+        TGComponent tgc;
+        TMLADStartState tss = null;
+        int cptStart = 0;
+        //    boolean rndAdded = false;
+
+        while(iterator.hasNext()) {
+            tgc = iterator.next();
+
+            if (tgc instanceof TMLADStartState) {
+                tss = (TMLADStartState) tgc;
+                cptStart ++;
+            }
+        }
+
+        if (tss == null) {
+            TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "No start state in the TML activity diagram of " + tmltask.getName());
+            ce.setTMLTask(tmltask);
+            checkingErrors.add(ce);
+            return;
+        }
+
+        if (cptStart > 1) {
+            TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in the TML activity diagram of " + tmltask.getName());
+            ce.setTMLTask(tmltask);
+            checkingErrors.add(ce);
+            return;
+        }
+
+        // Adding start state
+        TMLStartState tmlss = new TMLStartState("start", tss);
+        corrTgElement.addCor(tmlss, tss);
+        activity.setFirst(tmlss);
+
+        // Creation of other elements
+        TMLChannel channel;
+        String [] channels;
+        TMLEvent event;
+        TMLRequest request;
+
+        TMLADRandom tmladrandom;
+        TMLRandom tmlrandom;
+        TMLActionState tmlaction;
+        TMLChoice tmlchoice;
+        TMLExecI tmlexeci;
+        TMLExecIInterval tmlexecii;
+        TMLExecC tmlexecc;
+        TMLExecCInterval tmlexecci;
+        TMLForLoop tmlforloop;
+        TMLReadChannel tmlreadchannel;
+        TMLSendEvent tmlsendevent;
+        TMLSendRequest tmlsendrequest;
+        TMLStopState tmlstopstate;
+        TMLWaitEvent tmlwaitevent;
+        TMLNotifiedEvent tmlnotifiedevent;
+        TMLWriteChannel tmlwritechannel;
+        TMLSequence tmlsequence;
+        TMLRandomSequence tmlrsequence;
+        TMLSelectEvt tmlselectevt;
+        TMLDelay tmldelay;
+        int staticLoopIndex = 0;
+        String sl = "", tmp;
+        TMLType tt;
+        TMLAttribute tmlt;
+
+        iterator = list.listIterator();
+        while(iterator.hasNext()) {
+            tgc = iterator.next();
+            // Issue #69: Manage component enablement
+            if ( tgc.isEnabled() ) {
+		        if (tgc.getCheckLatency()){
+		            String name = tmltask.getName() + ":" +  tgc.getName();
+		            name = name.replaceAll(" ","");
+		            //TraceManager.addDev("To check " + name);
+	                if (tgc.getValue().contains("(")) {
+	                    tmlm.addCheckedActivity(tgc, name + ":" + tgc.getValue().split("\\(")[0]);
+	                } else {
+	                    if (tgc instanceof TMLADExecI) {
+	                        tmlm.addCheckedActivity(tgc, ((TMLADExecI) tgc).getDelayValue());
+	                    }
+	                }
+		        }
+		        if (tgc instanceof TMLADActionState) {
+		            tmlaction = new TMLActionState("action", tgc);
+		            tmp = ((TMLADActionState)(tgc)).getAction();
+		            tmp = modifyActionString(tmp);
+		            tmlaction.setAction(tmp);
+		            activity.addElement(tmlaction);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlaction, tgc);
+		
+		        } else if (tgc instanceof TMLADRandom) {
+		            tmladrandom = (TMLADRandom)tgc;
+		            tmlrandom = new TMLRandom("random" + tmladrandom.getValue(), tgc);
+		            tmp = tmladrandom.getVariable();
+		            tmp = modifyActionString(tmp);
+		            tmlrandom.setVariable(tmp);
+		            tmp = tmladrandom.getMinValue();
+		            tmp = modifyActionString(tmp);
+		            tmlrandom.setMinValue(tmp);
+		            tmp = tmladrandom.getMaxValue();
+		            tmp = modifyActionString(tmp);
+		            tmlrandom.setMaxValue(tmp);
+		            tmlrandom.setFunctionId(tmladrandom.getFunctionId());
+		            activity.addElement(tmlrandom);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlrandom, tgc);
+		
+		        } else if (tgc instanceof TMLADChoice) {
+		            tmlchoice = new TMLChoice("choice", tgc);
+		            // Guards are added at the same time as next activities
+		            activity.addElement(tmlchoice);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlchoice, tgc);
+		
+		        } else if (tgc instanceof TMLADSelectEvt) {
+		            tmlselectevt = new TMLSelectEvt("select", tgc);
+		            activity.addElement(tmlselectevt);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlselectevt, tgc);
+		
+		        } else if (tgc instanceof TMLADExecI) {
+		            tmlexeci = new TMLExecI("execi", tgc);
+		            tmlexeci.setAction(modifyString(((TMLADExecI)tgc).getDelayValue()));
+		            tmlexeci.setValue(((TMLADExecI)tgc).getDelayValue());
+		            activity.addElement(tmlexeci);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlexeci, tgc);
+		
+		        } else if (tgc instanceof TMLADExecIInterval) {
+		            tmlexecii = new TMLExecIInterval("execi", tgc);
+		            tmlexecii.setValue(tgc.getValue());
+		            tmlexecii.setMinDelay(modifyString(((TMLADExecIInterval)tgc).getMinDelayValue()));
+		            tmlexecii.setMaxDelay(modifyString(((TMLADExecIInterval)tgc).getMaxDelayValue()));
+		            activity.addElement(tmlexecii);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlexecii, tgc);
+		
+		        } else if (tgc instanceof TMLADEncrypt) {
+		            tmlexecc = new TMLExecC("encrypt_"+((TMLADEncrypt)tgc).securityContext, tgc);
+		            activity.addElement(tmlexecc);
+		            SecurityPattern sp = securityPatterns.get(((TMLADEncrypt)tgc).securityContext);
+		            if (sp ==null){
+		                //Throw error for missing security pattern
+		                UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADEncrypt)tgc).securityContext + " not found");
+		                ce.setTDiagramPanel(tadp);
+		                ce.setTGComponent(tgc);
+		                checkingErrors.add(ce);
+		            }
+		            else {
+		                tmlexecc.securityPattern = sp;
+		                tmlexecc.setAction(Integer.toString(sp.encTime));
+		                ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		                tmlm.securityTaskMap.get(sp).add(tmltask);
+		                corrTgElement.addCor(tmlexecc, tgc);
+		            }
+		        } else if (tgc instanceof TMLADDecrypt) {
+		            tmlexecc = new TMLExecC("decrypt_"+((TMLADDecrypt)tgc).securityContext, tgc);
+		            activity.addElement(tmlexecc);
+		            SecurityPattern sp = securityPatterns.get(((TMLADDecrypt)tgc).securityContext);
+		            if (sp ==null){
+		                //Throw error for missing security pattern
+		                UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADDecrypt)tgc).securityContext + " not found");
+		                ce.setTDiagramPanel(tadp);
+		                ce.setTGComponent(tgc);
+		                checkingErrors.add(ce);
+		            }
+		            else {
+		                tmlexecc.securityPattern = sp;
+		                tmlexecc.setAction(Integer.toString(sp.decTime));
+		                ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		                corrTgElement.addCor(tmlexecc, tgc);
+		                tmlm.securityTaskMap.get(sp).add(tmltask);
+		            }
+		
+		        } else if (tgc instanceof TMLADExecC) {
+		            tmlexecc = new TMLExecC("execc", tgc);
+		            tmlexecc.setValue(((TMLADExecC)tgc).getDelayValue());
+		            tmlexecc.setAction(modifyString(((TMLADExecC)tgc).getDelayValue()));
+		            activity.addElement(tmlexecc);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlexecc, tgc);
+		
+		        } else if (tgc instanceof TMLADExecCInterval) {
+		            tmlexecci = new TMLExecCInterval("execci", tgc);
+		            tmlexecci.setMinDelay(modifyString(((TMLADExecCInterval)tgc).getMinDelayValue()));
+		            tmlexecci.setMaxDelay(modifyString(((TMLADExecCInterval)tgc).getMaxDelayValue()));
+		            activity.addElement(tmlexecci);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlexecci, tgc);
+		
+		        } else if (tgc instanceof TMLADDelay) {
+		            tmldelay = new TMLDelay("d-delay", tgc);
+		            tmldelay.setMinDelay(modifyString(((TMLADDelay)tgc).getDelayValue()));
+		            tmldelay.setMaxDelay(modifyString(((TMLADDelay)tgc).getDelayValue()));
+		            tmldelay.setUnit(((TMLADDelay)tgc).getUnit());
+		            activity.addElement(tmldelay);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmldelay, tgc);
+		
+		        } else if (tgc instanceof TMLADDelayInterval) {
+		            tmldelay = new TMLDelay("nd-delay", tgc);
+		            tmldelay.setMinDelay(modifyString(((TMLADDelayInterval)tgc).getMinDelayValue()));
+		            tmldelay.setMaxDelay(modifyString(((TMLADDelayInterval)tgc).getMaxDelayValue()));
+		            tmldelay.setUnit(((TMLADDelayInterval)tgc).getUnit());
+		            activity.addElement(tmldelay);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmldelay, tgc);
+		
+		        } else if (tgc instanceof TMLADForLoop) {
+		            tmlforloop = new TMLForLoop("loop", tgc);
+		            tmlforloop.setInit(modifyString(((TMLADForLoop)tgc).getInit()));
+		            tmp = ((TMLADForLoop)tgc).getCondition();
+		            /*if (tmp.trim().length() == 0) {
+		              tmp = "true";
+		              }*/
+		            tmlforloop.setCondition(modifyString(tmp));
+		            tmlforloop.setIncrement(modifyActionString(((TMLADForLoop)tgc).getIncrement()));
+		
+		            activity.addElement(tmlforloop);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlforloop, tgc);
+		
+		        } else if (tgc instanceof TMLADForStaticLoop) {
+		            sl = "loop__" + staticLoopIndex;
+		            tt = new TMLType(TMLType.NATURAL);
+		            tmlt = new TMLAttribute(sl, tt);
+		            tmlt.initialValue = "0";
+		            tmltask.addAttribute(tmlt);
+		            tmlforloop = new TMLForLoop(sl, tgc);
+		            tmlforloop.setInit(sl + " = 0");
+		            tmlforloop.setCondition(sl + "<" + modifyString(tgc.getValue()));
+		            tmlforloop.setIncrement(sl + " = " + sl + " + 1");
+		            activity.addElement(tmlforloop);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlforloop, tgc);
+		            staticLoopIndex++;
+		
+		        } else if (tgc instanceof TMLADForEverLoop) {
+		            /*sl = "loop__" + staticLoopIndex;
+		              tt = new TMLType(TMLType.NATURAL);
+		              tmlt = new TMLAttribute(sl, tt);
+		              tmlt.initialValue = "0";
+		              tmltask.addAttribute(tmlt);*/
+		            tmlforloop = new TMLForLoop("infiniteloop", tgc);
+		            tmlforloop.setInit("");
+		            tmlforloop.setCondition("");
+		            tmlforloop.setIncrement("");
+		            tmlforloop.setInfinite(true);
+		            activity.addElement(tmlforloop);
+		            ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		            corrTgElement.addCor(tmlforloop, tgc);
+		            staticLoopIndex++;
+		
+		            tmlstopstate = new TMLStopState("Stop after infinite loop", null);
+		            activity.addElement(tmlstopstate);
+		            tmlforloop.addNext(tmlstopstate);
+		
+		        } else if (tgc instanceof TMLADSequence) {
+		            tmlsequence = new TMLSequence("seq", tgc);
+		            activity.addElement(tmlsequence);
+		            corrTgElement.addCor(tmlsequence, tgc);
+		
+		        } else if (tgc instanceof TMLADUnorderedSequence) {
+		            tmlrsequence = new TMLRandomSequence("rseq", tgc);
+		            activity.addElement(tmlrsequence);
+		            corrTgElement.addCor(tmlrsequence, tgc);
+		
+		        } else if (tgc instanceof TMLADReadChannel) {
+		            // Get the channel
+					//TMLADReadChannel rd = (TMLADReadChannel) tgc;
+		            channel = tmlm.getChannelByName( getFromTable( tmltask, ((TMLADReadChannel)tgc).getChannelName(), table ) );
+					/*if (rd.isAttacker()){
+						channel = tmlm.getChannelByName(getAttackerChannel(((TMLADReadChannel)tgc).getChannelName()));
+					}*/
+		            if (channel == null) {
+		                if (Conversion.containsStringInList(removedChannels, ((TMLADReadChannel)tgc).getChannelName())) {
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADReadChannel)tgc).getChannelName() + " has been removed because the corresponding channel is not taken into account");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    warnings.add(ce);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                    activity.addElement(new TMLJunction("void junction", tgc));
+		                } else {
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADReadChannel)tgc).getChannelName() + " is an unknown channel");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                    checkingErrors.add(ce);
+		                }
+		
+		            } else {
+		                tmlreadchannel = new TMLReadChannel("read channel", tgc);
+		                tmlreadchannel.setNbOfSamples(modifyString(((TMLADReadChannel)tgc).getSamplesValue()));
+	                    tmlreadchannel.setEncForm(((TMLADReadChannel) tgc).getEncForm());               
+		                tmlreadchannel.addChannel(channel);
+		                //security pattern
+		                if (securityPatterns.get(((TMLADReadChannel)tgc).getSecurityContext())!=null){
+		                    tmlreadchannel.securityPattern= securityPatterns.get(((TMLADReadChannel)tgc).getSecurityContext());
+		                    //NbOfSamples will increase due to extra overhead from MAC
+		                    int cur=1;
+		                    try {
+		                        cur = Integer.valueOf(modifyString(((TMLADReadChannel)tgc).getSamplesValue()));
+		                    } catch(NumberFormatException e) {
+		                    } catch(NullPointerException e) {
+		                    }
+		                    int add = Integer.valueOf(tmlreadchannel.securityPattern.overhead);
+		                    if (!tmlreadchannel.securityPattern.nonce.equals("")){
+		                        SecurityPattern nonce = securityPatterns.get(tmlreadchannel.securityPattern.nonce);
+		                        if (nonce!=null){
+		                            add = Integer.valueOf(nonce.overhead);
+		                        }
+		                    }
+		                    cur = cur+ add;
+		                    tmlreadchannel.setNbOfSamples(Integer.toString(cur));
+		                }
+		                else if (!((TMLADReadChannel)tgc).getSecurityContext().isEmpty()){
+		                    //Throw error for missing security pattern
+		                    UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADReadChannel)tgc).getSecurityContext() + " not found");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    checkingErrors.add(ce);
+		                }
+						if (tmltask.isAttacker()){
+							tmlreadchannel.setAttacker(true);						
+						}
+		                activity.addElement(tmlreadchannel);
+		                ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		                corrTgElement.addCor(tmlreadchannel, tgc);
+					}
+		        } else if (tgc instanceof TMLADSendEvent) {
+		            event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADSendEvent)tgc).getEventName(), table ));
+		            if (event == null) {
+		                if (Conversion.containsStringInList(removedEvents, ((TMLADSendEvent)tgc).getEventName())) {
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendEvent)tgc).getEventName() + " has been removed because the corresponding event is not taken into account");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    warnings.add(ce);
+		                    activity.addElement(new TMLJunction("void junction", tgc));
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                } else {
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent)tgc).getEventName() + " is an unknown event");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    checkingErrors.add(ce);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                }
+		            } else {
+		                tmlsendevent = new TMLSendEvent("send event", tgc);
+		                tmlsendevent.setEvent(event);
+		
+		                for(int i=0; i<((TMLADSendEvent)tgc).realNbOfParams(); i++) {
+		                    tmp = modifyString(((TMLADSendEvent)tgc).getRealParamValue(i));
+		                    Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
+		                    if (allVariables.size() > 0) {
+		                        for(int k=0; k<allVariables.size(); k++) {
+		                            //TraceManager.addDev("Adding record: " + allVariables.get(k));
+		                            tmlsendevent.addParam(allVariables.get(k));
+		                        }
+		                    } else {
+		                        //TraceManager.addDev("Adding param: " + tmp);
+		                        tmlsendevent.addParam(tmp);
+		                    }
+		                }
+		                if (event.getNbOfParams() != tmlsendevent.getNbOfParams()) {
+		                    TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " sendevent#:" + tmlsendevent.getNbOfParams());
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent)tgc).getEventName() + ": wrong number of parameters");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    checkingErrors.add(ce);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                } else {
+		                    activity.addElement(tmlsendevent);
+		                    corrTgElement.addCor(tmlsendevent, tgc);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		                }
+		            }
+		
+		        } else if (tgc instanceof TMLADSendRequest) {
+		            request = tmlm.getRequestByName(getFromTable(tmltask, ((TMLADSendRequest)tgc).getRequestName(), table ) );
+		            if (request == null) {
+		                if (Conversion.containsStringInList(removedRequests, ((TMLADSendRequest)tgc).getRequestName())) {
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendRequest)tgc).getRequestName() + " has been removed because the corresponding request is not taken into account");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    warnings.add(ce);
+		                    activity.addElement(new TMLJunction("void junction", tgc));
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                } else {
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest)tgc).getRequestName() + " is an unknown request");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    checkingErrors.add(ce);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                }
+		            } else {
+		                tmlsendrequest = new TMLSendRequest("send request", tgc);
+		                tmlsendrequest.setRequest(request);
+		                for(int i=0; i<((TMLADSendRequest)tgc).realNbOfParams(); i++) {
+		                    tmp = modifyString(((TMLADSendRequest)tgc).getRealParamValue(i));
+		                    Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
+		                    if (allVariables.size() > 0) {
+		                        for(int k=0; k<allVariables.size(); k++) {
+		                            //TraceManager.addDev("Adding record: " + allVariables.get(k));
+		                            tmlsendrequest.addParam(allVariables.get(k));
+		                            request.addParamName(allVariables.get(k));
+		                        }
+		                    } else {
+		                        //TraceManager.addDev("Adding param: " + tmp);
+		                        tmlsendrequest.addParam(tmp);
+		                        request.addParamName(tmp);
+		                    }
+		                }
+		                if (request.getNbOfParams() != tmlsendrequest.getNbOfParams()) {
+		                    TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " sendrequest#:" + tmlsendrequest.getNbOfParams());
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest)tgc).getRequestName() + ": wrong number of parameters");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    checkingErrors.add(ce);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                } else {
+		                    activity.addElement(tmlsendrequest);
+		                    corrTgElement.addCor(tmlsendrequest, tgc);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		                }
+		            }
+		
+		        } else if (tgc instanceof TMLADReadRequestArg) {
+		            request = tmlm.getRequestToMe(tmltask);
+		            if (request == null) {
+		                UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "This task is not requested: cannot use \"reading request arg\" operator");
+		                ce.setTDiagramPanel(tadp);
+		                ce.setTGComponent(tgc);
+		                checkingErrors.add(ce);
+		                ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		            } else {
+		                tmlaction = new TMLActionState("action reading args", tgc);
+		                String act = "";
+		                int cpt = 1;
+		                for(int i=0; i<((TMLADReadRequestArg)tgc).realNbOfParams(); i++) {
+		                    tmp = modifyString(((TMLADReadRequestArg)tgc).getRealParamValue(i));
+		                    Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
+		
+		                    if (allVariables.size() > 0) {
+		                        for(int k=0; k<allVariables.size(); k++) {
+		                            //TraceManager.addDev("Adding record: " + allVariables.get(k));
+		                            if (cpt != 1) {
+		                                act += "$";
+		                            }
+		                            act += allVariables.get(k) + " = arg" + cpt + "__req";
+		                            cpt ++;
+		                        }
+		                    } else {
+		                        //TraceManager.addDev("Adding param: " + tmp);
+		                        if (cpt != 1) {
+		                            act += "$";
+		                        }
+		                        act += tmp + " = arg" + cpt + "__req";
+		                        cpt ++;
+		                    }
+		                }
+		                if (request.getNbOfParams() != (cpt-1)) {
+		                    //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " read request arg#:" + (cpt-1));
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Wrong number of parameters in \"reading request arg\" operator");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    checkingErrors.add(ce);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                } else {
+		                    //TraceManager.addDev("Adding action = " + act);
+		                    tmlaction.setAction(act);
+		                    activity.addElement(tmlaction);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		                    corrTgElement.addCor(tmlaction, tgc);
+		                }
+		            }
+		
+		        } else if (tgc instanceof TMLADStopState) {
+		            tmlstopstate = new TMLStopState("stop state", tgc);
+		            activity.addElement(tmlstopstate);
+		            corrTgElement.addCor(tmlstopstate, tgc);
+		
+		        } else if (tgc instanceof TMLADNotifiedEvent) {
+		            event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADNotifiedEvent)tgc).getEventName(), table ) );
+		            if (event == null) {
+		                if( removedEvents.size() > 0 )      {
+		                    if (Conversion.containsStringInList(removedEvents, ((TMLADNotifiedEvent)tgc).getEventName())) {
+		                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADNotifiedEvent)tgc).getEventName() + " has been removed because the corresponding event is not taken into account");
+		                        ce.setTDiagramPanel(tadp);
+		                        ce.setTGComponent(tgc);
+		                        warnings.add(ce);
+		                        activity.addElement(new TMLJunction("void junction", tgc));
+		                        ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                    } else {
+		                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent)tgc).getEventName() + " is an unknown event");
+		                        ce.setTDiagramPanel(tadp);
+		                        ce.setTGComponent(tgc);
+		                        checkingErrors.add(ce);
+		                        ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                    }
+		                } else {
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent)tgc).getEventName() + " is an unknown event");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    checkingErrors.add(ce);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                }
+		            } else {
+		                event.setNotified(true);
+		                tmlnotifiedevent = new TMLNotifiedEvent("notified event", tgc);
+		                tmlnotifiedevent.setEvent(event);
+		                tmlnotifiedevent.setVariable(modifyString(((TMLADNotifiedEvent)tgc).getVariable()));
+		                activity.addElement(tmlnotifiedevent);
+		                ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		                corrTgElement.addCor(tmlnotifiedevent, tgc);
+		            }
+		
+		        } else if (tgc instanceof TMLADWaitEvent) {
+		            event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADWaitEvent)tgc).getEventName(), table ) );
+		            if (event == null) {
+		                if( removedEvents.size() > 0 )      {
+		                    if (Conversion.containsStringInList(removedEvents, ((TMLADWaitEvent)tgc).getEventName())) {
+		                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWaitEvent)tgc).getEventName() + " has been removed because the corresponding event is not taken into account");
+		                        ce.setTDiagramPanel(tadp);
+		                        ce.setTGComponent(tgc);
+		                        warnings.add(ce);
+		                        ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                        activity.addElement(new TMLJunction("void junction", tgc));
+		                    } else {
+		                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent)tgc).getEventName() + " is an unknown event");
+		                        ce.setTDiagramPanel(tadp);
+		                        ce.setTGComponent(tgc);
+		                        ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                        checkingErrors.add(ce);
+		                    }
+		                } else {
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent)tgc).getEventName() + " is an unknown event");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                    checkingErrors.add(ce);
+		                }
+		            } else {
+		                //TraceManager.addDev("Nb of param of event:" + event.getNbOfParams());
+		                tmlwaitevent = new TMLWaitEvent("wait event", tgc);
+		                tmlwaitevent.setEvent(event);
+		                for(int i=0; i<((TMLADWaitEvent)tgc).realNbOfParams(); i++) {
+		                    tmp = modifyString(((TMLADWaitEvent)tgc).getRealParamValue(i));
+		                    Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
+		                    if (allVariables.size() > 0) {
+		                        for(int k=0; k<allVariables.size(); k++) {
+		                            //TraceManager.addDev("Adding record: " + allVariables.get(k));
+		                            tmlwaitevent.addParam(allVariables.get(k));
+		                        }
+		                    } else {
+		                        //TraceManager.addDev("Adding param: " + tmp);
+		                        tmlwaitevent.addParam(tmp);
+		                    }
+		                }
+		                if (event.getNbOfParams() != tmlwaitevent.getNbOfParams()) {
+		                    //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " waitevent#:" + tmlwaitevent.getNbOfParams());
+		                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent)tgc).getEventName() + ": wrong number of parameters");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    checkingErrors.add(ce);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                } else {
+		                    activity.addElement(tmlwaitevent);
+		                    corrTgElement.addCor(tmlwaitevent, tgc);
+		                    ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		                }
+		
+		            }
+		
+		        } else if (tgc instanceof TMLADWriteChannel) {
+		            // Get channels
+					//TMLADWriteChannel wr = (TMLADWriteChannel) tgc;
+		            channels = ((TMLADWriteChannel)tgc).getChannelsByName();
+		            boolean error = false;
+		            for(int i=0; i<channels.length; i++) {
+		                //TraceManager.addDev("Getting from table " + tmltask.getName() + "/" +channels[i]);
+		                channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i], table ) );
+		                if (channel == null) {
+		                    if (Conversion.containsStringInList(removedChannels, ((TMLADWriteChannel)tgc).getChannelName(i))) {
+		                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWriteChannel)tgc).getChannelName(i) + " has been removed because the corresponding channel is not taken into account");
+		                        ce.setTDiagramPanel(tadp);
+		                        ce.setTGComponent(tgc);
+		                        warnings.add(ce);
+		                        ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                        activity.addElement(new TMLJunction("void junction", tgc));
+		                    } else {
+		                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWriteChannel)tgc).getChannelName(i) + " is an unknown channel");
+		                        ce.setTDiagramPanel(tadp);
+		                        ce.setTGComponent(tgc);
+		                        ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN);
+		                        checkingErrors.add(ce);
+		                    }
+		                    error = true;
+		                
+						}
+		            }
+		            if (!error) {
+		                tmlwritechannel = new TMLWriteChannel("write channel", tgc);
+		                tmlwritechannel.setNbOfSamples(modifyString(((TMLADWriteChannel)tgc).getSamplesValue()));
+	                    tmlwritechannel.setEncForm(((TMLADWriteChannel) tgc).getEncForm());
+
+	                    for(int i=0; i<channels.length; i++) {
+		                    channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i], table ) );
+		                    tmlwritechannel.addChannel(channel);
+		                }
+						//if (wr.isAttacker()){
+							//channel = tmlm.getChannelByName(getAttackerChannel(channels[0]));
+		                    //tmlwritechannel.addChannel(channel);
+						//}
+		                //add sec pattern
+		                if (securityPatterns.get(((TMLADWriteChannel)tgc).getSecurityContext())!=null){
+		                    tmlwritechannel.securityPattern= securityPatterns.get(((TMLADWriteChannel)tgc).getSecurityContext());
+		                    int cur = Integer.valueOf(modifyString(((TMLADWriteChannel)tgc).getSamplesValue()));
+		                    int add = Integer.valueOf(tmlwritechannel.securityPattern.overhead);
+		                    if (!tmlwritechannel.securityPattern.nonce.equals("")){
+		                        SecurityPattern nonce = securityPatterns.get(tmlwritechannel.securityPattern.nonce);
+		                        if (nonce!=null){
+		                            add = Integer.valueOf(nonce.overhead);
+		                        }
+		                    }
+		                    cur = cur+ add;
+		                    tmlwritechannel.setNbOfSamples(Integer.toString(cur));
+		                }
+		                else if (!((TMLADWriteChannel)tgc).getSecurityContext().isEmpty()){
+		                    //Throw error for missing security pattern
+		                    UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADWriteChannel)tgc).getSecurityContext() + " not found");
+		                    ce.setTDiagramPanel(tadp);
+		                    ce.setTGComponent(tgc);
+		                    checkingErrors.add(ce);
+		                }
+						if (tmltask.isAttacker()){
+							tmlwritechannel.setAttacker(true);
+						}
+		                activity.addElement(tmlwritechannel);
+		                ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK);
+		                corrTgElement.addCor(tmlwritechannel, tgc);
+		            }
+				}
+            }
+        }
+
+        // Interconnection between elements
+        //TGConnectorTMLAD tgco;
+        //TGConnectingPoint p1, p2;
+        //TMLActivityElement ae1, ae2;
+        //TGComponent /*tgc1, tgc2,*/ tgc3;
+        //int j, index;
+
+        final List<TGConnector> connectors = tadp.getConnectors();
+        final Set<TGConnector> prunedConectors = new HashSet<TGConnector>();
+        
+        for ( final TGConnector connector : connectors ) {
+        	if ( !prunedConectors.contains( connector ) ) {
+        		FindNextEnabledConnectingPointVisitor visitor = new FindNextEnabledConnectingPointVisitor( prunedConectors );
+        		connector.getTGConnectingPointP1().acceptBackward( visitor );
+		        final TGConnectingPoint conPoint1 = visitor.getEnabledComponentPoint();
+		        
+		        if ( conPoint1 != null ) {
+	            	visitor = new FindNextEnabledConnectingPointVisitor( prunedConectors );
+	        		connector.getTGConnectingPointP2().acceptForward( visitor );
+	            	final TGConnectingPoint conPoint2 = visitor.getEnabledComponentPoint();
+	            	
+	            	if ( conPoint2 != null ) {
+		            	final TGComponent compo1 = (TGComponent) conPoint1.getFather();
+		            	final TGComponent compo2 = (TGComponent) conPoint2.getFather();
+		
+		            	final TMLActivityElement ae1 = activity.findReferenceElement( compo1 );
+		            	final TMLActivityElement ae2 = activity.findReferenceElement( compo2 );
+		
+		                //Special case if "for loop" or if "choice"
+		                if (ae1 instanceof TMLForLoop) {
+		                    final int index = compo1.indexOf( conPoint1 ) - 1;
+		                    
+		                    if (index == 0) {
+		                        ae1.addNext( 0, ae2 );
+		                    }
+		                    else {
+		                        ae1.addNext( ae2 );
+		                    }
+		
+		                }
+		                else if (ae1 instanceof TMLChoice) {
+		                	//final int index = compo1.indexOf( conPoint1 ) - 1;
+		                    //TraceManager.addDev("Adding next:" + ae2);
+		                    ae1.addNext(ae2);
+		                    
+		                    final TMLADChoice choice = (TMLADChoice) compo1;
+		                    final TGCOneLineText guard = choice.getGuardForConnectingPoint( conPoint1 );
+		                    ( (TMLChoice) ae1 ).addGuard( modifyString( choice.getEffectiveCondition( guard ) ) );
+		                }
+		                else if (ae1 instanceof TMLSequence) {
+		                	final int index = compo1.indexOf( conPoint1 ) - 1;
+		                    ((TMLSequence)ae1).addIndex(index);
+		                    ae1.addNext(ae2);
+		                    //TraceManager.addDev("Adding " + ae2 + " at index " + index);
+		
+		                }
+		                else if (ae1 instanceof TMLRandomSequence) {
+		                	final int  index = compo1.indexOf( conPoint1 ) - 1;
+		                    ((TMLRandomSequence)ae1).addIndex(index);
+		                    ae1.addNext(ae2);
+		                }
+		                else {
+		                    ae1.addNext(ae2);
+		                }
+		            }
+		        }
+            }
+        }
+
+        // Check that each "for" has two nexts
+        // Check that TMLChoice have compatible guards
+        // Check TML select evts
+        iterator = list.listIterator();
+        while(iterator.hasNext()) {
+            tgc = iterator.next();
+
+            // Issue #69: Disabling of AD components
+            if ( tgc.isEnabled() ) {
+	            if ((tgc instanceof TMLADForLoop) || (tgc instanceof TMLADForStaticLoop)) {
+	            	final TMLActivityElement ae1 = activity.findReferenceElement(tgc);
+	                
+	            	if (ae1 != null) {
+	                    if (ae1.getNbNext() != 2) {
+	                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted for loop: a loop must have an internal behavior, and an exit behavior ");
+	                        ce.setTDiagramPanel(tadp);
+	                        ce.setTGComponent(tgc);
+	                        checkingErrors.add(ce);
+	                    }
+	                }
+	            }
+	            else if (tgc instanceof TMLADChoice) {
+	                tmlchoice = (TMLChoice)(activity.findReferenceElement(tgc));
+	                tmlchoice.orderGuards();
+	
+	                int nbNonDeter = tmlchoice.nbOfNonDeterministicGuard();
+	                int nbStocha = tmlchoice.nbOfStochasticGuard();
+	                if ((nbNonDeter > 0) && (nbStocha > 0)) {
+	                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic and stochastic guards");
+	                    ce.setTDiagramPanel(tadp);
+	                    ce.setTGComponent(tgc);
+	                    checkingErrors.add(ce);
+	                }
+	                int nb = Math.max(nbNonDeter, nbStocha);
+	                if (nb > 0) {
+	                    nb = nb + tmlchoice.nbOfElseAndAfterGuards();
+	                    if (nb != tmlchoice.getNbGuard()) {
+	                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, UICheckingError.MESSAGE_CHOICE_BOTH_STOCHASTIC_DETERMINISTIC );//"Badly formatted choice: it has both non-determinitic/ stochastic and regular guards");
+	                        ce.setTDiagramPanel(tadp);
+	                        ce.setTGComponent(tgc);
+	                        checkingErrors.add(ce);
+	                    }
+	                }
+	
+	                //if (tmlchoice.nbOfNonDeterministicGuard() > 0) {
+	                    /*if (!rndAdded) {
+	                      TMLAttribute tmlt = new TMLAttribute("rnd__0", new TMLType(TMLType.NATURAL));
+	                      tmlt.initialValue = "";
+	                      tmltask.addAttribute(tmlt);
+	                      rndAdded = true;
+	                      }*/
+	                //}
+	                if (tmlchoice.hasMoreThanOneElse()) {
+	                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [else] guard");
+	                    ce.setTDiagramPanel(tadp);
+	                    ce.setTGComponent(tgc);
+	                    checkingErrors.add(ce);
+	                } else if ( tmlchoice.getElseGuard() > -1 ) {
+	                    final int index = tmlchoice.getElseGuard();
+	                    
+	                    if (index == 0) {
+	                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have a regular guard");
+	                        ce.setTDiagramPanel(tadp);
+	                        ce.setTGComponent(tgc);
+	                        checkingErrors.add(ce);
+	                    }
+	                }
+	                if (tmlchoice.hasMoreThanOneAfter()) {
+	                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [after] guard");
+	                    ce.setTDiagramPanel(tadp);
+	                    ce.setTGComponent(tgc);
+	                    checkingErrors.add(ce);
+	                }
+	            }
+	            else if (tgc instanceof TMLADSelectEvt) {
+	                tmlselectevt = (TMLSelectEvt)(activity.findReferenceElement(tgc));
+	                if (!tmlselectevt.isARealSelectEvt()) {
+	                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "'Select events'  should be followed by only event receiving operators");
+	                    ce.setTDiagramPanel(tadp);
+	                    ce.setTGComponent(tgc);
+	                    checkingErrors.add(ce);
+	                }
+	            }
+        	}
+        }
+
+        // Sorting nexts elements of Sequence
+        for( int j=0; j<activity.nElements(); j++) {
+            final TMLActivityElement ae1 = activity.get(j);
+            
+            if (ae1 instanceof TMLSequence) {
+                ((TMLSequence)ae1).sortNexts();
+            }
+            else if (ae1 instanceof TMLRandomSequence) {
+                ((TMLRandomSequence)ae1).sortNexts();
+            }
+        }
+        
+        TraceManager.addDev( tmltask.getActivityDiagram().toXML() );
+    }
+
+    private String modifyActionString(String _input) {
+        int index = _input.indexOf("++");
+        boolean b1, b2;
+        String tmp;
+
+        if(index > -1) {
+            tmp = _input.substring(0, index).trim();
+
+            b1 = (tmp.substring(0,1)).matches("[a-zA-Z]");
+            b2 = tmp.matches("\\w*");
+            if (b1 && b2) {
+                return tmp + " = " + tmp + " + 1";
+            }
+        }
+
+        index = _input.indexOf("--");
+        if(index > -1) {
+            tmp = _input.substring(0, index).trim();
+
+            b1 = (tmp.substring(0,1)).matches("[a-zA-Z]");
+            b2 = tmp.matches("\\w*");
+            if (b1 && b2) {
+                return tmp + " = " + tmp + " - 1";
+            }
+        }
+
+        return modifyString(_input);
+    }
+
+    private String modifyString(String _input) {
+        return Conversion.replaceAllChar(_input, '.', "__");
+    }
+    
+    private String getFromTable(	final TMLTask task, 
+    								final String s,
+    								final Map<String, String> table ) {
+        //TraceManager.addDev("TABLE GET: Getting from task=" + task.getName() + " element=" + s);
+
+        if (table == null) {
+            return s;
+        }
+
+        String ret = table.get(task.getName() + "/" + s);
+        //TraceManager.addDev("Returning=" + ret);
+
+        if (ret == null) {
+            return s;
+        }
+
+        return ret;
+    }
+}
diff --git a/src/main/java/ui/AvatarDesignPanelTranslator.java b/src/main/java/ui/AvatarDesignPanelTranslator.java
index e440a89501499f03326d02efec5160cee35ee901..19f86b72de68de83f4d875110032d72427d8feb6 100644
--- a/src/main/java/ui/AvatarDesignPanelTranslator.java
+++ b/src/main/java/ui/AvatarDesignPanelTranslator.java
@@ -1267,51 +1267,61 @@ public class AvatarDesignPanelTranslator {
     			((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true;
     		}
     	}
+        final AvatarStateMachineElement element;
+        final String name = "action_on_signal";
+        
+        if ( asmdss.isEnabled() ) {
+        	element = new AvatarActionOnSignal( name, atas, asmdss );
+        	
+        	final AvatarActionOnSignal aaos = (AvatarActionOnSignal) element;
+	    	if (asmdss.hasCheckedAccessibility())
+	    		aaos.setCheckable();
+	
+	    	if (asmdss.hasCheckedAccessibility())
+	    		aaos.setChecked();
+	
+	    	if (aaos.isReceiving ())
+	    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A receiving signal is used for sending: " + asmdss.getValue());
+	
+	    	if (asmdss.getNbOfValues() == -1)
+	    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdss.getValue());
+	
+	    	for(int i=0; i<asmdss.getNbOfValues(); i++) {
+	    		String tmp = asmdss.getValue(i);
+	    		if (tmp.isEmpty ())
+	    			throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdss.getValue());
+	
+	    		this.manageAttribute (tmp, _ab, aaos, tdp, asmdss, asmdss.getValue());
+	    	}
+	
+	    	if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ())
+	    		throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal sending: " + asmdss.getValue() + " -> nb of parameters does not match definition");
+	
+	    	// Checking expressions passed as parameter
+	    	for (int i=0; i<aaos.getNbOfValues(); i++) {
+	    		String theVal = aaos.getValue(i);
+	    		if (atas.getListOfAttributes ().get (i).isInt ()) {
+	    			if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0)
+	    				throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition");
+	    		} else {
+	    			// We assume it is a bool attribute
+	    			if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0)
+	    				throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition");
+	    		}
+	    	}
+	    	
+	    	if (asmdss.getCheckLatency()){
+	    		aaos.setCheckLatency( true );
+	    		_as.checkedIDs.add(asmdss.getName()+"-"+ asmdss.getSignalName()+":"+aaos.getID());
+	    	}
+        }
+        else {
+        	element = new AvatarDummyState( name + ":" + atas.getName(), asmdss );
+        }
 
-    	AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdss);
-    	if (asmdss.hasCheckedAccessibility())
-    		aaos.setCheckable();
-
-    	if (asmdss.hasCheckedAccessibility())
-    		aaos.setChecked();
-
-    	if (aaos.isReceiving ())
-    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A receiving signal is used for sending: " + asmdss.getValue());
-
-    	if (asmdss.getNbOfValues() == -1)
-    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdss.getValue());
-
-    	for(int i=0; i<asmdss.getNbOfValues(); i++) {
-    		String tmp = asmdss.getValue(i);
-    		if (tmp.isEmpty ())
-    			throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdss.getValue());
-
-    		this.manageAttribute (tmp, _ab, aaos, tdp, asmdss, asmdss.getValue());
-    	}
-
-    	if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ())
-    		throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal sending: " + asmdss.getValue() + " -> nb of parameters does not match definition");
-
-    	// Checking expressions passed as parameter
-    	for (int i=0; i<aaos.getNbOfValues(); i++) {
-    		String theVal = aaos.getValue(i);
-    		if (atas.getListOfAttributes ().get (i).isInt ()) {
-    			if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0)
-    				throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition");
-    		} else {
-    			// We assume it is a bool attribute
-    			if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0)
-    				throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition");
-    		}
-    	}
-
-    	this.listE.addCor (aaos, asmdss);
-    	asmdss.setAVATARID (aaos.getID());
-    	if (asmdss.getCheckLatency()){
-    		aaos.setCheckLatency(true);
-    		_as.checkedIDs.add(asmdss.getName()+"-"+ asmdss.getSignalName()+":"+aaos.getID());
-    	}
-    	asm.addElement (aaos);
+    	listE.addCor(element, asmdss);
+    	asmdss.setAVATARID (element.getID());
+    	asm.addElement(element);
     }
 
     private void translateAvatarSMDLibraryFunctionCall (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDLibraryFunctionCall asmdlfc) throws CheckingError {
@@ -1328,202 +1338,212 @@ public class AvatarDesignPanelTranslator {
             throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown library function '" + libraryFunction.getFunctionName () + "'");
 
         /* create Avatar representation of the function call */
-        AvatarLibraryFunctionCall alfc = new AvatarLibraryFunctionCall ("library_function_call", aLibraryFunction, asmdlfc);
-
-        /* Get the list of parameters passed to the function */
-        List<TAttribute> parameters = asmdlfc.getParameters ();
-        /* If the number of parameters does not match raise an error */
-        if (parameters.size () != libraryFunction.getParameters ().size ())
-            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getParameters ().size () + "parameters (" + parameters.size () + " provided)");
-
-        /* Loop through the parameters */
-        int i=0;
-        for (TAttribute ta: parameters) {
-            i ++;
-            /* If parameter has not be filled in raise an error */
-            if (ta == null)
-                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Missing parameter #" + i + " when calling library function " + libraryFunction.getFunctionName ());
-
-            /* Check if type of parameter matches what's expected */
-            TAttribute returnTA = libraryFunction.getParameters ().get (i-1);
-            if (!ta.hasSameType (returnTA))
-                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of parameter #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match");
-
-            /* Creates all the parameters corresponding to this parameter */
-            List<String> parameterNames = new LinkedList<String> ();
-            if (ta.getType() == TAttribute.INTEGER
-                || ta.getType() == TAttribute.NATURAL
-                || ta.getType() == TAttribute.BOOLEAN
-                || ta.getType() == TAttribute.TIMER)
-                parameterNames.add (ta.getId ());
-            else {
-                List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ());
-                if (types == null || types.isEmpty ())
-                    throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
-
-                for (TAttribute type: types)
-                    parameterNames.add (ta.getId () + "__" + type.getId ());
-            }
-
-            /* Add flattened parameters */
-            for (String parameterName: parameterNames) {
-                /* Try to get the corresponding attribute */
-                AvatarAttribute attr = _ab.getAvatarAttributeWithName (parameterName);
-                /* If it does not exist raise an error */
-                if (attr == null)
-                    throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Parameter '" + ta.getId () + "' passed when calling library function " + libraryFunction.getFunctionName () + " does not exist");
-                alfc.addParameter (attr);
-            }
+        final AvatarStateMachineElement element;
+        final String name = "library_function_call";
+
+        if ( asmdlfc.isEnabled() ) {
+	        /* create Avatar representation of the function call */
+        	element = new AvatarLibraryFunctionCall( name, aLibraryFunction, asmdlfc );
+        	AvatarLibraryFunctionCall alfc = (AvatarLibraryFunctionCall) element;
+//        AvatarLibraryFunctionCall alfc = new AvatarLibraryFunctionCall ("library_function_call", aLibraryFunction, asmdlfc);
+
+	        /* Get the list of parameters passed to the function */
+	        List<TAttribute> parameters = asmdlfc.getParameters ();
+	        /* If the number of parameters does not match raise an error */
+	        if (parameters.size () != libraryFunction.getParameters ().size ())
+	            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getParameters ().size () + "parameters (" + parameters.size () + " provided)");
+	
+	        /* Loop through the parameters */
+	        int i=0;
+	        for (TAttribute ta: parameters) {
+	            i ++;
+	            /* If parameter has not be filled in raise an error */
+	            if (ta == null)
+	                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Missing parameter #" + i + " when calling library function " + libraryFunction.getFunctionName ());
+	
+	            /* Check if type of parameter matches what's expected */
+	            TAttribute returnTA = libraryFunction.getParameters ().get (i-1);
+	            if (!ta.hasSameType (returnTA))
+	                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of parameter #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match");
+	
+	            /* Creates all the parameters corresponding to this parameter */
+	            List<String> parameterNames = new LinkedList<String> ();
+	            if (ta.getType() == TAttribute.INTEGER
+	                || ta.getType() == TAttribute.NATURAL
+	                || ta.getType() == TAttribute.BOOLEAN
+	                || ta.getType() == TAttribute.TIMER)
+	                parameterNames.add (ta.getId ());
+	            else {
+	                List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ());
+	                if (types == null || types.isEmpty ())
+	                    throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
+	
+	                for (TAttribute type: types)
+	                    parameterNames.add (ta.getId () + "__" + type.getId ());
+	            }
+	
+	            /* Add flattened parameters */
+	            for (String parameterName: parameterNames) {
+	                /* Try to get the corresponding attribute */
+	                AvatarAttribute attr = _ab.getAvatarAttributeWithName (parameterName);
+	                /* If it does not exist raise an error */
+	                if (attr == null)
+	                    throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Parameter '" + ta.getId () + "' passed when calling library function " + libraryFunction.getFunctionName () + " does not exist");
+	                alfc.addParameter (attr);
+	            }
+	        }
+	
+	        /* Get the list of signals mapped to the function's placeholders */
+	        List<ui.AvatarSignal> signals = asmdlfc.getSignals ();
+	        /* If the number of signals does not match raise an error */
+	        if (signals.size () != libraryFunction.getSignals ().size ())
+	            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getSignals ().size () + " signals (" + signals.size () + " mapped)");
+	
+	        /* Loop through the signals */
+	        i=0;
+	        for (ui.AvatarSignal uias: signals) {
+	            i ++;
+	            /* If signal has not be filled in raise an error */
+	            if (uias == null)
+	                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Missing mapping for signal #" + i + " when calling library function " + libraryFunction.getFunctionName ());
+	
+	            /* Check if prototype of signal matches what's expected */
+	            ui.AvatarSignal expectedSig = libraryFunction.getSignals ().get (i-1);
+	            if (!expectedSig.hasSamePrototype (uias))
+	                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Prototype of signal #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match");
+	
+	            /* Try to get the corresponding signal */
+	            avatartranslator.AvatarSignal sig = _ab.getAvatarSignalWithName (uias.getId ());
+	            /* If it does not exist raise an error */
+	            if (sig == null)
+	                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal '" + uias.getId () + "' mapped when calling library function " + libraryFunction.getFunctionName () + " does not exist");
+	            alfc.addSignal (sig);
+	        }
+	
+	        /* Get the list of return attributes passed to the function */
+	        List<TAttribute> returnAttributes = asmdlfc.getReturnAttributes ();
+	        /* If the number of return attributes is greater that what the function can return raise an error */
+	        if (returnAttributes.size () > libraryFunction.getReturnAttributes ().size ())
+	            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " can only return " + libraryFunction.getReturnAttributes ().size () + " values (" + returnAttributes.size () + " expected)");
+	
+	        /* Loop through the return attributes */
+	        i=0;
+	        for (TAttribute ta: returnAttributes) {
+	            List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> ();
+	            /* If return attribute has not be filled in, add a dummy one */
+	            if (ta == null) {
+	                TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i);
+	                String dummyName = "__dummy_return_attribute_" + returnTA.getId ();
+	
+	                /* Creates all the attributes corresponding to this return attribute */
+	                if (returnTA.getType() == TAttribute.INTEGER
+	                    || returnTA.getType() == TAttribute.NATURAL
+	                    || returnTA.getType() == TAttribute.BOOLEAN
+	                    || returnTA.getType() == TAttribute.TIMER) {
+	                    AvatarAttribute attr = _ab.getAvatarAttributeWithName (dummyName);
+	                    if (attr == null) {
+	                        attr = this.createRegularAttribute (_ab, returnTA, "__dummy_return_attribute_");
+	                        _ab.addAttribute (attr);
+	                    }
+	                    attrs.add (attr);
+	                } else {
+	                    List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ());
+	                    if (types == null || types.isEmpty ())
+	                        throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
+	
+	                    for (TAttribute type: types) {
+	                        String attributeName = dummyName + "__" + type.getId ();
+	                        AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName);
+	                        if (attr == null) {
+	                            attr = this.createRegularAttribute (_ab, type, dummyName + "__");
+	                            _ab.addAttribute (attr);
+	                        }
+	                        attrs.add (attr);
+	                    }
+	                }
+	            } else {
+	                /* Check if type of return attribute matches what's expected */
+	                TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i);
+	                if (!ta.hasSameType (returnTA))
+	                    throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of return attribute #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not match");
+	
+	                /* Creates all the attributes corresponding to this return attribute */
+	                List<String> attributeNames = new LinkedList<String> ();
+	                if (ta.getType() == TAttribute.INTEGER
+	                    || ta.getType() == TAttribute.NATURAL
+	                    || ta.getType() == TAttribute.BOOLEAN
+	                    || ta.getType() == TAttribute.TIMER)
+	                    attributeNames.add (ta.getId ());
+	                else {
+	                    List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ());
+	                    if (types == null || types.isEmpty ())
+	                        throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
+	
+	                    for (TAttribute type: types)
+	                        attributeNames.add (ta.getId () + "__" + type.getId ());
+	                }
+	
+	                /* Add flattened parameters */
+	                for (String attributeName: attributeNames) {
+	                    AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName);
+	                    /* If a return attribute was given but we can't find the corresponding one raise an error */
+	                    if (attr == null)
+	                        throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Attribute '" + ta.getId () + "' expected to hold return value #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not exist");
+	                    attrs.add (attr);
+	                }
+	            }
+	
+	            for (AvatarAttribute attr: attrs)
+	                alfc.addReturnAttribute (attr);
+	            i ++;
+	        }
+	
+	        /* If there were missing return attributes, add dummies ones */
+	        for (; i<libraryFunction.getReturnAttributes ().size (); i++) {
+	            TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i);
+	            String dummyName = "__dummy_return_attribute_" + returnTA.getId ();
+	
+	            List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> ();
+	            /* Creates all the attributes corresponding to this return attribute */
+	            if (returnTA.getType() == TAttribute.INTEGER
+	                || returnTA.getType() == TAttribute.NATURAL
+	                || returnTA.getType() == TAttribute.BOOLEAN
+	                || returnTA.getType() == TAttribute.TIMER) {
+	                AvatarAttribute attr = _ab.getAvatarAttributeWithName (dummyName);
+	                if (attr == null) {
+	                    attr = this.createRegularAttribute (_ab, returnTA, "__dummy_return_attribute_");
+	                    _ab.addAttribute (attr);
+	                }
+	                attrs.add (attr);
+	            } else {
+	                List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ());
+	                if (types == null || types.isEmpty ())
+	                    throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
+	
+	                for (TAttribute type: types) {
+	                    String attributeName = dummyName + "__" + type.getId ();
+	                    AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName);
+	                    if (attr == null) {
+	                        attr = this.createRegularAttribute (_ab, type, dummyName + "__");
+	                        _ab.addAttribute (attr);
+	                    }
+	                    attrs.add (attr);
+	                }
+	            }
+	
+	            for (AvatarAttribute attr: attrs)
+	                alfc.addReturnAttribute (attr);
+	        }
         }
-
-        /* Get the list of signals mapped to the function's placeholders */
-        List<ui.AvatarSignal> signals = asmdlfc.getSignals ();
-        /* If the number of signals does not match raise an error */
-        if (signals.size () != libraryFunction.getSignals ().size ())
-            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getSignals ().size () + " signals (" + signals.size () + " mapped)");
-
-        /* Loop through the signals */
-        i=0;
-        for (ui.AvatarSignal uias: signals) {
-            i ++;
-            /* If signal has not be filled in raise an error */
-            if (uias == null)
-                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Missing mapping for signal #" + i + " when calling library function " + libraryFunction.getFunctionName ());
-
-            /* Check if prototype of signal matches what's expected */
-            ui.AvatarSignal expectedSig = libraryFunction.getSignals ().get (i-1);
-            if (!expectedSig.hasSamePrototype (uias))
-                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Prototype of signal #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match");
-
-            /* Try to get the corresponding signal */
-            avatartranslator.AvatarSignal sig = _ab.getAvatarSignalWithName (uias.getId ());
-            /* If it does not exist raise an error */
-            if (sig == null)
-                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal '" + uias.getId () + "' mapped when calling library function " + libraryFunction.getFunctionName () + " does not exist");
-            alfc.addSignal (sig);
-        }
-
-        /* Get the list of return attributes passed to the function */
-        List<TAttribute> returnAttributes = asmdlfc.getReturnAttributes ();
-        /* If the number of return attributes is greater that what the function can return raise an error */
-        if (returnAttributes.size () > libraryFunction.getReturnAttributes ().size ())
-            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " can only return " + libraryFunction.getReturnAttributes ().size () + " values (" + returnAttributes.size () + " expected)");
-
-        /* Loop through the return attributes */
-        i=0;
-        for (TAttribute ta: returnAttributes) {
-            List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> ();
-            /* If return attribute has not be filled in, add a dummy one */
-            if (ta == null) {
-                TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i);
-                String dummyName = "__dummy_return_attribute_" + returnTA.getId ();
-
-                /* Creates all the attributes corresponding to this return attribute */
-                if (returnTA.getType() == TAttribute.INTEGER
-                    || returnTA.getType() == TAttribute.NATURAL
-                    || returnTA.getType() == TAttribute.BOOLEAN
-                    || returnTA.getType() == TAttribute.TIMER) {
-                    AvatarAttribute attr = _ab.getAvatarAttributeWithName (dummyName);
-                    if (attr == null) {
-                        attr = this.createRegularAttribute (_ab, returnTA, "__dummy_return_attribute_");
-                        _ab.addAttribute (attr);
-                    }
-                    attrs.add (attr);
-                } else {
-                    List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ());
-                    if (types == null || types.isEmpty ())
-                        throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
-
-                    for (TAttribute type: types) {
-                        String attributeName = dummyName + "__" + type.getId ();
-                        AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName);
-                        if (attr == null) {
-                            attr = this.createRegularAttribute (_ab, type, dummyName + "__");
-                            _ab.addAttribute (attr);
-                        }
-                        attrs.add (attr);
-                    }
-                }
-            } else {
-                /* Check if type of return attribute matches what's expected */
-                TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i);
-                if (!ta.hasSameType (returnTA))
-                    throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of return attribute #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not match");
-
-                /* Creates all the attributes corresponding to this return attribute */
-                List<String> attributeNames = new LinkedList<String> ();
-                if (ta.getType() == TAttribute.INTEGER
-                    || ta.getType() == TAttribute.NATURAL
-                    || ta.getType() == TAttribute.BOOLEAN
-                    || ta.getType() == TAttribute.TIMER)
-                    attributeNames.add (ta.getId ());
-                else {
-                    List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ());
-                    if (types == null || types.isEmpty ())
-                        throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
-
-                    for (TAttribute type: types)
-                        attributeNames.add (ta.getId () + "__" + type.getId ());
-                }
-
-                /* Add flattened parameters */
-                for (String attributeName: attributeNames) {
-                    AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName);
-                    /* If a return attribute was given but we can't find the corresponding one raise an error */
-                    if (attr == null)
-                        throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Attribute '" + ta.getId () + "' expected to hold return value #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not exist");
-                    attrs.add (attr);
-                }
-            }
-
-            for (AvatarAttribute attr: attrs)
-                alfc.addReturnAttribute (attr);
-            i ++;
-        }
-
-        /* If there were missing return attributes, add dummies ones */
-        for (; i<libraryFunction.getReturnAttributes ().size (); i++) {
-            TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i);
-            String dummyName = "__dummy_return_attribute_" + returnTA.getId ();
-
-            List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> ();
-            /* Creates all the attributes corresponding to this return attribute */
-            if (returnTA.getType() == TAttribute.INTEGER
-                || returnTA.getType() == TAttribute.NATURAL
-                || returnTA.getType() == TAttribute.BOOLEAN
-                || returnTA.getType() == TAttribute.TIMER) {
-                AvatarAttribute attr = _ab.getAvatarAttributeWithName (dummyName);
-                if (attr == null) {
-                    attr = this.createRegularAttribute (_ab, returnTA, "__dummy_return_attribute_");
-                    _ab.addAttribute (attr);
-                }
-                attrs.add (attr);
-            } else {
-                List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ());
-                if (types == null || types.isEmpty ())
-                    throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
-
-                for (TAttribute type: types) {
-                    String attributeName = dummyName + "__" + type.getId ();
-                    AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName);
-                    if (attr == null) {
-                        attr = this.createRegularAttribute (_ab, type, dummyName + "__");
-                        _ab.addAttribute (attr);
-                    }
-                    attrs.add (attr);
-                }
-            }
-
-            for (AvatarAttribute attr: attrs)
-                alfc.addReturnAttribute (attr);
+        else {
+        	element = new AvatarDummyState( name + ":" + aLibraryFunction.getName(), asmdlfc );
         }
 
-        this.listE.addCor (alfc, asmdlfc);
-        asmdlfc.setAVATARID (alfc.getID());
-        asm.addElement (alfc);
+        listE.addCor( element, asmdlfc );
+        asmdlfc.setAVATARID( element.getID() );
+        asm.addElement( element );
     }
 
-
     private void translateAvatarSMDReceiveSignal (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDReceiveSignal asmdrs) throws CheckingError {
     	AvatarStateMachine asm = _ab.getStateMachine ();
     	avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdrs.getSignalName ());
@@ -1549,110 +1569,172 @@ public class AvatarDesignPanelTranslator {
     	if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
     		((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true;
     	}
+        
+    	final AvatarStateMachineElement element;
+        final String name = "action_on_signal";
+        
+        if ( asmdrs.isEnabled() ) {
+        	element = new AvatarActionOnSignal( name, atas, asmdrs );
+        	
+        	final AvatarActionOnSignal aaos = (AvatarActionOnSignal) element;
 
-    	AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdrs);
-    	if (asmdrs.hasCheckableAccessibility())
-    		aaos.setCheckable();
-
-    	if (asmdrs.hasCheckedAccessibility())
-    		aaos.setChecked();
-
-    	if (aaos.isSending())
-    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A sending signal is used for receiving: " + asmdrs.getValue());
-
-    	if (asmdrs.getNbOfValues() == -1)
-    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdrs.getValue());
-
-    	for(int i=0; i<asmdrs.getNbOfValues(); i++) {
-    		String tmp = asmdrs.getValue(i);
-    		if (tmp.isEmpty ())
-    			throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdrs.getValue());
-
-    		this.manageAttribute (tmp, _ab, aaos, tdp, asmdrs, asmdrs.getValue());
-    	}
-
-    	if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ())
-    		throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> nb of parameters does not match definition");
-
-    	// Checking expressions passed as parameter
-    	for (int i=0; i<aaos.getNbOfValues(); i++) {
-    		String theVal = aaos.getValue(i);
-    		if (atas.getListOfAttributes ().get (i).isInt ()) {
-    			if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0)
-    				throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition");
-    		} else {
-    			// We assume it is a bool attribute
-    			if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0)
-    				throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition");
-    		}
-    	}
+	    	if (asmdrs.hasCheckableAccessibility())
+	    		aaos.setCheckable();
+	
+	    	if (asmdrs.hasCheckedAccessibility())
+	    		aaos.setChecked();
+	
+	    	if (aaos.isSending())
+	    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A sending signal is used for receiving: " + asmdrs.getValue());
+	
+	    	if (asmdrs.getNbOfValues() == -1)
+	    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdrs.getValue());
+	
+	    	for(int i=0; i<asmdrs.getNbOfValues(); i++) {
+	    		String tmp = asmdrs.getValue(i);
+	    		if (tmp.isEmpty ())
+	    			throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdrs.getValue());
+	
+	    		this.manageAttribute (tmp, _ab, aaos, tdp, asmdrs, asmdrs.getValue());
+	    	}
+	
+	    	if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ())
+	    		throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> nb of parameters does not match definition");
+	
+	    	// Checking expressions passed as parameter
+	    	for (int i=0; i<aaos.getNbOfValues(); i++) {
+	    		String theVal = aaos.getValue(i);
+	    		if (atas.getListOfAttributes ().get (i).isInt ()) {
+	    			if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0)
+	    				throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition");
+	    		} else {
+	    			// We assume it is a bool attribute
+	    			if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0)
+	    				throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition");
+	    		}
+	    	}
+
+	    	if (asmdrs.getCheckLatency()){
+	    		aaos.setCheckLatency(true);
+	    		_as.checkedIDs.add(asmdrs.getName()+"-"+asmdrs.getSignalName()+":"+aaos.getID());
+	    	}
+        }
+        else {
+        	element = new AvatarDummyState( name + ":" + atas.getName(), asmdrs );
+        }
 
-    	this.listE.addCor (aaos, asmdrs);
-    	asmdrs.setAVATARID (aaos.getID());
-    	asm.addElement (aaos);
-    	if (asmdrs.getCheckLatency()){
-    		aaos.setCheckLatency(true);
-    		_as.checkedIDs.add(asmdrs.getName()+"-"+asmdrs.getSignalName()+":"+aaos.getID());
-    	}
+        this.listE.addCor( element, asmdrs );
+        asmdrs.setAVATARID( element.getID() );
+        asm.addElement( element );
     }
 
     private void translateAvatarSMDState (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDState tgc) throws CheckingError {
-        AvatarStateMachine asm = _ab.getStateMachine ();
-        AvatarState astate = asm.getStateWithName(tgc.getValue());
-        if (astate == null) {
-            astate = new AvatarState (tgc.getValue(), tgc);
-            astate.setAsVerifiable(true);
-            asm.addElement (astate);
-        }
+        AvatarStateMachine stateMachine = _ab.getStateMachine ();
+        AvatarStateElement stateElement = createState( stateMachine, tgc );
+        //AvatarState astate = asm.getStateWithName(tgc.getValue());
+//        if (astate == null) {
+//            astate = new AvatarState (tgc.getValue(), tgc);
+//            astate.setAsVerifiable(true);
+//            asm.addElement (astate);
+//        }
 
         if (tgc.hasCheckableAccessibility ())
-            astate.setCheckable ();
+        	stateElement.setCheckable ();
 
         if (tgc.hasCheckedAccessibility())
-            astate.setChecked();
-
-        // Executable code
-        astate.addEntryCode(tgc.getEntryCode());
+        	stateElement.setChecked();
+    	
+        // Issue #69
+    	if ( tgc.isEnabled() ) {
+       		final AvatarState state =  (AvatarState) stateElement;
+
+	        // Executable code
+       		state.addEntryCode(tgc.getEntryCode());
+	
+			if (tgc.getCheckLatency()){
+				state.setCheckLatency(true);
+				_as.checkedIDs.add(tgc.getName()+"-"+tgc.getValue()+":"+state.getID());
+			}
+    	}
 
-        this.listE.addCor (astate, tgc);
-        astate.addReferenceObject (tgc);
-        tgc.setAVATARID (astate.getID());
-		if (tgc.getCheckLatency()){
-			astate.setCheckLatency(true);
-			_as.checkedIDs.add(tgc.getName()+"-"+tgc.getValue()+":"+astate.getID());
-		}
+    	listE.addCor(stateElement, tgc);
+    	stateElement.addReferenceObject (tgc);
+        tgc.setAVATARID(stateElement.getID());
+    }
+    
+    private AvatarStateElement createState( final AvatarStateMachine stateMachine,
+    										final AvatarSMDState diagramState ) {
+    	AvatarStateElement stateElement = stateMachine.getStateWithName( diagramState.getValue() );
+        
+        if ( stateElement == null ) {
+        	final String name = diagramState.getValue();
+        	
+        	// Issue #69
+        	if ( diagramState.isEnabled() ) {
+        		stateElement = new AvatarState( name, diagramState );
+                stateElement.setAsVerifiable( true );
+        	}
+        	else {
+        		if ( diagramState.getOutputConnectors().isEmpty() ) {
+        			stateElement = new AvatarStopState( name + "_state_converted_to_stop", diagramState );
+        		}
+        		else {
+        			stateElement = new AvatarDummyState( name, diagramState );
+        		}
+        	}
+        	
+            stateMachine.addElement( stateElement );
+        }
+        
+        return stateElement;
     }
 
     private void translateAvatarSMDRandom (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDRandom asmdrand) throws CheckingError {
         AvatarStateMachine asm = _ab.getStateMachine ();
-        AvatarRandom arandom = new AvatarRandom ("random", asmdrand);
-        String tmp1 = modifyString (asmdrand.getMinValue());
-        int error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp1);
-        if (error < 0)
-            this.makeError (error, tdp, _ab, asmdrand, "min value of random", tmp1);
-
-        String tmp2 = modifyString(asmdrand.getMaxValue());
-        error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2);
-        if (error < 0)
-            this.makeError (error, tdp, _ab, asmdrand, "max value of random", tmp2);
 
-        arandom.setValues (tmp1, tmp2);
-        arandom.setFunctionId (asmdrand.getFunctionId());
+        final AvatarStateMachineElement element;
+        final String name = "random";
+        
+        if ( asmdrand.isEnabled() ) {
+        	element = new AvatarRandom( name, asmdrand );
+        	
+        	final AvatarRandom arandom =  (AvatarRandom) element;
 
-        tmp1 = modifyString(asmdrand.getVariable());
-        AvatarAttribute aa = _ab.getAvatarAttributeWithName (tmp1);
+        	String tmp1 = modifyString (asmdrand.getMinValue());
+        	int error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp1);
+        
+        	if (error < 0) {
+        		makeError (error, tdp, _ab, asmdrand, "min value of random", tmp1);
+        	}
 
-        if (aa == null)
-            this.makeError (-3, tdp, _ab, asmdrand, "random", tmp1);
-        // Checking type of variable -> must be an int
-        else if (!(aa.isInt()))
-            this.makeError (error, tdp, _ab, asmdrand, ": variable of random must be of type \"int\"", tmp2);
+        	String tmp2 = modifyString(asmdrand.getMaxValue());
+        	error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2);
+        	
+        	if (error < 0) {
+        		makeError (error, tdp, _ab, asmdrand, "max value of random", tmp2);
+        	}
 
-        arandom.setVariable (tmp1);
+	        arandom.setValues (tmp1, tmp2);
+	        arandom.setFunctionId (asmdrand.getFunctionId());
+	
+	        tmp1 = modifyString(asmdrand.getVariable());
+	        AvatarAttribute aa = _ab.getAvatarAttributeWithName (tmp1);
+	
+	        if (aa == null)
+	            this.makeError (-3, tdp, _ab, asmdrand, "random", tmp1);
+	        // Checking type of variable -> must be an int
+	        else if (!(aa.isInt()))
+	            this.makeError (error, tdp, _ab, asmdrand, ": variable of random must be of type \"int\"", tmp2);
+	
+	        arandom.setVariable(tmp1);
+        }
+        else {
+        	element = new AvatarDummyState( name, asmdrand );
+        }
 
-        asm.addElement (arandom);
-        listE.addCor (arandom, asmdrand);
-        asmdrand.setAVATARID (arandom.getID());
+        asm.addElement (element);
+        listE.addCor( element, asmdrand );
+        asmdrand.setAVATARID( element.getID() );
     }
 
     private void translateAvatarSMDSetTimer (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDSetTimer asmdst) throws CheckingError {
@@ -1670,12 +1752,23 @@ public class AvatarDesignPanelTranslator {
         if (error < 0)
             this.makeError(error, tdp, _ab, asmdst, "value of the timer setting", tmp);
 
-        AvatarSetTimer asettimer = new AvatarSetTimer("settimer__" + aa.getName(), asmdst);
-        asettimer.setTimer (aa);
-        asettimer.setTimerValue (tmp);
-        asm.addElement (asettimer);
-        this.listE.addCor (asettimer, asmdst);
-        asmdst.setAVATARID (asettimer.getID());
+        final AvatarStateMachineElement element;
+        final String name = "settimer__" + aa.getName();
+        
+        if ( asmdst.isEnabled() ) {
+        	element = new AvatarSetTimer( name, asmdst );
+        	
+        	final AvatarSetTimer asettimer = (AvatarSetTimer) element;
+	        asettimer.setTimer( aa );
+	        asettimer.setTimerValue( tmp );
+        }
+        else {
+        	element = new AvatarDummyState( name, asmdst );
+        }
+
+        asm.addElement(element);
+        listE.addCor(element, asmdst);
+        asmdst.setAVATARID(element.getID());
     }
 
     private void translateAvatarSMDResetTimer (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDResetTimer asmdrt) throws CheckingError {
@@ -1688,11 +1781,20 @@ public class AvatarDesignPanelTranslator {
         if (aa.getType() != AvatarType.TIMER)
             throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed parameter: " + tmp + " in timer reset: shall be a parameter of type \"Timer\"");
 
-        AvatarResetTimer aresettimer = new AvatarResetTimer("resettimer__" + aa.getName(), asmdrt);
-        aresettimer.setTimer (aa);
-        asm.addElement(aresettimer);
-        this.listE.addCor (aresettimer, asmdrt);
-        asmdrt.setAVATARID (aresettimer.getID());
+        final AvatarStateMachineElement element;
+        final String name = "resettimer__" + aa.getName();
+        
+        if ( asmdrt.isEnabled() ) {
+        	element= new AvatarResetTimer( name, asmdrt );
+        	( (AvatarResetTimer) element ).setTimer( aa );
+        }
+        else {
+        	element = new AvatarDummyState( name, asmdrt );
+        }
+        
+        asm.addElement( element );
+        listE.addCor( element, asmdrt );
+        asmdrt.setAVATARID( element.getID() );
     }
 
     private void translateAvatarSMDExpireTimer (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDExpireTimer asmdet) throws CheckingError {
@@ -1705,14 +1807,178 @@ public class AvatarDesignPanelTranslator {
         if (aa.getType() != AvatarType.TIMER)
             throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed parameter: " + tmp + " in timer expiration: shall be a parameter of type \"Timer\"");
 
-        AvatarExpireTimer aexpiretimer = new AvatarExpireTimer("expiretimer__" + aa.getName(), asmdet);
-        aexpiretimer.setTimer(aa);
-        asm.addElement(aexpiretimer);
-        this.listE.addCor(aexpiretimer, asmdet);
-        asmdet.setAVATARID(aexpiretimer.getID());
+        final AvatarStateMachineElement avatarElement;
+        final String name = "expiretimer__" + aa.getName();
+        
+        if ( asmdet.isEnabled() ) {
+        	avatarElement = new AvatarExpireTimer( name, asmdet );
+            ( ( AvatarExpireTimer) avatarElement ).setTimer(aa);
+        }
+        else {
+        	avatarElement = new AvatarDummyState( name, asmdet );
+        }
+
+        asm.addElement( avatarElement );
+        this.listE.addCor( avatarElement, asmdet );
+        asmdet.setAVATARID( avatarElement.getID() );
+//        AvatarExpireTimer aexpiretimer = new AvatarExpireTimer("expiretimer__" + aa.getName(), asmdet);
+//        aexpiretimer.setTimer(aa);
+//        asm.addElement(aexpiretimer);
+//        this.listE.addCor(aexpiretimer, asmdet);
+//        asmdet.setAVATARID(aexpiretimer.getID());
+    }
+    
+    private void createGuard( 	final AvatarTransition transition,
+    							final AvatarSMDConnector connector ) {
+    	final AvatarStateMachineOwner block = transition.getBlock();
+    	final String guardStr = modifyString( connector.getEffectiveGuard() );
+        final AvatarGuard guard = AvatarGuard.createFromString( block, guardStr );
+        final int error;
+        
+        if ( guard.isElseGuard() ) {
+        	error = 0;
+        }
+        else {
+        	error = AvatarSyntaxChecker.isAValidGuard( block.getAvatarSpecification(), block, guardStr );
+        }
+        
+        if ( error < 0 ) {
+            makeError( error, connector.tdp, block, connector, "transition guard", guardStr );
+        }
+        else {
+        	transition.setGuard( guard );
+        }
+    }
+    
+    private void createAfterDelay( 	final AvatarTransition transition,
+	    							final AvatarSMDConnector connector ) {
+    	final AvatarStateMachineOwner block = transition.getBlock();
+    	final AvatarSpecification spec = block.getAvatarSpecification();
+    	
+    	String afterMinDelayStr = modifyString( connector.getEffectiveAfterMinDelay() );
+        int error = AvatarSyntaxChecker.isAValidIntExpr( spec, block, afterMinDelayStr );
+        
+        if ( error < 0 ) {
+            makeError( error, connector.tdp, block, connector, "after min delay", afterMinDelayStr );
+            afterMinDelayStr = null;
+        }
+        
+    	String afterMaxDelayStr = modifyString( connector.getEffectiveAfterMaxDelay() );
+        error = AvatarSyntaxChecker.isAValidIntExpr( spec, block, afterMaxDelayStr );
+        
+        if ( error < 0 ) {
+            makeError(error, connector.tdp, block, connector, "after max delay", afterMaxDelayStr );
+            afterMaxDelayStr = null;
+        }
+
+        if ( afterMinDelayStr != null && afterMaxDelayStr != null ) {
+        	transition.setDelays( afterMinDelayStr, afterMaxDelayStr );
+        }
+    }
+    
+    private void createComputeDelay( 	final AvatarTransition transition,
+		    							final AvatarSMDConnector connector ) {
+    	final AvatarStateMachineOwner block = transition.getBlock();
+    	final AvatarSpecification spec = block.getAvatarSpecification();
+
+    	String computeMinDelayStr = modifyString( connector.getEffectiveComputeMinDelay() );
+    	int error = AvatarSyntaxChecker.isAValidIntExpr( spec, block, computeMinDelayStr );
+        
+        if (error < 0) {
+            makeError( error, connector.tdp, block, connector, "compute min ", computeMinDelayStr );
+            computeMinDelayStr = null;
+        }
+        
+    	String computeMaxDelayStr = modifyString( connector.getEffectiveComputeMaxDelay() );
+        error = AvatarSyntaxChecker.isAValidIntExpr( spec, block, computeMaxDelayStr );
+        
+        if (error < 0) {
+            makeError( error, connector.tdp, block, connector, "compute max ", computeMaxDelayStr );
+            computeMaxDelayStr = null;
+        }
+
+        if ( computeMinDelayStr != null && computeMaxDelayStr != null) {
+        	transition.setComputes( computeMinDelayStr, computeMaxDelayStr );
+        }
     }
+    
+    private void createProbability( final AvatarTransition transition,
+    								final AvatarSMDConnector connector ) {
+    	final AvatarStateMachineOwner block = transition.getBlock();
+    	final AvatarSpecification spec = block.getAvatarSpecification();
+    	final String probabilityStr = modifyString( connector.getEffectiveProbability() );
+        final int error = AvatarSyntaxChecker.isAValidProbabilityExpr( spec, block, probabilityStr );
+        
+        if ( error < 0 ) {
+            makeError( error, connector.tdp, block, connector, "probability ", probabilityStr );
+        }
 
-    public void makeStateMachine (AvatarSpecification _as, AvatarStateMachineOwner _ab) {
+        if ( probabilityStr != null && !probabilityStr.isEmpty() ) {
+        	transition.setProbability( Double.parseDouble( probabilityStr ) );
+        }
+    }
+    
+    private void createActions( final AvatarTransition transition,
+					    		final AvatarSMDConnector connector ) {
+    	final AvatarStateMachineOwner block = transition.getBlock();
+    	int error = 0;
+
+    	for( String actionText : connector.getEffectiveActions() ) {
+    		if ( actionText.trim().length() > 0 ) {
+    			actionText = modifyString( actionText.trim() );
+
+    			// Variable assignment or method call?
+    			if ( !isAVariableAssignation( actionText ) ) {
+    				// Method call
+    				int index2 = actionText.indexOf( ";" );
+
+    				if ( index2 != -1 ) {
+    					makeError( error, connector.tdp, block, connector, "transition action", actionText );
+    				}
+
+    				actionText = modifyStringMethodCall( actionText, block.getName() );
+
+    				if ( !AvatarBlock.isAValidMethodCall( block, actionText ) ) {
+    					UICheckingError ce = new UICheckingError( CheckingError.BEHAVIOR_ERROR, "Badly formed transition method call: " + actionText );
+    					// TODO: adapt
+    					// ce.setAvatarBlock(_ab);
+    					ce.setTDiagramPanel( connector.tdp );
+    					ce.setTGComponent( connector );
+    					addCheckingError(ce);
+    				}
+    				else {
+    					transition.addAction( actionText );
+    				}
+    			}
+    			else {
+    				// Variable assignment
+    				error = AvatarSyntaxChecker.isAValidVariableExpr( block.getAvatarSpecification(), block, actionText);
+
+    				if ( error < 0 ) {
+    					makeError( error, connector.tdp, block, connector, "transition action", actionText );
+    				}
+    				else {
+    					transition.addAction( actionText );
+    				}
+    			}
+    		}
+    	}
+    }
+    
+    private void createTransitionInfo( 	final AvatarTransition transition,
+    									final AvatarSMDConnector connector ) {
+        createGuard( transition,connector );
+
+        createAfterDelay( transition, connector);
+
+        createComputeDelay( transition, connector );
+        
+        createProbability( transition, connector );
+
+        createActions( transition, connector );
+    }
+
+    private void makeStateMachine (AvatarSpecification _as, AvatarStateMachineOwner _ab) {
         AvatarBDStateMachineOwner block = (AvatarBDStateMachineOwner) listE.getTG (_ab);
         AvatarStateMachine asm = _ab.getStateMachine ();
 
@@ -1733,7 +1999,7 @@ public class AvatarDesignPanelTranslator {
 
         int size = checkingErrors.size();
 
-        TDiagramPanel tdp = asmdp;
+        //TDiagramPanel tdp = asmdp;
 
         // search for start state
         AvatarSMDStartState tss = null;
@@ -1743,7 +2009,7 @@ public class AvatarDesignPanelTranslator {
                     tss = (AvatarSMDStartState) tgc;
                 else {
                     UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in the state machine diagram of " + name);
-                    ce.setTDiagramPanel(tdp);
+                    ce.setTDiagramPanel( asmdp );
                     addCheckingError(ce);
                     return;
                 }
@@ -1751,7 +2017,7 @@ public class AvatarDesignPanelTranslator {
 
         if (tss == null) {
             UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "No start state in the state machine diagram of " + name);
-            ce.setTDiagramPanel(tdp);
+            ce.setTDiagramPanel( asmdp );
             addCheckingError(ce);
             return;
         }
@@ -1759,27 +2025,32 @@ public class AvatarDesignPanelTranslator {
         // This shall also be true for all composite state: at most one start state!
         if (checkForStartStateOfCompositeStates (asmdp) != null) {
             UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in composite state");
-            ce.setTDiagramPanel(tdp);
+            ce.setTDiagramPanel( asmdp );
             addCheckingError(ce);
             return;
         }
 
         int choiceID = 0;
         // First pass: creating AVATAR components, but no interconnection between them
-        for (TGComponent tgc: asmdp.getAllComponentList ())
+    	// Issue #69:
+        final FindAvatarSMDComponentsToBeTranslatedVisitor componentsToBeTranslatedVisitor = new FindAvatarSMDComponentsToBeTranslatedVisitor();
+        tss.acceptForward( componentsToBeTranslatedVisitor );
+        final Set<TGComponent> componentsToBeTranslated = componentsToBeTranslatedVisitor.getComponentsToBeTranslated();
+
+        for (TGComponent tgc: componentsToBeTranslated/*asmdp.getAllComponentList ()*/)
             try {
                 // Receive signal
                 if (tgc instanceof AvatarSMDReceiveSignal)
-                    this.translateAvatarSMDReceiveSignal (tdp, _as, _ab, (AvatarSMDReceiveSignal) tgc);
+                    this.translateAvatarSMDReceiveSignal ( asmdp, _as, _ab, (AvatarSMDReceiveSignal) tgc);
                 // Send signals
                 else if (tgc instanceof AvatarSMDSendSignal)
-                    this.translateAvatarSMDSendSignal (tdp, _as, _ab, (AvatarSMDSendSignal) tgc);
+                    this.translateAvatarSMDSendSignal ( asmdp, _as, _ab, (AvatarSMDSendSignal) tgc);
                 // Library Function Call
                 else if (tgc instanceof AvatarSMDLibraryFunctionCall)
-                    this.translateAvatarSMDLibraryFunctionCall (tdp, _as, _ab, (AvatarSMDLibraryFunctionCall) tgc);
+                    this.translateAvatarSMDLibraryFunctionCall ( asmdp, _as, _ab, (AvatarSMDLibraryFunctionCall) tgc);
                 // State
                 else if (tgc instanceof AvatarSMDState)
-                    this.translateAvatarSMDState (tdp, _as, _ab, (AvatarSMDState) tgc);
+                    this.translateAvatarSMDState ( asmdp, _as, _ab, (AvatarSMDState) tgc);
                 // Choice
                 else if (tgc instanceof AvatarSMDChoice) {
                     AvatarState astate = new AvatarState ("choice__" + choiceID, tgc);
@@ -1790,16 +2061,16 @@ public class AvatarDesignPanelTranslator {
                 }
                 // Random
                 else if (tgc instanceof AvatarSMDRandom)
-                    this.translateAvatarSMDRandom (tdp, _as, _ab, (AvatarSMDRandom) tgc);
+                    this.translateAvatarSMDRandom ( asmdp, _as, _ab, (AvatarSMDRandom) tgc);
                 // Set timer
                 else if (tgc instanceof AvatarSMDSetTimer)
-                    this.translateAvatarSMDSetTimer (tdp, _as, _ab, (AvatarSMDSetTimer) tgc);
+                    this.translateAvatarSMDSetTimer ( asmdp, _as, _ab, (AvatarSMDSetTimer) tgc);
                 // Reset timer
                 else if (tgc instanceof AvatarSMDResetTimer)
-                    this.translateAvatarSMDResetTimer (tdp, _as, _ab, (AvatarSMDResetTimer) tgc);
+                    this.translateAvatarSMDResetTimer ( asmdp, _as, _ab, (AvatarSMDResetTimer) tgc);
                 // Expire timer
                 else if (tgc instanceof AvatarSMDExpireTimer)
-                    this.translateAvatarSMDExpireTimer (tdp, _as, _ab, (AvatarSMDExpireTimer) tgc);
+                    this.translateAvatarSMDExpireTimer ( asmdp, _as, _ab, (AvatarSMDExpireTimer) tgc);
                 // Start state
                 else if (tgc instanceof AvatarSMDStartState) {
                     AvatarStartState astart = new AvatarStartState("start", tgc);
@@ -1821,7 +2092,7 @@ public class AvatarDesignPanelTranslator {
                 // TODO: adapt
                 // ce.setAvatarBlock (_ab);
                 UICheckingError uice = new UICheckingError(ce);
-                uice.setTDiagramPanel (tdp);
+                uice.setTDiagramPanel ( asmdp );
                 uice.setTGComponent (tgc);
                 uice.addMessagePrefix ("State Machine of " + name + ": ");
                 this.addCheckingError (uice);
@@ -1834,152 +2105,184 @@ public class AvatarDesignPanelTranslator {
         asm.removeAllInternalStartStates();
 
         // Make hierachy between states and elements
-        for (TGComponent tgc: asmdp.getAllComponentList ())
+        for (TGComponent tgc: componentsToBeTranslated/*asmdp.getAllComponentList ()*/) {
             if (tgc != null && tgc.getFather() != null) {
                 AvatarStateMachineElement element1 = (AvatarStateMachineElement)(listE.getObject(tgc));
                 AvatarStateMachineElement element2 = (AvatarStateMachineElement)(listE.getObject(tgc.getFather()));
-                if (element1 != null && element2 != null && element2 instanceof AvatarState)
+                
+                if (element1 != null && /*element2 != null && */element2 instanceof AvatarState) {
                     element1.setState ((AvatarState) element2);
+                }
             }
+        }
 
         // Make next: handle transitions
-        for (TGComponent tgc: asmdp.getAllComponentList ())
-            if (tgc instanceof AvatarSMDConnector) {
-                AvatarSMDConnector asmdco = (AvatarSMDConnector) tgc;
-                TGComponent tgc1 = tdp.getComponentToWhichBelongs (asmdco.getTGConnectingPointP1());
-                TGComponent tgc2 = tdp.getComponentToWhichBelongs (asmdco.getTGConnectingPointP2());
-                if (tgc1 == null || tgc2 == null)
-                    TraceManager.addDev("Tgcs null in Avatar translation");
-                else {
-                    AvatarStateMachineElement element1 = (AvatarStateMachineElement)(listE.getObject(tgc1));
-                    AvatarStateMachineElement element2 = (AvatarStateMachineElement)(listE.getObject(tgc2));
-                    if (element1 != null && element2 != null) {
-                        AvatarTransition at = new AvatarTransition (_ab, "avatar transition", tgc);
-
-                        // Guard
-                        String tmp = modifyString (asmdco.getGuard());
-                        AvatarGuard guard = AvatarGuard.createFromString (_ab, tmp);
-                        if (guard.isElseGuard())
-                            at.setGuard(guard);
-                        else {
-                            int error = AvatarSyntaxChecker.isAValidGuard (_as, _ab, tmp);
-                            if (error < 0)
-                                this.makeError (error, tdp, _ab, tgc, "transition guard", tmp);
-                            else
-                                at.setGuard (guard);
-                        }
-
-                        // Delays
-                        String tmp1 = modifyString (asmdco.getAfterMinDelay ());
-                        int error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1);
-                        if (error < 0) {
-                            this.makeError (error, tdp, _ab, tgc, "after min delay", tmp1);
-                            tmp1 = null;
-                        }
-                        String tmp2 = modifyString (asmdco.getAfterMaxDelay ());
-                        error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp2);
-                        if (error < 0) {
-                            this.makeError(error, tdp, _ab, tgc, "after max delay", tmp2);
-                            tmp2 = null;
-                        }
-
-                        if (tmp1 != null && tmp2 != null)
-                            at.setDelays(tmp1, tmp2);
-
-                        // Compute min and max
-//                        tmp1 = modifyString (asmdco.getComputeMinDelay ());
-//                        error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1);
-//                        if (error < 0) {
-//                            this.makeError (error, tdp, _ab, tgc, "compute min ", tmp1);
-//                            tmp1 = null;
-//                        }
-//                        tmp2 = modifyString(asmdco.getComputeMaxDelay());
-//                        error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2);
-//                        if (error < 0) {
-//                            this.makeError (error, tdp, _ab, tgc, "compute max ", tmp2);
-//                            tmp2 = null;
-//                        }
-//
-//                        if (tmp1 != null && tmp2 != null)
-//                            at.setComputes(tmp1, tmp2);
-
-                        // Probability
-                        tmp1 = asmdco.getProbability ();
-                        if ((tmp1 != null) && (tmp1.length()>0)) {
-                            error = AvatarSyntaxChecker.isAValidProbabilityExpr(_as, _ab, tmp1);
-                            if (error < 0) {
-                                this.makeError(error, tdp, _ab, tgc, "probability ", tmp1);
-                                tmp1 = null;
-                            }
-                            if (tmp1 != null) {
-                                at.setProbability(new Double(tmp1).doubleValue());
-                            }
-                        }
-
-                        // Actions
-                        for(String s: asmdco.getActions())
-                            if (s.trim().length() > 0) {
-                                s = modifyString(s.trim());
-
-                                // Variable assignation or method call?
-                                if (!isAVariableAssignation(s)) {
-                                    // Method call
-                                    int index2 = s.indexOf(";");
-                                    if (index2 != -1)
-                                        this.makeError(error, tdp, _ab, tgc, "transition action", s);
-
-                                    s = modifyStringMethodCall(s, _ab.getName());
-                                    if (!AvatarBlock.isAValidMethodCall (_ab, s)) {
-                                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed transition method call: " + s);
-                                        // TODO: adapt
-                                        // ce.setAvatarBlock(_ab);
-                                        ce.setTDiagramPanel(tdp);
-                                        ce.setTGComponent(tgc);
-                                        addCheckingError(ce);
-                                    } else
-                                        at.addAction(s);
-                                } else {
-                                    // Variable assignation
-                                    error = AvatarSyntaxChecker.isAValidVariableExpr (_as, _ab, s);
-                                    if (error < 0)
-                                        this.makeError (error, tdp, _ab, tgc, "transition action", s);
-                                    else
-                                        at.addAction (s);
-                                }
-                            }
-
-                        element1.addNext (at);
-                        at.addNext (element2);
-                        this.listE.addCor (at, tgc);
-                        tgc.setAVATARID (at.getID());
-                        asm.addElement (at);
-
-                        // Check for after on composite transitions
-                        if (at.hasDelay() && element1 instanceof AvatarState && asm.isACompositeTransition(at)) {
-                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "After clause cannot be used on composite transitions. Use timers instead.");
-                            // TODO: adapt
-                            // ce.setAvatarBlock(_ab);
-                            ce.setTDiagramPanel(tdp);
-                            ce.setTGComponent(tgc);
-                            addCheckingError(ce);
-                        }
-                    }
-                }
-            }
+        final Set<TGConnector> prunedConectors = componentsToBeTranslatedVisitor.getPrunedConnectors();
+
+        for ( final TGConnector connector : asmdp.getConnectors() ) {
+        	//        for (TGComponent tgc: asmdp.getAllComponentList ()) {
+        	//            if (tgc instanceof AvatarSMDConnector) {
+        	//                AvatarSMDConnector asmdco = (AvatarSMDConnector) tgc;
+        	// Issue #69
+        	if ( !prunedConectors.contains( connector ) ) {
+        		FindNextEnabledAvatarSMDConnectingPointVisitor visitor = new FindNextEnabledAvatarSMDConnectingPointVisitor( prunedConectors, componentsToBeTranslated );
+        		connector.getTGConnectingPointP1().acceptBackward( visitor );
+        		final TGConnectingPoint conPoint1 = visitor.getEnabledComponentPoint();
+
+        		if ( conPoint1 != null ) {
+        			visitor = new FindNextEnabledAvatarSMDConnectingPointVisitor( prunedConectors, componentsToBeTranslated );
+        			connector.getTGConnectingPointP2().acceptForward( visitor );
+        			final TGConnectingPoint conPoint2 = visitor.getEnabledComponentPoint();
+
+        			if ( conPoint2 != null ) {
+        				final TGComponent tgc1 = (TGComponent) conPoint1.getFather();//tdp.getComponentToWhichBelongs( connector.getTGConnectingPointP1() );
+        				final TGComponent tgc2 = (TGComponent) conPoint2.getFather();//tdp.getComponentToWhichBelongs( connector.getTGConnectingPointP2() );
+        				//                TGComponent tgc1 = asmdp.getComponentToWhichBelongs (asmdco.getTGConnectingPointP1());
+        				//                TGComponent tgc2 = asmdp.getComponentToWhichBelongs (asmdco.getTGConnectingPointP2());
+        				if (tgc1 == null || tgc2 == null) {
+        					TraceManager.addDev("Tgcs null in Avatar translation");
+        				}
+        				else {
+        					final AvatarStateMachineElement element1 = (AvatarStateMachineElement)(listE.getObject(tgc1));
+        					final AvatarStateMachineElement element2 = (AvatarStateMachineElement)(listE.getObject(tgc2));
+
+        					if ( element1 != null && element2 != null ) {
+        						final AvatarSMDConnector avatarSmdConnector = (AvatarSMDConnector) connector;
+
+        						if ( asm.findEmptyTransition( element1, element2 ) == null ) {
+        							final AvatarTransition at = new AvatarTransition( _ab, "avatar transition", connector );
+        							createTransitionInfo( at, avatarSmdConnector );
+        							//                        AvatarTransition at = new AvatarTransition (_ab, "avatar transition", tgc);
+        							//
+        							//                        // Guard
+        							//                        String tmp = modifyString (asmdco.getGuard());
+        							//                        AvatarGuard guard = AvatarGuard.createFromString (_ab, tmp);
+        							//                        if (guard.isElseGuard())
+        							//                            at.setGuard(guard);
+        							//                        else {
+        							//                            int error = AvatarSyntaxChecker.isAValidGuard (_as, _ab, tmp);
+        							//                            if (error < 0)
+        							//                                this.makeError (error, tdp, _ab, tgc, "transition guard", tmp);
+        							//                            else
+        							//                                at.setGuard (guard);
+        							//                        }
+        							//
+        							//                        // Delays
+        							//                        String tmp1 = modifyString (asmdco.getAfterMinDelay ());
+        							//                        int error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1);
+        							//                        if (error < 0) {
+        							//                            this.makeError (error, tdp, _ab, tgc, "after min delay", tmp1);
+        							//                            tmp1 = null;
+        							//                        }
+        							//                        String tmp2 = modifyString (asmdco.getAfterMaxDelay ());
+        							//                        error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp2);
+        							//                        if (error < 0) {
+        							//                            this.makeError(error, tdp, _ab, tgc, "after max delay", tmp2);
+        							//                            tmp2 = null;
+        							//                        }
+        							//
+        							//                        if (tmp1 != null && tmp2 != null)
+        							//                            at.setDelays(tmp1, tmp2);
+
+        							// Compute min and max
+        							//                        tmp1 = modifyString (asmdco.getComputeMinDelay ());
+        							//                        error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1);
+        							//                        if (error < 0) {
+        							//                            this.makeError (error, tdp, _ab, tgc, "compute min ", tmp1);
+        							//                            tmp1 = null;
+        							//                        }
+        							//                        tmp2 = modifyString(asmdco.getComputeMaxDelay());
+        							//                        error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2);
+        							//                        if (error < 0) {
+        							//                            this.makeError (error, tdp, _ab, tgc, "compute max ", tmp2);
+        							//                            tmp2 = null;
+        							//                        }
+        							//
+        							//                        if (tmp1 != null && tmp2 != null)
+        							//                            at.setComputes(tmp1, tmp2);
+
+        							// Probability
+        							//                        tmp1 = asmdco.getProbability ();
+        							//                        if ((tmp1 != null) && (tmp1.length()>0)) {
+        							//                            error = AvatarSyntaxChecker.isAValidProbabilityExpr(_as, _ab, tmp1);
+        							//                            if (error < 0) {
+        							//                                this.makeError(error, tdp, _ab, tgc, "probability ", tmp1);
+        							//                                tmp1 = null;
+        							//                            }
+        							//                            if (tmp1 != null) {
+        							//                                at.setProbability(new Double(tmp1).doubleValue());
+        							//                            }
+        							//                        }
+        							//
+        							//                        // Actions
+        							//                        for(String s: asmdco.getActions())
+        							//                            if (s.trim().length() > 0) {
+        							//                                s = modifyString(s.trim());
+        							//
+        							//                                // Variable assignation or method call?
+        							//                                if (!isAVariableAssignation(s)) {
+        							//                                    // Method call
+        							//                                    int index2 = s.indexOf(";");
+        							//                                    if (index2 != -1)
+        							//                                        this.makeError(error, tdp, _ab, tgc, "transition action", s);
+        							//
+        							//                                    s = modifyStringMethodCall(s, _ab.getName());
+        							//                                    if (!AvatarBlock.isAValidMethodCall (_ab, s)) {
+        							//                                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed transition method call: " + s);
+        							//                                        // TODO: adapt
+        							//                                        // ce.setAvatarBlock(_ab);
+        							//                                        ce.setTDiagramPanel(tdp);
+        							//                                        ce.setTGComponent(tgc);
+        							//                                        addCheckingError(ce);
+        							//                                    } else
+        							//                                        at.addAction(s);
+        							//                                } else {
+        							//                                    // Variable assignation
+        							//                                    error = AvatarSyntaxChecker.isAValidVariableExpr (_as, _ab, s);
+        							//                                    if (error < 0)
+        							//                                        this.makeError (error, tdp, _ab, tgc, "transition action", s);
+        							//                                    else
+        							//                                        at.addAction (s);
+        							//                                }
+        							//                            }
+
+        							element1.addNext( at );
+        							at.addNext( element2 );
+        							listE.addCor( at, connector );
+        							connector.setAVATARID( at.getID() );
+        							asm.addElement( at );
+
+        							// Check for after on composite transitions
+        							if (at.hasDelay() && element1 instanceof AvatarState && asm.isACompositeTransition(at)) {
+        								UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "After clause cannot be used on composite transitions. Use timers instead.");
+        								// TODO: adapt
+        								// ce.setAvatarBlock(_ab);
+        								ce.setTDiagramPanel( asmdp );
+        								ce.setTGComponent( connector );
+        								addCheckingError( ce );
+        							}
+        						}
+        					}
+        				}
+        			}
+        		}
+        	}
+        }
 
         asm.handleUnfollowedStartState(_ab);
 
         // Investigate all states -> put warnings for all empty transitions from a state to the same one (infinite loop)
       //  int nb;
-        for (AvatarStateMachineElement asmee: asm.getListOfElements())
+        for (AvatarStateMachineElement asmee: asm.getListOfElements()) {
             if (asmee instanceof AvatarState && ((AvatarState)asmee).hasEmptyTransitionsOnItself(asm) > 0) {
                 UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "State(s) " + asmee.getName() + " has empty transitions on itself");
                 // TODO: adapt
                 // ce.setAvatarBlock(_ab);
-                ce.setTDiagramPanel(tdp);
+                ce.setTDiagramPanel( asmdp );
                 ce.setTGComponent((TGComponent)(asmee.getReferenceObject()));
                 addWarning(ce);
             }
+        }
     }
 
     private void makeError(int _error, TDiagramPanel _tdp, AvatarStateMachineOwner _ab, TGComponent _tgc, String _info, String _element) {
@@ -2058,23 +2361,23 @@ public class AvatarDesignPanelTranslator {
                         //TraceManager.addDev("Searching signal with name " + name1 +  " in block " + b1.getName());
                         atas1 = b1.getAvatarSignalWithName(name1);
                         atas2 = b2.getAvatarSignalWithName(name2);
-			if ((atas1 != null) && (atas2 != null)) {
-			    if(atas1.isCompatibleWith(atas2)) {
-				//TraceManager.addDev("Signals " + atas1 + " and " + atas2 + " are compatible");
-				r.addSignals(atas1, atas2);
-			    } else {
-				//TraceManager.addDev("Signals " + atas1 + " and " + atas2 + " are NOT compatible");
-				UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Wrong signal association betwen " + atas1 + " and " + atas2);
-			    // TODO: adapt
-			    // ce.setAvatarBlock(_ab);
-				ce.setTDiagramPanel(tgc.getTDiagramPanel());
-			    ce.setTGComponent(tgc);
-			    addCheckingError(ce);
-			    }
-			} else {
-			    TraceManager.addDev("Null signals in AVATAR relation: " + name1 + " " + name2);
-			}
-			
+
+                        if ((atas1 != null) && (atas2 != null)) {
+						    if(atas1.isCompatibleWith(atas2)) {
+							//TraceManager.addDev("Signals " + atas1 + " and " + atas2 + " are compatible");
+							r.addSignals(atas1, atas2);
+						    } else {
+							//TraceManager.addDev("Signals " + atas1 + " and " + atas2 + " are NOT compatible");
+							UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Wrong signal association betwen " + atas1 + " and " + atas2);
+						    // TODO: adapt
+						    // ce.setAvatarBlock(_ab);
+							ce.setTDiagramPanel(tgc.getTDiagramPanel());
+						    ce.setTGComponent(tgc);
+						    addCheckingError(ce);
+						    }
+						} else {
+						    TraceManager.addDev("Null signals in AVATAR relation: " + name1 + " " + name2);
+						}
                     }
 		    
                     // Attribute of the relation
diff --git a/src/main/java/ui/CDElement.java b/src/main/java/ui/CDElement.java
index 3458d8766a22a52c778f04c4e06f6fe06b835cfc..d87b8033e0a203ce347271d39e454bf9fd48a259 100755
--- a/src/main/java/ui/CDElement.java
+++ b/src/main/java/ui/CDElement.java
@@ -35,14 +35,9 @@
  * The fact that you are presently reading this means that you have had
  * knowledge of the CeCILL license and that you accept its terms.
  */
-
-
-
-
  
 package ui;
 
-
 /**
  * Interface CDElement
  * Creation : 22/12/2003
@@ -55,4 +50,21 @@ public interface CDElement {
 	int getWidth();
 	int getHeight();
 	String getName();
+
+	// Issue #69
+	void acceptForward( ICDElementVisitor visitor );
+	
+	void acceptBackward( ICDElementVisitor visitor );
+
+	boolean canBeDisabled();
+
+	void setEnabled( boolean _enabled );
+
+	void doSetEnabled( boolean _enabled );
+
+    boolean isEnabled();
+
+    boolean isEnabled( boolean checkBranch );
+
+    boolean canLabelBeDisabled( TGCOneLineText label );
 }
diff --git a/src/main/java/ui/CanBeDisabled.java b/src/main/java/ui/CanBeDisabled.java
deleted file mode 100755
index e7261314e735b085217b52062cf7a791547c3581..0000000000000000000000000000000000000000
--- a/src/main/java/ui/CanBeDisabled.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille
- * 
- * ludovic.apvrille AT enst.fr
- * 
- * This software is a computer program whose purpose is to allow the
- * edition of TURTLE analysis, design and deployment diagrams, to
- * allow the generation of RT-LOTOS or Java code from this diagram,
- * and at last to allow the analysis of formal validation traces
- * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP
- * from INRIA Rhone-Alpes.
- * 
- * This software is governed by the CeCILL  license under French law and
- * abiding by the rules of distribution of free software.  You can  use,
- * modify and/ or redistribute the software under the terms of the CeCILL
- * license as circulated by CEA, CNRS and INRIA at the following URL
- * "http://www.cecill.info".
- * 
- * As a counterpart to the access to the source code and  rights to copy,
- * modify and redistribute granted by the license, users are provided only
- * with a limited warranty  and the software's author,  the holder of the
- * economic rights,  and the successive licensors  have only  limited
- * liability.
- * 
- * In this respect, the user's attention is drawn to the risks associated
- * with loading,  using,  modifying and/or developing or reproducing the
- * software by the user in light of its specific status of free software,
- * that may mean  that it is complicated to manipulate,  and  that  also
- * therefore means  that it is reserved for developers  and  experienced
- * professionals having in-depth computer knowledge. Users are therefore
- * encouraged to load and test the software's suitability as regards their
- * requirements in conditions enabling the security of their systems and/or
- * data to be ensured and,  more generally, to use and operate it in the
- * same conditions as regards security.
- * 
- * The fact that you are presently reading this means that you have had
- * knowledge of the CeCILL license and that you accept its terms.
- */
-
-
-
-
-
-package ui;
-
-/**
- * Class CanBeDisabled
- * Components that can be enabled/disabled with a mouse click
- * Creation: 22/04/2015
- * @version 1.0 22/04/2015
- * @author Ludovic APVRILLE
- */
-public interface CanBeDisabled  {
-    boolean isEnabled();
-    void setEnabled(boolean _enabled);
-}
diff --git a/src/main/java/ui/ColorManager.java b/src/main/java/ui/ColorManager.java
index a454f3a88d285700308620b3a398088dd8810e39..e4a49c55fa04d4265c5ecb3b32b6733c6ef4138c 100755
--- a/src/main/java/ui/ColorManager.java
+++ b/src/main/java/ui/ColorManager.java
@@ -36,16 +36,12 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
 import myutil.GraphicLib;
 
 import java.awt.*;
 
-
 /**
  * Class IconManager
  * Creation: 15/12/2003
@@ -56,6 +52,11 @@ public class ColorManager {
     public static final Color DEFAULT = Color.black;
 
     public static final Color NORMAL_0 = Color.black;
+
+    // Issue #69: Disabling components in diagram
+    public static  Color DISABLED = new Color(214, 206, 198);
+    public static  Color DISABLED_FILLING = Color.WHITE;
+    
     public static final Color POINTER_ON_ME_0 = Color.red;
     public static final Color ACCESSIBILITY = Color.red;
     public static final Color ACCESSIBILITY_UNKNOWN = Color.DARK_GRAY;
@@ -149,14 +150,20 @@ public class ColorManager {
     //public static  Color ATD_BLOCK = new Color(196, 232, 195);
     public static  Color ATD_BLOCK = new Color(218, 218, 218);
     public static  Color ATD_ATTACK = new Color(214, 187, 158);
-    public static  Color ATD_ATTACK_DISABLED = new Color(214, 206, 198);
+
+    // Issue # 69: Using default disabled color
+    //public static  Color ATD_ATTACK_DISABLED = new Color(214, 206, 198);
+    
     public static  Color ATD_ROOT_ATTACK = new Color(243, 131, 10);
     public static  Color ATD_CONSTRAINT = new Color(191, 153, 161);
     public static  Color ATD_COUNTERMEASURE = new Color(209, 218, 174);
 
     public static  Color FTD_BLOCK = new Color(218, 218, 218);
     public static  Color FTD_FAULT = new Color(214, 187, 158);
-    public static  Color FTD_FAULT_DISABLED = new Color(214, 206, 198);
+
+    // Issue # 69: Using default disabled color
+    // public static  Color FTD_FAULT_DISABLED = new Color(214, 206, 198);
+    
     public static  Color FTD_ROOT_FAULT = new Color(243, 131, 10);
     public static  Color FTD_CONSTRAINT = new Color(191, 153, 161);
     public static  Color FTD_COUNTERMEASURE = new Color(209, 218, 174);
@@ -222,37 +229,52 @@ public class ColorManager {
     public static final Color InteractiveSimulationText_TERM = new Color(241, 6, 6);
     public static final Color InteractiveSimulationText_UNKNOWN = new Color(6, 6, 241);
 
-    public final static void setColor(Graphics g, int state, int type) {
+    // Issue #69: Managing color for disabled diagram components
+    public final static void setColor( 	Graphics g,
+    									int state,
+    									int type ) {
+    	setColor( g, state, type, true );
+    }
+
+    public final static void setColor(	Graphics g, 
+    									int state,
+    									int type,
+    									boolean enabled ) {
         if (type == 0) {
-            switch(state) {
-            case 0:
-                g.setColor(NORMAL_0);
-                break;
-            case 1:
-                g.setColor(POINTER_ON_ME_0);
-                GraphicLib.setMediumStroke(g);
-                break;
-            case 2:
-                g.setColor(SELECTED_0);
-                break;
-            case 3:
-                g.setColor(MOVING_0);
-                break;
-            case 4:
-                g.setColor(ADDING_0);
-                break;
-            case 5:
-                g.setColor(POINTED_0);
-                break;
-            case 6:
-                g.setColor(RESIZE_POINTED);
-                break;
-            case 7:
-                g.setColor(RESIZE_POINTED);
-                break;
-            default:
-                g.setColor(DEFAULT);
-            }
+        	if ( !enabled ) {
+                g.setColor( DISABLED );
+        	}
+        	else {
+	            switch(state) {
+	            case 0:
+	                g.setColor(NORMAL_0);
+	                break;
+	            case 1:
+	                g.setColor(POINTER_ON_ME_0);
+	                GraphicLib.setMediumStroke(g);
+	                break;
+	            case 2:
+	                g.setColor(SELECTED_0);
+	                break;
+	            case 3:
+	                g.setColor(MOVING_0);
+	                break;
+	            case 4:
+	                g.setColor(ADDING_0);
+	                break;
+	            case 5:
+	                g.setColor(POINTED_0);
+	                break;
+	            case 6:
+	                g.setColor(RESIZE_POINTED);
+	                break;
+	            case 7:
+	                g.setColor(RESIZE_POINTED);
+	                break;
+	            default:
+	                g.setColor(DEFAULT);
+	            }
+        	}
         }
     }
 
@@ -298,10 +320,8 @@ public class ColorManager {
         AVATAR_RECEIVE_SIGNAL = Color.white;
         AVATAR_ASSUMPTION_ATTRIBUTES = Color.white;
         AVATAR_ASSUMPTION_TOP = Color.white;
-	SYSMLSEC_PARTITIONING = Color.white;
-	SYSMLSEC_SWDESIGN = Color.white;
-	SYSMLSEC_REQ = Color.white;
-
+		SYSMLSEC_PARTITIONING = Color.white;
+		SYSMLSEC_SWDESIGN = Color.white;
+		SYSMLSEC_REQ = Color.white;
     }
-
 } // Class Color
diff --git a/src/main/java/ui/Expression.java b/src/main/java/ui/Expression.java
new file mode 100644
index 0000000000000000000000000000000000000000..08cf3df2c60b9f429e4d5def99aa2d8bec385756
--- /dev/null
+++ b/src/main/java/ui/Expression.java
@@ -0,0 +1,69 @@
+package ui;
+
+public class Expression {
+	
+	private String text;
+	
+	private final String nullText;
+	
+	private final String label;
+
+	private boolean enabled;
+	
+	public Expression( final String text ) {
+		this( text, null, null );
+	}
+	
+	public Expression( 	final String text,
+						final String nullText,
+						final String label ) {
+		this.text = text;
+		this.nullText = nullText;
+		this.label = label;
+		this.enabled = true;
+	}
+//
+//	public Expression( 	final String text,
+//						final boolean enabled,
+//						final String nullText ) {
+//	}
+
+	public String getText() {
+		return text;
+	}
+
+	public void setText( String text ) {
+		this.text = text;
+	}
+
+	public boolean isEnabled() {
+		return enabled;
+	}
+
+	public void setEnabled(boolean enabled) {
+		this.enabled = enabled;
+	}
+	
+	public String getEffectiveExpression( final String defaultExpr ) {
+		return isEnabled() ? getText() : defaultExpr;
+	}
+	
+	public boolean isNull() {
+		if ( nullText == null ) {
+			return getText() == null;
+		}
+		
+		return nullText.equals( getText() );
+	}
+	
+	@Override
+	public String toString() {
+		final String text = isNull() ? "null" : getText();
+
+		return label == null ? text : String.format( label, text );
+	}
+
+	public String getLabel() {
+		return label;
+	}
+}
diff --git a/src/main/java/ui/FindNextEnabledConnectingPointVisitor.java b/src/main/java/ui/FindNextEnabledConnectingPointVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..32c0a42e98b42e385f282a1c112de69dddd0a9e4
--- /dev/null
+++ b/src/main/java/ui/FindNextEnabledConnectingPointVisitor.java
@@ -0,0 +1,71 @@
+package ui;
+
+import java.util.Set;
+
+public class FindNextEnabledConnectingPointVisitor extends TrackingCDElementVisitor {
+	
+	private final Set<TGConnector> disabledConnectors;
+	
+	private TGConnectingPoint enabledConnectingPoint;
+
+	private TGConnectingPoint previousEnabledConnectingPoint;
+	
+	public FindNextEnabledConnectingPointVisitor( final Set<TGConnector> disabledConnectors ) {
+		super();
+		
+		this.disabledConnectors = disabledConnectors;
+		enabledConnectingPoint = null;
+	}
+
+	@Override
+	public boolean visit( final CDElement element ) {
+		if ( !super.visit( element ) ) {
+			return false;
+		}
+		
+		if ( element instanceof TGConnector ) {
+			final TGConnector connector = (TGConnector) element;
+			
+			if ( pruneConnector( connector ) ) {
+				disabledConnectors.add( (TGConnector) element );
+
+				return true;
+			}
+			
+			enabledConnectingPoint = previousEnabledConnectingPoint;
+			
+			return false;
+		}
+		
+		if ( element instanceof TGConnectingPoint ) {
+			final TGConnectingPoint point = (TGConnectingPoint) element;
+			final CDElement father = point.getFather();
+			previousEnabledConnectingPoint = point;
+		
+			if ( !pruneElement( father ) ) {
+				enabledConnectingPoint = point;
+
+				return false;
+			}
+		}
+
+		return true;
+	}
+	
+	protected boolean pruneElement( final CDElement diagramElement ) {
+		return !diagramElement.isEnabled() || !( diagramElement instanceof TGComponent ) || diagramElement instanceof TGConnector;
+	}
+
+	
+	protected boolean pruneConnector( final TGConnector connector ) {
+		return true;
+	}
+
+	public TGConnectingPoint getEnabledComponentPoint() {
+		return enabledConnectingPoint;
+	}
+
+	public Set<TGConnector> getDisabledConnectors() {
+		return disabledConnectors;
+	}
+}
diff --git a/src/main/java/ui/ForwardComponentsEnabledVisitor.java b/src/main/java/ui/ForwardComponentsEnabledVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..21f28cb74f23948114945db84e36564c53024c56
--- /dev/null
+++ b/src/main/java/ui/ForwardComponentsEnabledVisitor.java
@@ -0,0 +1,31 @@
+package ui;
+
+public class ForwardComponentsEnabledVisitor extends TrackingCDElementVisitor {
+	
+	private boolean enabled;
+
+	public ForwardComponentsEnabledVisitor() {
+		super();
+		
+		enabled = true;
+	}
+
+	@Override
+	public boolean visit(CDElement element) {
+		if ( !super.visit( element ) ) {
+			return false;
+		}
+		
+		if ( element.canBeDisabled() && !( element instanceof TGConnector ) ) {
+			enabled = element.isEnabled();
+			
+			return false;
+		}
+		
+		return true;
+	}
+	
+	public boolean isEnabled() {
+		return enabled;
+	}
+}
diff --git a/src/main/java/ui/GNCModeling.java b/src/main/java/ui/GNCModeling.java
index 368b47c25185ac94e2a7bf30567a3499f30f834e..e470accc10c968c1964047f585959a4d647bf325 100755
--- a/src/main/java/ui/GNCModeling.java
+++ b/src/main/java/ui/GNCModeling.java
@@ -36,10 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
-
 package ui;
 
 import myutil.TreeCell;
@@ -49,6 +45,7 @@ import ui.ncdd.*;
 
 import java.util.ArrayList;
 import java.util.LinkedList;
+import java.util.List;
 import java.util.ListIterator;
 
 /**
@@ -64,16 +61,14 @@ public class GNCModeling  {
 	private NCDiagramPanel ncdp;
     private LinkedList<CheckingError> checkingErrors, warnings;
 	private CorrespondanceTGElement listE;
-	private NCStructure nc;
+	//private NCStructure nc;
 	
 	private static int PATH_INDEX = 0;
-	
-    
+	    
     public GNCModeling(NCPanel _ncp) {
         ncp = _ncp;
 		ncdp = ncp.ncdp;
     }
-	
     
 	public NCStructure translateToNCStructure() {
 		PATH_INDEX = 0;
@@ -93,8 +88,6 @@ public class GNCModeling  {
 			manageParameters();
 		}
 		
-		//
-		
         return ncs;
     }
 	
@@ -102,8 +95,7 @@ public class GNCModeling  {
 		return listE;
 	}
     
-    
-    public LinkedList<CheckingError> getCheckingErrors() {
+    public List<CheckingError> getCheckingErrors() {
         return checkingErrors;
     }
     
@@ -112,16 +104,16 @@ public class GNCModeling  {
     }
     
 	private void addEquipments() {
-		ListIterator iterator = ncdp.getListOfEqNode().listIterator();
+		ListIterator<NCEqNode> iterator = ncdp.getListOfEqNode().listIterator();
 		NCEqNode node;
 		NCEquipment eq;
-		NCConnectorNode con;
-		int cpt;
+	//	NCConnectorNode con;
+		//int cpt;
 		
 		
 		
 		while(iterator.hasNext()) {
-			node = (NCEqNode)(iterator.next());
+			node = iterator.next();
 			
 			// Find the only interface of that Equipment
 			// If more than one interface -> error
@@ -163,13 +155,13 @@ public class GNCModeling  {
 	}
 	
 	private void addSwitches() {
-		ListIterator iterator = ncdp.getListOfSwitchNode().listIterator();
+		ListIterator<NCSwitchNode> iterator = ncdp.getListOfSwitchNode().listIterator();
 		NCSwitchNode node;
 		NCSwitch sw;
 		NCCapacityUnit unit = new NCCapacityUnit();
 		
 		while(iterator.hasNext()) {
-			node = (NCSwitchNode)(iterator.next());
+			node = iterator.next();
 			
 			sw= new NCSwitch();
 			sw.setName(node.getNodeName());
@@ -184,13 +176,13 @@ public class GNCModeling  {
 	}
 	
 	private void addTraffics() {
-		ListIterator iterator = ncdp.getTrafficArtifacts().listIterator();
+		ListIterator<NCTrafficArtifact> iterator = ncdp.getTrafficArtifacts().listIterator();
 		NCTrafficArtifact arti;
 		NCTraffic tr;
 		NCTimeUnit unit;
 		
 		while(iterator.hasNext()) {
-			arti = (NCTrafficArtifact)(iterator.next());
+			arti = iterator.next();
 			tr = new NCTraffic();
 			tr.setName(arti.getValue());
 			tr.setPeriodicType(arti.getPeriodicType());
@@ -210,9 +202,9 @@ public class GNCModeling  {
 	}
 	
 	private void addLinks() {
-		ListIterator iterator = ncdp.getListOfLinks().listIterator();
+		ListIterator<NCConnectorNode> iterator = ncdp.getListOfLinks().listIterator();
 		NCConnectorNode nccn;
-		NCLink lk = null, lkr;
+		NCLink lk = null;//, lkr;
 		boolean added;
 		TGComponent tgc;
 		TGConnectingPoint tp;
@@ -223,7 +215,7 @@ public class GNCModeling  {
 		
 		while(iterator.hasNext()) {
 			added = false;
-			nccn = (NCConnectorNode)(iterator.next());
+			nccn = iterator.next();
 			
 			if (ncdp.isALinkBetweenEquipment(nccn)) {
 				UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Link connected between two equipments: " + nccn.getInterfaceName());
@@ -305,19 +297,24 @@ public class GNCModeling  {
 						nccu.setUnit(nccn.getCapacityUnit());
 						lk.setCapacityUnit(nccu);
 					} else {
-						if (switch1 == null) {
+						if (switch1 == null && switch2 != null ) {
 							lk.setCapacity(switch2.getCapacity());
 							nccu = new NCCapacityUnit();
 							nccu.setUnit(switch2.getCapacityUnit());
 							lk.setCapacityUnit(nccu);
 						}
-						if (switch2 == null) {
+						// DB: Seems to be a bug...
+						else if (switch2 == null && switch1 != null ) {
 							lk.setCapacity(switch1.getCapacity());
 							nccu = new NCCapacityUnit();
-							nccu.setUnit(switch2.getCapacityUnit());
+							
+							// DB looks like a copy paste error
+							nccu.setUnit(switch1.getCapacityUnit());
+//							nccu.setUnit(switch2.getCapacityUnit());
 							lk.setCapacityUnit(nccu);
 						}
-						if ((switch1 != null) && (switch2 != null)) {
+						else {
+						//if ((switch1 != null) && (switch2 != null)) {
 							if (switch1.getCapacity() != switch2.getCapacity()) {
 								UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Link with no capacity between two switches of different capacity: " + nccn.getInterfaceName());
 								ce.setTDiagramPanel(ncdp);
@@ -357,18 +354,18 @@ public class GNCModeling  {
 		// Consider each traffic
 		// For each traffic, its builds a tree
 		// Then, its generates the corresponding paths
-		ListIterator iterator = ncdp.getTrafficArtifacts().listIterator();
+		ListIterator<NCTrafficArtifact> iterator = ncdp.getTrafficArtifacts().listIterator();
 		NCTrafficArtifact arti;
 		NCTraffic tr;
 		TreeCell tree;
 		int ret;
-		NCPath path;
+		//NCPath path;
 		NCEqNode node;
 		NCEquipment eq;
-		ArrayList<String> list;
+		List<String> list;
 		
 		while(iterator.hasNext()) {
-			arti = (NCTrafficArtifact)(iterator.next());
+			arti = iterator.next();
 			
 			tr = ncs.getTrafficByName(arti.getValue());
 			if (tr == null) {
@@ -399,7 +396,7 @@ public class GNCModeling  {
 		}
 	}
 	
-	public void exploreTree(TreeCell tree, ArrayList<String> list, NCEquipment origin, NCTraffic traffic) {
+	private void exploreTree(TreeCell tree, List<String> list, NCEquipment origin, NCTraffic traffic) {
 		NCSwitchNode sw;
 		NCSwitch ncsw;
 		NCLinkedElement ncle;
@@ -505,7 +502,7 @@ public class GNCModeling  {
 		
 		// Find the only interface of that Equipment
 		// If more than one interface -> error
-		ArrayList<NCSwitchNode> listsw = ncdp.getSwitchesOfEq(node);
+		List<NCSwitchNode> listsw = ncdp.getSwitchesOfEq(node);
 		
 		if (listsw.size() == 0) {
 			UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Equipment " + node.getName() + " has non interface: traffic " + arti.getValue() + " cannot be sent over the network");
@@ -569,10 +566,10 @@ public class GNCModeling  {
 		TreeCell cell;
 		NCConnectorNode nextArriving;
 		
-		ArrayList<NCRoute> computed = new ArrayList<NCRoute>(); 
+		List<NCRoute> computed = new ArrayList<NCRoute>(); 
 		
 		// Get all routes concerning that traffic on that switch
-		ArrayList<NCRoute> routes = ncdp.getAllRoutesFor(sw, arti);
+		List<NCRoute> routes = ncdp.getAllRoutesFor(sw, arti);
 		
 		//
 		
@@ -703,9 +700,9 @@ public class GNCModeling  {
 	}
 	
 	public void manageParameters() {
-		ListIterator iterator;
+		//ListIterator iterator;
 		NCEqNode node1, node2;
-		ArrayList<NCConnectorNode> cons1, cons2;
+		List<NCConnectorNode> cons1, cons2;
 		NCConnectorNode con1, con2;
 		int i;
 		int parameter1, parameter2;
@@ -716,14 +713,14 @@ public class GNCModeling  {
 		//NCPath path1;
 		
 		//ArrayList<NCEquipment> newEquipments = new ArrayList<NCEquipment>();
-		ArrayList<NCTraffic> newTraffics = new ArrayList<NCTraffic>();
-		ArrayList<NCLink> newLinks = new ArrayList<NCLink>();
-		ArrayList<NCPath> newPaths = new ArrayList<NCPath>();
+		//List<NCTraffic> newTraffics = new ArrayList<NCTraffic>();
+		//List<NCLink> newLinks = new ArrayList<NCLink>();
+		List<NCPath> newPaths = new ArrayList<NCPath>();
 		
-		ArrayList<NCEquipment> oldEquipments = new ArrayList<NCEquipment>();
-		ArrayList<NCTraffic> oldTraffics = new ArrayList<NCTraffic>();
-		ArrayList<NCLink> oldLinks = new ArrayList<NCLink>();
-		ArrayList<NCPath> oldPaths = new ArrayList<NCPath>();
+		List<NCEquipment> oldEquipments = new ArrayList<NCEquipment>();
+		List<NCTraffic> oldTraffics = new ArrayList<NCTraffic>();
+		List<NCLink> oldLinks = new ArrayList<NCLink>();
+		List<NCPath> oldPaths = new ArrayList<NCPath>();
 		
 		// Are there any path to duplicate?
 		for(NCPath path: ncs.paths) {
@@ -862,5 +859,4 @@ public class GNCModeling  {
 			cpt ++;
 		}
 	}
-
 }
diff --git a/src/main/java/ui/GTMLModeling.java b/src/main/java/ui/GTMLModeling.java
index ea8fa2e3678ace381db547c86b47f79c866dcb40..f3d8a5b4412a30b2f31ef81b7d28e5886d29ff87 100755
--- a/src/main/java/ui/GTMLModeling.java
+++ b/src/main/java/ui/GTMLModeling.java
@@ -38,35 +38,103 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui;
 
+import java.awt.Point;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Vector;
+
 import avatartranslator.AvatarSpecification;
-import myutil.Conversion;
 import myutil.TraceManager;
-import tmltranslator.*;
+import tmltranslator.HwA;
+import tmltranslator.HwBridge;
+import tmltranslator.HwBus;
+import tmltranslator.HwCPU;
+import tmltranslator.HwCommunicationNode;
+import tmltranslator.HwCrossbar;
+import tmltranslator.HwDMA;
+import tmltranslator.HwExecutionNode;
+import tmltranslator.HwFPGA;
+import tmltranslator.HwLink;
+import tmltranslator.HwMemory;
+import tmltranslator.HwNode;
+import tmltranslator.HwVGMN;
+import tmltranslator.SecurityPattern;
+import tmltranslator.TMLActivity;
+import tmltranslator.TMLActivityElement;
+import tmltranslator.TMLActivityElementChannel;
+import tmltranslator.TMLArchitecture;
+import tmltranslator.TMLAttribute;
+import tmltranslator.TMLCP;
+import tmltranslator.TMLCPError;
+import tmltranslator.TMLCPLib;
+import tmltranslator.TMLCPLibArtifact;
+import tmltranslator.TMLCPSyntaxChecking;
+import tmltranslator.TMLChannel;
+import tmltranslator.TMLCheckingError;
+import tmltranslator.TMLElement;
+import tmltranslator.TMLError;
+import tmltranslator.TMLEvent;
+import tmltranslator.TMLExecI;
+import tmltranslator.TMLMapping;
+import tmltranslator.TMLModeling;
+import tmltranslator.TMLPort;
+import tmltranslator.TMLRequest;
+import tmltranslator.TMLSyntaxChecking;
+import tmltranslator.TMLTask;
+import tmltranslator.TMLType;
 import tmltranslator.modelcompiler.ArchUnitMEC;
 import tmltranslator.tmlcp.TMLCPElement;
 import tmltranslator.tmlcp.TMLSDAction;
 import tmltranslator.tmlcp.TMLSDEvent;
 import tmltranslator.tmlcp.TMLSDMessage;
 import translator.CheckingError;
-import ui.tmlad.*;
+import ui.tmlad.TMLADEncrypt;
+import ui.tmlad.TMLADReadChannel;
+import ui.tmlad.TMLADWriteChannel;
+import ui.tmlad.TMLActivityDiagramPanel;
 import ui.tmlcd.TMLChannelOperator;
 import ui.tmlcd.TMLEventOperator;
 import ui.tmlcd.TMLRequestOperator;
 import ui.tmlcd.TMLTaskOperator;
-import ui.tmlcompd.*;
-import ui.tmldd.*;
+import ui.tmlcompd.TMLCChannelOutPort;
+import ui.tmlcompd.TMLCFork;
+import ui.tmlcompd.TMLCJoin;
+import ui.tmlcompd.TMLCPath;
+import ui.tmlcompd.TMLCPortConnector;
+import ui.tmlcompd.TMLCPrimitiveComponent;
+import ui.tmlcompd.TMLCPrimitivePort;
+import ui.tmlcompd.TMLCRecordComponent;
+import ui.tmldd.TMLArchiArtifact;
+import ui.tmldd.TMLArchiBUSNode;
+import ui.tmldd.TMLArchiBridgeNode;
+import ui.tmldd.TMLArchiCPNode;
+import ui.tmldd.TMLArchiCPUNode;
+import ui.tmldd.TMLArchiCommunicationArtifact;
+import ui.tmldd.TMLArchiCommunicationNode;
+import ui.tmldd.TMLArchiConnectorNode;
+import ui.tmldd.TMLArchiCrossbarNode;
+import ui.tmldd.TMLArchiDMANode;
+import ui.tmldd.TMLArchiEventArtifact;
+import ui.tmldd.TMLArchiFPGANode;
+import ui.tmldd.TMLArchiFirewallNode;
+import ui.tmldd.TMLArchiHWANode;
+import ui.tmldd.TMLArchiKey;
+import ui.tmldd.TMLArchiMemoryNode;
+import ui.tmldd.TMLArchiNode;
+import ui.tmldd.TMLArchiPortArtifact;
+import ui.tmldd.TMLArchiVGMNNode;
 import ui.tmlsd.TGConnectorMessageTMLSD;
 import ui.tmlsd.TMLSDControllerInstance;
 import ui.tmlsd.TMLSDStorageInstance;
 import ui.tmlsd.TMLSDTransferInstance;
 
-import java.awt.*;
-import java.util.*;
-import java.util.List;
-
 /**
  * Class GTMLModeling
  * Use to translate graphical TML modeling to  "tmlmodeling"
@@ -1595,7 +1663,7 @@ public class GTMLModeling {
             } else {
                 // Adding all elements of record
                 //TraceManager.addDev("Found a record named: " + rc.getValue());
-                LinkedList<TAttribute> attr = rc.getAttributes();
+                List<TAttribute> attr = rc.getAttributes();
                 for (TAttribute tat : attr) {
                     if (tat.getType() == TAttribute.NATURAL) {
                         tt = new TMLType(TMLType.NATURAL);
@@ -1654,860 +1722,873 @@ public class GTMLModeling {
 
         while (iterator.hasNext()) {
             tmltask = iterator.next();
-            generateTaskActivityDiagrams(tmltask);
+
+            // Issue #69: Component  disabling
+            ActivityDiagram2TMLTranslator.INSTANCE.generateTaskActivityDiagrams(	tmltask,
+																            		checkingErrors,
+																					warnings,
+																					listE,
+																					tmlm,
+																					securityPatterns,
+																					table,
+																					removedChannels,
+																					removedEvents,
+																					removedRequests );
+//            generateTaskActivityDiagrams(tmltask);
         }
         //TraceManager.addDev( "errors: " + checkingErrors.size() );
         if (checkingErrors.size() > 0) {
             throw new MalformedTMLDesignException("Error(s) found in activity diagrams");
         }
     }
-
-    private String modifyActionString(String _input) {
-        int index = _input.indexOf("++");
-        boolean b1, b2;
-        String tmp;
-
-        if (index > -1) {
-            tmp = _input.substring(0, index).trim();
-
-            b1 = (tmp.substring(0, 1)).matches("[a-zA-Z]");
-            b2 = tmp.matches("\\w*");
-            if (b1 && b2) {
-                return tmp + " = " + tmp + " + 1";
-            }
-        }
-
-        index = _input.indexOf("--");
-        if (index > -1) {
-            tmp = _input.substring(0, index).trim();
-
-            b1 = (tmp.substring(0, 1)).matches("[a-zA-Z]");
-            b2 = tmp.matches("\\w*");
-            if (b1 && b2) {
-                return tmp + " = " + tmp + " - 1";
-            }
-        }
-
-        return modifyString(_input);
-    }
-
-    private String modifyString(String _input) {
-        return Conversion.replaceAllChar(_input, '.', "__");
-    }
-
-    private void generateTaskActivityDiagrams(TMLTask tmltask) throws MalformedTMLDesignException {
-        TMLActivity activity = tmltask.getActivityDiagram();
-        TMLActivityDiagramPanel tadp = (TMLActivityDiagramPanel) (activity.getReferenceObject());
-
-        //TraceManager.addDev("Generating activity diagram of:" + tmltask.getName());
-
-        // search for start state
-        List<TGComponent> list = tadp.getComponentList();
-        Iterator<TGComponent> iterator = list.listIterator();
-        TGComponent tgc;
-        TMLADStartState tss = null;
-        int cptStart = 0;
-        //    boolean rndAdded = false;
-
-        while (iterator.hasNext()) {
-            tgc = iterator.next();
-
-            if (tgc instanceof TMLADStartState) {
-                tss = (TMLADStartState) tgc;
-                cptStart++;
-            }
-        }
-
-        if (tss == null) {
-            TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "No start state in the TML activity diagram of " + tmltask.getName());
-            ce.setTMLTask(tmltask);
-            checkingErrors.add(ce);
-            return;
-        }
-
-        if (cptStart > 1) {
-            TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in the TML activity diagram of " + tmltask.getName());
-            ce.setTMLTask(tmltask);
-            checkingErrors.add(ce);
-            return;
-        }
-
-        // Adding start state
-        TMLStartState tmlss = new TMLStartState("start", tss);
-        listE.addCor(tmlss, tss);
-        activity.setFirst(tmlss);
-
-        // Creation of other elements
-        TMLChannel channel;
-        String[] channels;
-        TMLEvent event;
-        TMLRequest request;
-
-        TMLADRandom tmladrandom;
-        TMLRandom tmlrandom;
-        TMLActionState tmlaction;
-        TMLChoice tmlchoice;
-        TMLExecI tmlexeci;
-        TMLExecIInterval tmlexecii;
-        TMLExecC tmlexecc;
-        TMLExecCInterval tmlexecci;
-        TMLForLoop tmlforloop;
-        TMLReadChannel tmlreadchannel;
-        TMLSendEvent tmlsendevent;
-        TMLSendRequest tmlsendrequest;
-        TMLStopState tmlstopstate;
-        TMLWaitEvent tmlwaitevent;
-        TMLNotifiedEvent tmlnotifiedevent;
-        TMLWriteChannel tmlwritechannel;
-        TMLSequence tmlsequence;
-        TMLRandomSequence tmlrsequence;
-        TMLSelectEvt tmlselectevt;
-        TMLDelay tmldelay;
-        int staticLoopIndex = 0;
-        String sl = "", tmp;
-        TMLType tt;
-        TMLAttribute tmlt;
-
-        iterator = list.listIterator();
-        while (iterator.hasNext()) {
-            tgc = iterator.next();
-            if (tgc.getCheckLatency()) {
-                String name = tmltask.getName() + ":" + tgc.getName();
-                name = name.replaceAll(" ", "");
-                //TraceManager.addDev("To check " + name);
-                if (tgc.getValue().contains("(")) {
-                    tmlm.addCheckedActivity(tgc, name + ":" + tgc.getValue().split("\\(")[0]);
-                } else {
-                    if (tgc instanceof TMLADExecI) {
-                        tmlm.addCheckedActivity(tgc, ((TMLADExecI) tgc).getDelayValue());
-                    }
-                }
-            }
-            if (tgc instanceof TMLADActionState) {
-                tmlaction = new TMLActionState("action", tgc);
-                tmp = ((TMLADActionState) (tgc)).getAction();
-                tmp = modifyActionString(tmp);
-                tmlaction.setAction(tmp);
-                activity.addElement(tmlaction);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlaction, tgc);
-
-            } else if (tgc instanceof TMLADRandom) {
-                tmladrandom = (TMLADRandom) tgc;
-                tmlrandom = new TMLRandom("random" + tmladrandom.getValue(), tgc);
-                tmp = tmladrandom.getVariable();
-                tmp = modifyActionString(tmp);
-                tmlrandom.setVariable(tmp);
-                tmp = tmladrandom.getMinValue();
-                tmp = modifyActionString(tmp);
-                tmlrandom.setMinValue(tmp);
-                tmp = tmladrandom.getMaxValue();
-                tmp = modifyActionString(tmp);
-                tmlrandom.setMaxValue(tmp);
-                tmlrandom.setFunctionId(tmladrandom.getFunctionId());
-                activity.addElement(tmlrandom);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlrandom, tgc);
-
-            } else if (tgc instanceof TMLADChoice) {
-                tmlchoice = new TMLChoice("choice", tgc);
-                // Guards are added at the same time as next activities
-                activity.addElement(tmlchoice);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlchoice, tgc);
-
-            } else if (tgc instanceof TMLADSelectEvt) {
-                tmlselectevt = new TMLSelectEvt("select", tgc);
-                activity.addElement(tmlselectevt);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlselectevt, tgc);
-
-            } else if (tgc instanceof TMLADExecI) {
-                tmlexeci = new TMLExecI("execi", tgc);
-                tmlexeci.setAction(modifyString(((TMLADExecI) tgc).getDelayValue()));
-                tmlexeci.setValue(((TMLADExecI) tgc).getDelayValue());
-                activity.addElement(tmlexeci);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlexeci, tgc);
-
-            } else if (tgc instanceof TMLADExecIInterval) {
-                tmlexecii = new TMLExecIInterval("execi", tgc);
-                tmlexecii.setValue(tgc.getValue());
-                tmlexecii.setMinDelay(modifyString(((TMLADExecIInterval) tgc).getMinDelayValue()));
-                tmlexecii.setMaxDelay(modifyString(((TMLADExecIInterval) tgc).getMaxDelayValue()));
-                activity.addElement(tmlexecii);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlexecii, tgc);
-
-            } else if (tgc instanceof TMLADEncrypt) {
-                tmlexecc = new TMLExecC("encrypt_" + ((TMLADEncrypt) tgc).securityContext, tgc);
-                activity.addElement(tmlexecc);
-                SecurityPattern sp = securityPatterns.get(((TMLADEncrypt) tgc).securityContext);
-                if (sp == null) {
-                    //Throw error for missing security pattern
-                    UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADEncrypt) tgc).securityContext + " not found");
-                    ce.setTDiagramPanel(tadp);
-                    ce.setTGComponent(tgc);
-                    checkingErrors.add(ce);
-                } else {
-                    tmlexecc.securityPattern = sp;
-                    tmlexecc.setAction(Integer.toString(sp.encTime));
-                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                    tmlm.securityTaskMap.get(sp).add(tmltask);
-                    listE.addCor(tmlexecc, tgc);
-                }
-            } else if (tgc instanceof TMLADDecrypt) {
-                tmlexecc = new TMLExecC("decrypt_" + ((TMLADDecrypt) tgc).securityContext, tgc);
-                activity.addElement(tmlexecc);
-                SecurityPattern sp = securityPatterns.get(((TMLADDecrypt) tgc).securityContext);
-                if (sp == null) {
-                    //Throw error for missing security pattern
-                    UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADDecrypt) tgc).securityContext + " not found");
-                    ce.setTDiagramPanel(tadp);
-                    ce.setTGComponent(tgc);
-                    checkingErrors.add(ce);
-                } else {
-                    tmlexecc.securityPattern = sp;
-                    tmlexecc.setAction(Integer.toString(sp.decTime));
-                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                    listE.addCor(tmlexecc, tgc);
-                    tmlm.securityTaskMap.get(sp).add(tmltask);
-                }
-
-            } else if (tgc instanceof TMLADExecC) {
-                tmlexecc = new TMLExecC("execc", tgc);
-                tmlexecc.setValue(((TMLADExecC) tgc).getDelayValue());
-                tmlexecc.setAction(modifyString(((TMLADExecC) tgc).getDelayValue()));
-                activity.addElement(tmlexecc);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlexecc, tgc);
-
-            } else if (tgc instanceof TMLADExecCInterval) {
-                tmlexecci = new TMLExecCInterval("execci", tgc);
-                tmlexecci.setMinDelay(modifyString(((TMLADExecCInterval) tgc).getMinDelayValue()));
-                tmlexecci.setMaxDelay(modifyString(((TMLADExecCInterval) tgc).getMaxDelayValue()));
-                activity.addElement(tmlexecci);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlexecci, tgc);
-
-            } else if (tgc instanceof TMLADDelay) {
-                tmldelay = new TMLDelay("d-delay", tgc);
-                tmldelay.setMinDelay(modifyString(((TMLADDelay) tgc).getDelayValue()));
-                tmldelay.setMaxDelay(modifyString(((TMLADDelay) tgc).getDelayValue()));
-                tmldelay.setUnit(((TMLADDelay) tgc).getUnit());
-                activity.addElement(tmldelay);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmldelay, tgc);
-
-            } else if (tgc instanceof TMLADDelayInterval) {
-                tmldelay = new TMLDelay("nd-delay", tgc);
-                tmldelay.setMinDelay(modifyString(((TMLADDelayInterval) tgc).getMinDelayValue()));
-                tmldelay.setMaxDelay(modifyString(((TMLADDelayInterval) tgc).getMaxDelayValue()));
-                tmldelay.setUnit(((TMLADDelayInterval) tgc).getUnit());
-                activity.addElement(tmldelay);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmldelay, tgc);
-
-            } else if (tgc instanceof TMLADForLoop) {
-                tmlforloop = new TMLForLoop("loop", tgc);
-                tmlforloop.setInit(modifyString(((TMLADForLoop) tgc).getInit()));
-                tmp = ((TMLADForLoop) tgc).getCondition();
-                /*if (tmp.trim().length() == 0) {
-                  tmp = "true";
-                  }*/
-                tmlforloop.setCondition(modifyString(tmp));
-                tmlforloop.setIncrement(modifyActionString(((TMLADForLoop) tgc).getIncrement()));
-
-                activity.addElement(tmlforloop);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlforloop, tgc);
-
-            } else if (tgc instanceof TMLADForStaticLoop) {
-                sl = "loop__" + staticLoopIndex;
-                tt = new TMLType(TMLType.NATURAL);
-                tmlt = new TMLAttribute(sl, tt);
-                tmlt.initialValue = "0";
-                tmltask.addAttribute(tmlt);
-                tmlforloop = new TMLForLoop(sl, tgc);
-                tmlforloop.setInit(sl + " = 0");
-                tmlforloop.setCondition(sl + "<" + modifyString(tgc.getValue()));
-                tmlforloop.setIncrement(sl + " = " + sl + " + 1");
-                activity.addElement(tmlforloop);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlforloop, tgc);
-                staticLoopIndex++;
-
-            } else if (tgc instanceof TMLADForEverLoop) {
-                /*sl = "loop__" + staticLoopIndex;
-                  tt = new TMLType(TMLType.NATURAL);
-                  tmlt = new TMLAttribute(sl, tt);
-                  tmlt.initialValue = "0";
-                  tmltask.addAttribute(tmlt);*/
-                tmlforloop = new TMLForLoop("infiniteloop", tgc);
-                tmlforloop.setInit("");
-                tmlforloop.setCondition("");
-                tmlforloop.setIncrement("");
-                tmlforloop.setInfinite(true);
-                activity.addElement(tmlforloop);
-                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                listE.addCor(tmlforloop, tgc);
-                staticLoopIndex++;
-
-                tmlstopstate = new TMLStopState("Stop after infinite loop", null);
-                activity.addElement(tmlstopstate);
-                tmlforloop.addNext(tmlstopstate);
-
-            } else if (tgc instanceof TMLADSequence) {
-                tmlsequence = new TMLSequence("seq", tgc);
-                activity.addElement(tmlsequence);
-                listE.addCor(tmlsequence, tgc);
-
-            } else if (tgc instanceof TMLADUnorderedSequence) {
-                tmlrsequence = new TMLRandomSequence("rseq", tgc);
-                activity.addElement(tmlrsequence);
-                listE.addCor(tmlrsequence, tgc);
-
-            } else if (tgc instanceof TMLADReadChannel) {
-                // Get the channel
-                //TMLADReadChannel rd = (TMLADReadChannel) tgc;
-                channel = tmlm.getChannelByName(getFromTable(tmltask, ((TMLADReadChannel) tgc).getChannelName()));
-                /*if (rd.isAttacker()){
-                    channel = tmlm.getChannelByName(getAttackerChannel(((TMLADReadChannel)tgc).getChannelName()));
-				}*/
-                if (channel == null) {
-                    if (Conversion.containsStringInList(removedChannels, ((TMLADReadChannel) tgc).getChannelName())) {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADReadChannel) tgc).getChannelName() + " has been removed because the corresponding channel is not taken into account");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        warnings.add(ce);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                        activity.addElement(new TMLJunction("void junction", tgc));
-                    } else {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADReadChannel) tgc).getChannelName() + " is an unknown channel");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                        checkingErrors.add(ce);
-                    }
-
-                } else {
-                    tmlreadchannel = new TMLReadChannel("read channel", tgc);
-                    tmlreadchannel.setNbOfSamples(modifyString(((TMLADReadChannel) tgc).getSamplesValue()));
-                    tmlreadchannel.setEncForm(((TMLADReadChannel) tgc).getEncForm());               
-                    tmlreadchannel.addChannel(channel);
-                    //security pattern
-                    if (securityPatterns.get(((TMLADReadChannel) tgc).getSecurityContext()) != null) {
-                        tmlreadchannel.securityPattern = securityPatterns.get(((TMLADReadChannel) tgc).getSecurityContext());
-                        //NbOfSamples will increase due to extra overhead from MAC
-                        int cur = 1;
-                        try {
-                            cur = Integer.valueOf(modifyString(((TMLADReadChannel) tgc).getSamplesValue()));
-                        } catch (NumberFormatException e) {
-                        } catch (NullPointerException e) {
-                        }
-                        int add = Integer.valueOf(tmlreadchannel.securityPattern.overhead);
-                        if (!tmlreadchannel.securityPattern.nonce.equals("")) {
-                            SecurityPattern nonce = securityPatterns.get(tmlreadchannel.securityPattern.nonce);
-                            if (nonce != null) {
-                                add = Integer.valueOf(nonce.overhead);
-                            }
-                        }
-                        cur = cur + add;
-                        tmlreadchannel.setNbOfSamples(Integer.toString(cur));
-                    } else if (!((TMLADReadChannel) tgc).getSecurityContext().isEmpty()) {
-                        //Throw error for missing security pattern
-                        UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADReadChannel) tgc).getSecurityContext() + " not found");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                    }
-                    if (tmltask.isAttacker()) {
-                        tmlreadchannel.setAttacker(true);
-                    }
-                    activity.addElement(tmlreadchannel);
-                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                    listE.addCor(tmlreadchannel, tgc);
-                }
-            } else if (tgc instanceof TMLADSendEvent) {
-                event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADSendEvent) tgc).getEventName()));
-                if (event == null) {
-                    if (Conversion.containsStringInList(removedEvents, ((TMLADSendEvent) tgc).getEventName())) {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        warnings.add(ce);
-                        activity.addElement(new TMLJunction("void junction", tgc));
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                    } else {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent) tgc).getEventName() + " is an unknown event");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                    }
-                } else {
-                    tmlsendevent = new TMLSendEvent("send event", tgc);
-                    tmlsendevent.setEvent(event);
-
-                    for (int i = 0; i < ((TMLADSendEvent) tgc).realNbOfParams(); i++) {
-                        tmp = modifyString(((TMLADSendEvent) tgc).getRealParamValue(i));
-                        Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
-                        if (allVariables.size() > 0) {
-                            for (int k = 0; k < allVariables.size(); k++) {
-                                //TraceManager.addDev("Adding record: " + allVariables.get(k));
-                                tmlsendevent.addParam(allVariables.get(k));
-                            }
-                        } else {
-                            //TraceManager.addDev("Adding param: " + tmp);
-                            tmlsendevent.addParam(tmp);
-                        }
-                    }
-                    if (event.getNbOfParams() != tmlsendevent.getNbOfParams()) {
-                        //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " sendevent#:" + tmlsendevent.getNbOfParams());
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent) tgc).getEventName() + ": wrong number of parameters");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                    } else {
-                        activity.addElement(tmlsendevent);
-                        listE.addCor(tmlsendevent, tgc);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                    }
-                }
-
-            } else if (tgc instanceof TMLADSendRequest) {
-                request = tmlm.getRequestByName(getFromTable(tmltask, ((TMLADSendRequest) tgc).getRequestName()));
-                if (request == null) {
-                    if (Conversion.containsStringInList(removedRequests, ((TMLADSendRequest) tgc).getRequestName())) {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendRequest) tgc).getRequestName() + " has been removed because the corresponding request is not taken into account");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        warnings.add(ce);
-                        activity.addElement(new TMLJunction("void junction", tgc));
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                    } else {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest) tgc).getRequestName() + " is an unknown request");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                    }
-                } else {
-                    tmlsendrequest = new TMLSendRequest("send request", tgc);
-                    tmlsendrequest.setRequest(request);
-                    for (int i = 0; i < ((TMLADSendRequest) tgc).realNbOfParams(); i++) {
-                        tmp = modifyString(((TMLADSendRequest) tgc).getRealParamValue(i));
-                        Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
-                        if (allVariables.size() > 0) {
-                            for (int k = 0; k < allVariables.size(); k++) {
-                                TraceManager.addDev("Adding record: " + allVariables.get(k));
-                                tmlsendrequest.addParam(allVariables.get(k));
-                                request.addParamName(allVariables.get(k));
-                            }
-                        } else {
-                            //TraceManager.addDev("Adding param: " + tmp);
-                            tmlsendrequest.addParam(tmp);
-                            request.addParamName(tmp);
-                        }
-                    }
-                    if (request.getNbOfParams() != tmlsendrequest.getNbOfParams()) {
-                        //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " sendrequest#:" + tmlsendrequest.getNbOfParams());
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest) tgc).getRequestName() + ": wrong number of parameters");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                    } else {
-                        activity.addElement(tmlsendrequest);
-                        listE.addCor(tmlsendrequest, tgc);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                    }
-                }
-
-            } else if (tgc instanceof TMLADReadRequestArg) {
-                request = tmlm.getRequestToMe(tmltask);
-                if (request == null) {
-                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "This task is not requested: cannot use \"reading request arg\" operator");
-                    ce.setTDiagramPanel(tadp);
-                    ce.setTGComponent(tgc);
-                    checkingErrors.add(ce);
-                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                } else {
-                    tmlaction = new TMLActionState("action reading args", tgc);
-                    String act = "";
-                    int cpt = 1;
-                    for (int i = 0; i < ((TMLADReadRequestArg) tgc).realNbOfParams(); i++) {
-                        tmp = modifyString(((TMLADReadRequestArg) tgc).getRealParamValue(i));
-                        Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
-
-                        if (allVariables.size() > 0) {
-                            for (int k = 0; k < allVariables.size(); k++) {
-                                //TraceManager.addDev("Adding record: " + allVariables.get(k));
-                                if (cpt != 1) {
-                                    act += "$";
-                                }
-                                act += allVariables.get(k) + " = arg" + cpt + "__req";
-                                cpt++;
-                            }
-                        } else {
-                            //TraceManager.addDev("Adding param: " + tmp);
-                            if (cpt != 1) {
-                                act += "$";
-                            }
-                            act += tmp + " = arg" + cpt + "__req";
-                            cpt++;
-                        }
-                    }
-                    if (request.getNbOfParams() != (cpt - 1)) {
-                        //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " read request arg#:" + (cpt-1));
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Wrong number of parameters in \"reading request arg\" operator");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                    } else {
-                        //TraceManager.addDev("Adding action = " + act);
-                        tmlaction.setAction(act);
-                        activity.addElement(tmlaction);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                        listE.addCor(tmlaction, tgc);
-                    }
-
-
-                }
-
-            } else if (tgc instanceof TMLADStopState) {
-                tmlstopstate = new TMLStopState("stop state", tgc);
-                activity.addElement(tmlstopstate);
-                listE.addCor(tmlstopstate, tgc);
-
-            } else if (tgc instanceof TMLADNotifiedEvent) {
-                event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADNotifiedEvent) tgc).getEventName()));
-                if (event == null) {
-                    if (removedEvents.size() > 0) {
-                        if (Conversion.containsStringInList(removedEvents, ((TMLADNotifiedEvent) tgc).getEventName())) {
-                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADNotifiedEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account");
-                            ce.setTDiagramPanel(tadp);
-                            ce.setTGComponent(tgc);
-                            warnings.add(ce);
-                            activity.addElement(new TMLJunction("void junction", tgc));
-                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                        } else {
-                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent) tgc).getEventName() + " is an unknown event");
-                            ce.setTDiagramPanel(tadp);
-                            ce.setTGComponent(tgc);
-                            checkingErrors.add(ce);
-                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                        }
-                    } else {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent) tgc).getEventName() + " is an unknown event");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                    }
-                } else {
-                    event.setNotified(true);
-                    tmlnotifiedevent = new TMLNotifiedEvent("notified event", tgc);
-                    tmlnotifiedevent.setEvent(event);
-                    tmlnotifiedevent.setVariable(modifyString(((TMLADNotifiedEvent) tgc).getVariable()));
-                    activity.addElement(tmlnotifiedevent);
-                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                    listE.addCor(tmlnotifiedevent, tgc);
-                }
-
-            } else if (tgc instanceof TMLADWaitEvent) {
-                event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADWaitEvent) tgc).getEventName()));
-                if (event == null) {
-                    if (removedEvents.size() > 0) {
-                        if (Conversion.containsStringInList(removedEvents, ((TMLADWaitEvent) tgc).getEventName())) {
-                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWaitEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account");
-                            ce.setTDiagramPanel(tadp);
-                            ce.setTGComponent(tgc);
-                            warnings.add(ce);
-                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                            activity.addElement(new TMLJunction("void junction", tgc));
-                        } else {
-                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + " is an unknown event");
-                            ce.setTDiagramPanel(tadp);
-                            ce.setTGComponent(tgc);
-                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                            checkingErrors.add(ce);
-                        }
-                    } else {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + " is an unknown event");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                        checkingErrors.add(ce);
-                    }
-                } else {
-                    //TraceManager.addDev("Nb of param of event:" + event.getNbOfParams());
-                    tmlwaitevent = new TMLWaitEvent("wait event", tgc);
-                    tmlwaitevent.setEvent(event);
-                    for (int i = 0; i < ((TMLADWaitEvent) tgc).realNbOfParams(); i++) {
-                        tmp = modifyString(((TMLADWaitEvent) tgc).getRealParamValue(i));
-                        Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
-                        if (allVariables.size() > 0) {
-                            for (int k = 0; k < allVariables.size(); k++) {
-                                //TraceManager.addDev("Adding record: " + allVariables.get(k));
-                                tmlwaitevent.addParam(allVariables.get(k));
-                            }
-                        } else {
-                            //TraceManager.addDev("Adding param: " + tmp);
-                            tmlwaitevent.addParam(tmp);
-                        }
-                    }
-                    if (event.getNbOfParams() != tmlwaitevent.getNbOfParams()) {
-                        //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " waitevent#:" + tmlwaitevent.getNbOfParams());
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + ": wrong number of parameters");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                    } else {
-                        activity.addElement(tmlwaitevent);
-                        listE.addCor(tmlwaitevent, tgc);
-                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                    }
-
-                }
-
-            } else if (tgc instanceof TMLADWriteChannel) {
-                // Get channels
-                //TMLADWriteChannel wr = (TMLADWriteChannel) tgc;
-                channels = ((TMLADWriteChannel) tgc).getChannelsByName();
-                boolean error = false;
-                for (int i = 0; i < channels.length; i++) {
-                    //TraceManager.addDev("Getting from table " + tmltask.getName() + "/" +channels[i]);
-                    channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i]));
-                    if (channel == null) {
-                        if (Conversion.containsStringInList(removedChannels, ((TMLADWriteChannel) tgc).getChannelName(i))) {
-                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWriteChannel) tgc).getChannelName(i) + " has been removed because the corresponding channel is not taken into account");
-                            ce.setTDiagramPanel(tadp);
-                            ce.setTGComponent(tgc);
-                            warnings.add(ce);
-                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                            activity.addElement(new TMLJunction("void junction", tgc));
-                        } else {
-                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWriteChannel) tgc).getChannelName(i) + " is an unknown channel");
-                            ce.setTDiagramPanel(tadp);
-                            ce.setTGComponent(tgc);
-                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
-                            checkingErrors.add(ce);
-                        }
-                        error = true;
-
-                    }
-                }
-                if (!error) {
-                    tmlwritechannel = new TMLWriteChannel("write channel", tgc);
-                    tmlwritechannel.setNbOfSamples(modifyString(((TMLADWriteChannel) tgc).getSamplesValue()));
-                    tmlwritechannel.setEncForm(((TMLADWriteChannel) tgc).getEncForm());
-                    for (int i = 0; i < channels.length; i++) {
-                        channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i]));
-                        tmlwritechannel.addChannel(channel);
-                    }
-                    //if (wr.isAttacker()){
-                    //channel = tmlm.getChannelByName(getAttackerChannel(channels[0]));
-                    //tmlwritechannel.addChannel(channel);
-                    //}
-                    //add sec pattern
-                    if (securityPatterns.get(((TMLADWriteChannel) tgc).getSecurityContext()) != null) {
-                        tmlwritechannel.securityPattern = securityPatterns.get(((TMLADWriteChannel) tgc).getSecurityContext());
-                        int cur = Integer.valueOf(modifyString(((TMLADWriteChannel) tgc).getSamplesValue()));
-                        int add = Integer.valueOf(tmlwritechannel.securityPattern.overhead);
-                        if (!tmlwritechannel.securityPattern.nonce.equals("")) {
-                            SecurityPattern nonce = securityPatterns.get(tmlwritechannel.securityPattern.nonce);
-                            if (nonce != null) {
-                                add = Integer.valueOf(nonce.overhead);
-                            }
-                        }
-                        cur = cur + add;
-                        tmlwritechannel.setNbOfSamples(Integer.toString(cur));
-                    } else if (!((TMLADWriteChannel) tgc).getSecurityContext().isEmpty()) {
-                        //Throw error for missing security pattern
-                        UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADWriteChannel) tgc).getSecurityContext() + " not found");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                    }
-                    if (tmltask.isAttacker()) {
-                        tmlwritechannel.setAttacker(true);
-                    }
-                    activity.addElement(tmlwritechannel);
-                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
-                    listE.addCor(tmlwritechannel, tgc);
-                }
-            }
-        }
-
-        // Interconnection between elements
-        TGConnectorTMLAD tgco;
-        TGConnectingPoint p1, p2;
-        TMLActivityElement ae1, ae2;
-        TGComponent tgc1, tgc2, tgc3;
-        int j, index;
-
-        iterator = list.listIterator();
-        while (iterator.hasNext()) {
-            tgc = iterator.next();
-            if (tgc instanceof TGConnectorTMLAD) {
-                tgco = (TGConnectorTMLAD) tgc;
-                p1 = tgco.getTGConnectingPointP1();
-                p2 = tgco.getTGConnectingPointP2();
-
-                // Identification of connected components
-                tgc1 = null;
-                tgc2 = null;
-                for (j = 0; j < list.size(); j++) {
-                    tgc3 = list.get(j);
-                    if (tgc3.belongsToMe(p1)) {
-                        tgc1 = tgc3;
-                    }
-                    if (tgc3.belongsToMe(p2)) {
-                        tgc2 = tgc3;
-                    }
-                }
-
-                // Connecting tml modeling components
-                if ((tgc1 != null) && (tgc2 != null)) {
-                    //ADComponent ad1, ad2;
-                    ae1 = activity.findReferenceElement(tgc1);
-                    ae2 = activity.findReferenceElement(tgc2);
-
-                    if ((ae1 != null) && (ae2 != null)) {
-                        //Special case if "for loop" or if "choice"
-
-                        if (ae1 instanceof TMLForLoop) {
-                            index = tgc1.indexOf(p1) - 1;
-                            if (index == 0) {
-                                ae1.addNext(0, ae2);
-                            } else {
-                                ae1.addNext(ae2);
-                            }
-
-                        } else if (ae1 instanceof TMLChoice) {
-                            index = tgc1.indexOf(p1) - 1;
-                            //TraceManager.addDev("Adding next:" + ae2);
-                            ae1.addNext(ae2);
-                            //TraceManager.addDev("Adding guard:" + ((TMLADChoice)tgc1).getGuard(index));
-                            ((TMLChoice) ae1).addGuard(modifyString(((TMLADChoice) tgc1).getGuard(index)));
-
-                        } else if (ae1 instanceof TMLSequence) {
-                            index = tgc1.indexOf(p1) - 1;
-                            ((TMLSequence) ae1).addIndex(index);
-                            ae1.addNext(ae2);
-                            //TraceManager.addDev("Adding " + ae2 + " at index " + index);
-
-                        } else if (ae1 instanceof TMLRandomSequence) {
-                            index = tgc1.indexOf(p1) - 1;
-                            ((TMLRandomSequence) ae1).addIndex(index);
-                            ae1.addNext(ae2);
-                            //TraceManager.addDev("Adding " + ae2 + " at index " + index);
-
-                        } else {
-                            ae1.addNext(ae2);
-                        }
-                    }
-                }
-            }
-        }
-
-
-        // Check that each "for" has two nexts
-        // Check that TMLChoice have compatible guards
-        // Check TML select evts
-        iterator = list.listIterator();
-        while (iterator.hasNext()) {
-            tgc = iterator.next();
-
-            if ((tgc instanceof TMLADForLoop) || (tgc instanceof TMLADForStaticLoop)) {
-                ae1 = activity.findReferenceElement(tgc);
-                if (ae1 != null) {
-                    if (ae1.getNbNext() != 2) {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted for loop: a loop must have an internal behavior, and an exit behavior ");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                    }
-                }
-            } else if (tgc instanceof TMLADChoice) {
-                tmlchoice = (TMLChoice) (activity.findReferenceElement(tgc));
-                tmlchoice.orderGuards();
-
-                int nbNonDeter = tmlchoice.nbOfNonDeterministicGuard();
-                int nbStocha = tmlchoice.nbOfStochasticGuard();
-                if ((nbNonDeter > 0) && (nbStocha > 0)) {
-                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic and stochastic guards");
-                    ce.setTDiagramPanel(tadp);
-                    ce.setTGComponent(tgc);
-                    checkingErrors.add(ce);
-                }
-                int nb = Math.max(nbNonDeter, nbStocha);
-                if (nb > 0) {
-                    nb = nb + tmlchoice.nbOfElseAndAfterGuards();
-                    if (nb != tmlchoice.getNbGuard()) {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic/ stochastic and regular guards)");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                    }
-                }
-
-                if (tmlchoice.nbOfNonDeterministicGuard() > 0) {
-                    /*if (!rndAdded) {
-                      TMLAttribute tmlt = new TMLAttribute("rnd__0", new TMLType(TMLType.NATURAL));
-                      tmlt.initialValue = "";
-                      tmltask.addAttribute(tmlt);
-                      rndAdded = true;
-                      }*/
-                }
-                if (tmlchoice.hasMoreThanOneElse()) {
-                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [else] guard");
-                    ce.setTDiagramPanel(tadp);
-                    ce.setTGComponent(tgc);
-                    checkingErrors.add(ce);
-                } else if ((index = tmlchoice.getElseGuard()) > -1) {
-                    index = tmlchoice.getElseGuard();
-                    if (index == 0) {
-                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have a regular guard");
-                        ce.setTDiagramPanel(tadp);
-                        ce.setTGComponent(tgc);
-                        checkingErrors.add(ce);
-                    }
-                }
-                if (tmlchoice.hasMoreThanOneAfter()) {
-                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [after] guard");
-                    ce.setTDiagramPanel(tadp);
-                    ce.setTGComponent(tgc);
-                    checkingErrors.add(ce);
-                }
-            }
-            if (tgc instanceof TMLADSelectEvt) {
-                tmlselectevt = (TMLSelectEvt) (activity.findReferenceElement(tgc));
-                if (!tmlselectevt.isARealSelectEvt()) {
-                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "'Select events'  should be followed by only event receiving operators");
-                    ce.setTDiagramPanel(tadp);
-                    ce.setTGComponent(tgc);
-                    checkingErrors.add(ce);
-                }
-            }
-
-        }
-
-        // Sorting nexts elements of Sequence
-        for (j = 0; j < activity.nElements(); j++) {
-            ae1 = activity.get(j);
-            if (ae1 instanceof TMLSequence) {
-                ((TMLSequence) ae1).sortNexts();
-            }
-            if (ae1 instanceof TMLRandomSequence) {
-                ((TMLRandomSequence) ae1).sortNexts();
-            }
-        }
-    }
+//
+//    private String modifyActionString(String _input) {
+//        int index = _input.indexOf("++");
+//        boolean b1, b2;
+//        String tmp;
+//
+//        if (index > -1) {
+//            tmp = _input.substring(0, index).trim();
+//
+//            b1 = (tmp.substring(0, 1)).matches("[a-zA-Z]");
+//            b2 = tmp.matches("\\w*");
+//            if (b1 && b2) {
+//                return tmp + " = " + tmp + " + 1";
+//            }
+//        }
+//
+//        index = _input.indexOf("--");
+//        if (index > -1) {
+//            tmp = _input.substring(0, index).trim();
+//
+//            b1 = (tmp.substring(0, 1)).matches("[a-zA-Z]");
+//            b2 = tmp.matches("\\w*");
+//            if (b1 && b2) {
+//                return tmp + " = " + tmp + " - 1";
+//            }
+//        }
+//
+//        return modifyString(_input);
+//    }
+//
+//    private String modifyString(String _input) {
+//        return Conversion.replaceAllChar(_input, '.', "__");
+//    }
+
+    // Issue #69: Moved to class ActivityDiagram2TMLTranslator
+//    private void generateTaskActivityDiagrams(TMLTask tmltask) throws MalformedTMLDesignException {
+//        TMLActivity activity = tmltask.getActivityDiagram();
+//        TMLActivityDiagramPanel tadp = (TMLActivityDiagramPanel) (activity.getReferenceObject());
+//
+//        //TraceManager.addDev("Generating activity diagram of:" + tmltask.getName());
+//
+//        // search for start state
+//        List<TGComponent> list = tadp.getComponentList();
+//        Iterator<TGComponent> iterator = list.listIterator();
+//        TGComponent tgc;
+//        TMLADStartState tss = null;
+//        int cptStart = 0;
+//        //    boolean rndAdded = false;
+//
+//        while (iterator.hasNext()) {
+//            tgc = iterator.next();
+//
+//            if (tgc instanceof TMLADStartState) {
+//                tss = (TMLADStartState) tgc;
+//                cptStart++;
+//            }
+//        }
+//
+//        if (tss == null) {
+//            TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "No start state in the TML activity diagram of " + tmltask.getName());
+//            ce.setTMLTask(tmltask);
+//            checkingErrors.add(ce);
+//            return;
+//        }
+//
+//        if (cptStart > 1) {
+//            TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in the TML activity diagram of " + tmltask.getName());
+//            ce.setTMLTask(tmltask);
+//            checkingErrors.add(ce);
+//            return;
+//        }
+//
+//        // Adding start state
+//        TMLStartState tmlss = new TMLStartState("start", tss);
+//        listE.addCor(tmlss, tss);
+//        activity.setFirst(tmlss);
+//
+//        // Creation of other elements
+//        TMLChannel channel;
+//        String[] channels;
+//        TMLEvent event;
+//        TMLRequest request;
+//
+//        TMLADRandom tmladrandom;
+//        TMLRandom tmlrandom;
+//        TMLActionState tmlaction;
+//        TMLChoice tmlchoice;
+//        TMLExecI tmlexeci;
+//        TMLExecIInterval tmlexecii;
+//        TMLExecC tmlexecc;
+//        TMLExecCInterval tmlexecci;
+//        TMLForLoop tmlforloop;
+//        TMLReadChannel tmlreadchannel;
+//        TMLSendEvent tmlsendevent;
+//        TMLSendRequest tmlsendrequest;
+//        TMLStopState tmlstopstate;
+//        TMLWaitEvent tmlwaitevent;
+//        TMLNotifiedEvent tmlnotifiedevent;
+//        TMLWriteChannel tmlwritechannel;
+//        TMLSequence tmlsequence;
+//        TMLRandomSequence tmlrsequence;
+//        TMLSelectEvt tmlselectevt;
+//        TMLDelay tmldelay;
+//        int staticLoopIndex = 0;
+//        String sl = "", tmp;
+//        TMLType tt;
+//        TMLAttribute tmlt;
+//
+//        iterator = list.listIterator();
+//        while (iterator.hasNext()) {
+//            tgc = iterator.next();
+//            if (tgc.getCheckLatency()) {
+//                String name = tmltask.getName() + ":" + tgc.getName();
+//                name = name.replaceAll(" ", "");
+//                //TraceManager.addDev("To check " + name);
+//                if (tgc.getValue().contains("(")) {
+//                    tmlm.addCheckedActivity(tgc, name + ":" + tgc.getValue().split("\\(")[0]);
+//                } else {
+//                    if (tgc instanceof TMLADExecI) {
+//                        tmlm.addCheckedActivity(tgc, ((TMLADExecI) tgc).getDelayValue());
+//                    }
+//                }
+//            }
+//            if (tgc instanceof TMLADActionState) {
+//                tmlaction = new TMLActionState("action", tgc);
+//                tmp = ((TMLADActionState) (tgc)).getAction();
+//                tmp = modifyActionString(tmp);
+//                tmlaction.setAction(tmp);
+//                activity.addElement(tmlaction);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlaction, tgc);
+//
+//            } else if (tgc instanceof TMLADRandom) {
+//                tmladrandom = (TMLADRandom) tgc;
+//                tmlrandom = new TMLRandom("random" + tmladrandom.getValue(), tgc);
+//                tmp = tmladrandom.getVariable();
+//                tmp = modifyActionString(tmp);
+//                tmlrandom.setVariable(tmp);
+//                tmp = tmladrandom.getMinValue();
+//                tmp = modifyActionString(tmp);
+//                tmlrandom.setMinValue(tmp);
+//                tmp = tmladrandom.getMaxValue();
+//                tmp = modifyActionString(tmp);
+//                tmlrandom.setMaxValue(tmp);
+//                tmlrandom.setFunctionId(tmladrandom.getFunctionId());
+//                activity.addElement(tmlrandom);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlrandom, tgc);
+//
+//            } else if (tgc instanceof TMLADChoice) {
+//                tmlchoice = new TMLChoice("choice", tgc);
+//                // Guards are added at the same time as next activities
+//                activity.addElement(tmlchoice);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlchoice, tgc);
+//
+//            } else if (tgc instanceof TMLADSelectEvt) {
+//                tmlselectevt = new TMLSelectEvt("select", tgc);
+//                activity.addElement(tmlselectevt);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlselectevt, tgc);
+//
+//            } else if (tgc instanceof TMLADExecI) {
+//                tmlexeci = new TMLExecI("execi", tgc);
+//                tmlexeci.setAction(modifyString(((TMLADExecI) tgc).getDelayValue()));
+//                tmlexeci.setValue(((TMLADExecI) tgc).getDelayValue());
+//                activity.addElement(tmlexeci);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlexeci, tgc);
+//
+//            } else if (tgc instanceof TMLADExecIInterval) {
+//                tmlexecii = new TMLExecIInterval("execi", tgc);
+//                tmlexecii.setValue(tgc.getValue());
+//                tmlexecii.setMinDelay(modifyString(((TMLADExecIInterval) tgc).getMinDelayValue()));
+//                tmlexecii.setMaxDelay(modifyString(((TMLADExecIInterval) tgc).getMaxDelayValue()));
+//                activity.addElement(tmlexecii);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlexecii, tgc);
+//
+//            } else if (tgc instanceof TMLADEncrypt) {
+//                tmlexecc = new TMLExecC("encrypt_" + ((TMLADEncrypt) tgc).securityContext, tgc);
+//                activity.addElement(tmlexecc);
+//                SecurityPattern sp = securityPatterns.get(((TMLADEncrypt) tgc).securityContext);
+//                if (sp == null) {
+//                    //Throw error for missing security pattern
+//                    UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADEncrypt) tgc).securityContext + " not found");
+//                    ce.setTDiagramPanel(tadp);
+//                    ce.setTGComponent(tgc);
+//                    checkingErrors.add(ce);
+//                } else {
+//                    tmlexecc.securityPattern = sp;
+//                    tmlexecc.setAction(Integer.toString(sp.encTime));
+//                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                    tmlm.securityTaskMap.get(sp).add(tmltask);
+//                    listE.addCor(tmlexecc, tgc);
+//                }
+//            } else if (tgc instanceof TMLADDecrypt) {
+//                tmlexecc = new TMLExecC("decrypt_" + ((TMLADDecrypt) tgc).securityContext, tgc);
+//                activity.addElement(tmlexecc);
+//                SecurityPattern sp = securityPatterns.get(((TMLADDecrypt) tgc).securityContext);
+//                if (sp == null) {
+//                    //Throw error for missing security pattern
+//                    UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADDecrypt) tgc).securityContext + " not found");
+//                    ce.setTDiagramPanel(tadp);
+//                    ce.setTGComponent(tgc);
+//                    checkingErrors.add(ce);
+//                } else {
+//                    tmlexecc.securityPattern = sp;
+//                    tmlexecc.setAction(Integer.toString(sp.decTime));
+//                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                    listE.addCor(tmlexecc, tgc);
+//                    tmlm.securityTaskMap.get(sp).add(tmltask);
+//                }
+//
+//            } else if (tgc instanceof TMLADExecC) {
+//                tmlexecc = new TMLExecC("execc", tgc);
+//                tmlexecc.setValue(((TMLADExecC) tgc).getDelayValue());
+//                tmlexecc.setAction(modifyString(((TMLADExecC) tgc).getDelayValue()));
+//                activity.addElement(tmlexecc);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlexecc, tgc);
+//
+//            } else if (tgc instanceof TMLADExecCInterval) {
+//                tmlexecci = new TMLExecCInterval("execci", tgc);
+//                tmlexecci.setMinDelay(modifyString(((TMLADExecCInterval) tgc).getMinDelayValue()));
+//                tmlexecci.setMaxDelay(modifyString(((TMLADExecCInterval) tgc).getMaxDelayValue()));
+//                activity.addElement(tmlexecci);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlexecci, tgc);
+//
+//            } else if (tgc instanceof TMLADDelay) {
+//                tmldelay = new TMLDelay("d-delay", tgc);
+//                tmldelay.setMinDelay(modifyString(((TMLADDelay) tgc).getDelayValue()));
+//                tmldelay.setMaxDelay(modifyString(((TMLADDelay) tgc).getDelayValue()));
+//                tmldelay.setUnit(((TMLADDelay) tgc).getUnit());
+//                activity.addElement(tmldelay);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmldelay, tgc);
+//
+//            } else if (tgc instanceof TMLADDelayInterval) {
+//                tmldelay = new TMLDelay("nd-delay", tgc);
+//                tmldelay.setMinDelay(modifyString(((TMLADDelayInterval) tgc).getMinDelayValue()));
+//                tmldelay.setMaxDelay(modifyString(((TMLADDelayInterval) tgc).getMaxDelayValue()));
+//                tmldelay.setUnit(((TMLADDelayInterval) tgc).getUnit());
+//                activity.addElement(tmldelay);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmldelay, tgc);
+//
+//            } else if (tgc instanceof TMLADForLoop) {
+//                tmlforloop = new TMLForLoop("loop", tgc);
+//                tmlforloop.setInit(modifyString(((TMLADForLoop) tgc).getInit()));
+//                tmp = ((TMLADForLoop) tgc).getCondition();
+//                /*if (tmp.trim().length() == 0) {
+//                  tmp = "true";
+//                  }*/
+//                tmlforloop.setCondition(modifyString(tmp));
+//                tmlforloop.setIncrement(modifyActionString(((TMLADForLoop) tgc).getIncrement()));
+//
+//                activity.addElement(tmlforloop);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlforloop, tgc);
+//
+//            } else if (tgc instanceof TMLADForStaticLoop) {
+//                sl = "loop__" + staticLoopIndex;
+//                tt = new TMLType(TMLType.NATURAL);
+//                tmlt = new TMLAttribute(sl, tt);
+//                tmlt.initialValue = "0";
+//                tmltask.addAttribute(tmlt);
+//                tmlforloop = new TMLForLoop(sl, tgc);
+//                tmlforloop.setInit(sl + " = 0");
+//                tmlforloop.setCondition(sl + "<" + modifyString(tgc.getValue()));
+//                tmlforloop.setIncrement(sl + " = " + sl + " + 1");
+//                activity.addElement(tmlforloop);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlforloop, tgc);
+//                staticLoopIndex++;
+//
+//            } else if (tgc instanceof TMLADForEverLoop) {
+//                /*sl = "loop__" + staticLoopIndex;
+//                  tt = new TMLType(TMLType.NATURAL);
+//                  tmlt = new TMLAttribute(sl, tt);
+//                  tmlt.initialValue = "0";
+//                  tmltask.addAttribute(tmlt);*/
+//                tmlforloop = new TMLForLoop("infiniteloop", tgc);
+//                tmlforloop.setInit("");
+//                tmlforloop.setCondition("");
+//                tmlforloop.setIncrement("");
+//                tmlforloop.setInfinite(true);
+//                activity.addElement(tmlforloop);
+//                ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                listE.addCor(tmlforloop, tgc);
+//                staticLoopIndex++;
+//
+//                tmlstopstate = new TMLStopState("Stop after infinite loop", null);
+//                activity.addElement(tmlstopstate);
+//                tmlforloop.addNext(tmlstopstate);
+//
+//            } else if (tgc instanceof TMLADSequence) {
+//                tmlsequence = new TMLSequence("seq", tgc);
+//                activity.addElement(tmlsequence);
+//                listE.addCor(tmlsequence, tgc);
+//
+//            } else if (tgc instanceof TMLADUnorderedSequence) {
+//                tmlrsequence = new TMLRandomSequence("rseq", tgc);
+//                activity.addElement(tmlrsequence);
+//                listE.addCor(tmlrsequence, tgc);
+//
+//            } else if (tgc instanceof TMLADReadChannel) {
+//                // Get the channel
+//                //TMLADReadChannel rd = (TMLADReadChannel) tgc;
+//                channel = tmlm.getChannelByName(getFromTable(tmltask, ((TMLADReadChannel) tgc).getChannelName()));
+//                /*if (rd.isAttacker()){
+//                    channel = tmlm.getChannelByName(getAttackerChannel(((TMLADReadChannel)tgc).getChannelName()));
+//				}*/
+//                if (channel == null) {
+//                    if (Conversion.containsStringInList(removedChannels, ((TMLADReadChannel) tgc).getChannelName())) {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADReadChannel) tgc).getChannelName() + " has been removed because the corresponding channel is not taken into account");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        warnings.add(ce);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                        activity.addElement(new TMLJunction("void junction", tgc));
+//                    } else {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADReadChannel) tgc).getChannelName() + " is an unknown channel");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                        checkingErrors.add(ce);
+//                    }
+//
+//                } else {
+//                    tmlreadchannel = new TMLReadChannel("read channel", tgc);
+//                    tmlreadchannel.setNbOfSamples(modifyString(((TMLADReadChannel) tgc).getSamplesValue()));
+//                    tmlreadchannel.setEncForm(((TMLADReadChannel) tgc).getEncForm());               
+//                    tmlreadchannel.addChannel(channel);
+//                    //security pattern
+//                    if (securityPatterns.get(((TMLADReadChannel) tgc).getSecurityContext()) != null) {
+//                        tmlreadchannel.securityPattern = securityPatterns.get(((TMLADReadChannel) tgc).getSecurityContext());
+//                        //NbOfSamples will increase due to extra overhead from MAC
+//                        int cur = 1;
+//                        try {
+//                            cur = Integer.valueOf(modifyString(((TMLADReadChannel) tgc).getSamplesValue()));
+//                        } catch (NumberFormatException e) {
+//                        } catch (NullPointerException e) {
+//                        }
+//                        int add = Integer.valueOf(tmlreadchannel.securityPattern.overhead);
+//                        if (!tmlreadchannel.securityPattern.nonce.equals("")) {
+//                            SecurityPattern nonce = securityPatterns.get(tmlreadchannel.securityPattern.nonce);
+//                            if (nonce != null) {
+//                                add = Integer.valueOf(nonce.overhead);
+//                            }
+//                        }
+//                        cur = cur + add;
+//                        tmlreadchannel.setNbOfSamples(Integer.toString(cur));
+//                    } else if (!((TMLADReadChannel) tgc).getSecurityContext().isEmpty()) {
+//                        //Throw error for missing security pattern
+//                        UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADReadChannel) tgc).getSecurityContext() + " not found");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                    }
+//                    if (tmltask.isAttacker()) {
+//                        tmlreadchannel.setAttacker(true);
+//                    }
+//                    activity.addElement(tmlreadchannel);
+//                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                    listE.addCor(tmlreadchannel, tgc);
+//                }
+//            } else if (tgc instanceof TMLADSendEvent) {
+//                event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADSendEvent) tgc).getEventName()));
+//                if (event == null) {
+//                    if (Conversion.containsStringInList(removedEvents, ((TMLADSendEvent) tgc).getEventName())) {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        warnings.add(ce);
+//                        activity.addElement(new TMLJunction("void junction", tgc));
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                    } else {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent) tgc).getEventName() + " is an unknown event");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                    }
+//                } else {
+//                    tmlsendevent = new TMLSendEvent("send event", tgc);
+//                    tmlsendevent.setEvent(event);
+//
+//                    for (int i = 0; i < ((TMLADSendEvent) tgc).realNbOfParams(); i++) {
+//                        tmp = modifyString(((TMLADSendEvent) tgc).getRealParamValue(i));
+//                        Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
+//                        if (allVariables.size() > 0) {
+//                            for (int k = 0; k < allVariables.size(); k++) {
+//                                //TraceManager.addDev("Adding record: " + allVariables.get(k));
+//                                tmlsendevent.addParam(allVariables.get(k));
+//                            }
+//                        } else {
+//                            //TraceManager.addDev("Adding param: " + tmp);
+//                            tmlsendevent.addParam(tmp);
+//                        }
+//                    }
+//                    if (event.getNbOfParams() != tmlsendevent.getNbOfParams()) {
+//                        //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " sendevent#:" + tmlsendevent.getNbOfParams());
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent) tgc).getEventName() + ": wrong number of parameters");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                    } else {
+//                        activity.addElement(tmlsendevent);
+//                        listE.addCor(tmlsendevent, tgc);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                    }
+//                }
+//
+//            } else if (tgc instanceof TMLADSendRequest) {
+//                request = tmlm.getRequestByName(getFromTable(tmltask, ((TMLADSendRequest) tgc).getRequestName()));
+//                if (request == null) {
+//                    if (Conversion.containsStringInList(removedRequests, ((TMLADSendRequest) tgc).getRequestName())) {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendRequest) tgc).getRequestName() + " has been removed because the corresponding request is not taken into account");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        warnings.add(ce);
+//                        activity.addElement(new TMLJunction("void junction", tgc));
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                    } else {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest) tgc).getRequestName() + " is an unknown request");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                    }
+//                } else {
+//                    tmlsendrequest = new TMLSendRequest("send request", tgc);
+//                    tmlsendrequest.setRequest(request);
+//                    for (int i = 0; i < ((TMLADSendRequest) tgc).realNbOfParams(); i++) {
+//                        tmp = modifyString(((TMLADSendRequest) tgc).getRealParamValue(i));
+//                        Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
+//                        if (allVariables.size() > 0) {
+//                            for (int k = 0; k < allVariables.size(); k++) {
+//                                TraceManager.addDev("Adding record: " + allVariables.get(k));
+//                                tmlsendrequest.addParam(allVariables.get(k));
+//                                request.addParamName(allVariables.get(k));
+//                            }
+//                        } else {
+//                            //TraceManager.addDev("Adding param: " + tmp);
+//                            tmlsendrequest.addParam(tmp);
+//                            request.addParamName(tmp);
+//                        }
+//                    }
+//                    if (request.getNbOfParams() != tmlsendrequest.getNbOfParams()) {
+//                        //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " sendrequest#:" + tmlsendrequest.getNbOfParams());
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest) tgc).getRequestName() + ": wrong number of parameters");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                    } else {
+//                        activity.addElement(tmlsendrequest);
+//                        listE.addCor(tmlsendrequest, tgc);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                    }
+//                }
+//
+//            } else if (tgc instanceof TMLADReadRequestArg) {
+//                request = tmlm.getRequestToMe(tmltask);
+//                if (request == null) {
+//                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "This task is not requested: cannot use \"reading request arg\" operator");
+//                    ce.setTDiagramPanel(tadp);
+//                    ce.setTGComponent(tgc);
+//                    checkingErrors.add(ce);
+//                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                } else {
+//                    tmlaction = new TMLActionState("action reading args", tgc);
+//                    String act = "";
+//                    int cpt = 1;
+//                    for (int i = 0; i < ((TMLADReadRequestArg) tgc).realNbOfParams(); i++) {
+//                        tmp = modifyString(((TMLADReadRequestArg) tgc).getRealParamValue(i));
+//                        Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
+//
+//                        if (allVariables.size() > 0) {
+//                            for (int k = 0; k < allVariables.size(); k++) {
+//                                //TraceManager.addDev("Adding record: " + allVariables.get(k));
+//                                if (cpt != 1) {
+//                                    act += "$";
+//                                }
+//                                act += allVariables.get(k) + " = arg" + cpt + "__req";
+//                                cpt++;
+//                            }
+//                        } else {
+//                            //TraceManager.addDev("Adding param: " + tmp);
+//                            if (cpt != 1) {
+//                                act += "$";
+//                            }
+//                            act += tmp + " = arg" + cpt + "__req";
+//                            cpt++;
+//                        }
+//                    }
+//                    if (request.getNbOfParams() != (cpt - 1)) {
+//                        //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " read request arg#:" + (cpt-1));
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Wrong number of parameters in \"reading request arg\" operator");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                    } else {
+//                        //TraceManager.addDev("Adding action = " + act);
+//                        tmlaction.setAction(act);
+//                        activity.addElement(tmlaction);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                        listE.addCor(tmlaction, tgc);
+//                    }
+//
+//
+//                }
+//
+//            } else if (tgc instanceof TMLADStopState) {
+//                tmlstopstate = new TMLStopState("stop state", tgc);
+//                activity.addElement(tmlstopstate);
+//                listE.addCor(tmlstopstate, tgc);
+//
+//            } else if (tgc instanceof TMLADNotifiedEvent) {
+//                event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADNotifiedEvent) tgc).getEventName()));
+//                if (event == null) {
+//                    if (removedEvents.size() > 0) {
+//                        if (Conversion.containsStringInList(removedEvents, ((TMLADNotifiedEvent) tgc).getEventName())) {
+//                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADNotifiedEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account");
+//                            ce.setTDiagramPanel(tadp);
+//                            ce.setTGComponent(tgc);
+//                            warnings.add(ce);
+//                            activity.addElement(new TMLJunction("void junction", tgc));
+//                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                        } else {
+//                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent) tgc).getEventName() + " is an unknown event");
+//                            ce.setTDiagramPanel(tadp);
+//                            ce.setTGComponent(tgc);
+//                            checkingErrors.add(ce);
+//                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                        }
+//                    } else {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent) tgc).getEventName() + " is an unknown event");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                    }
+//                } else {
+//                    event.setNotified(true);
+//                    tmlnotifiedevent = new TMLNotifiedEvent("notified event", tgc);
+//                    tmlnotifiedevent.setEvent(event);
+//                    tmlnotifiedevent.setVariable(modifyString(((TMLADNotifiedEvent) tgc).getVariable()));
+//                    activity.addElement(tmlnotifiedevent);
+//                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                    listE.addCor(tmlnotifiedevent, tgc);
+//                }
+//
+//            } else if (tgc instanceof TMLADWaitEvent) {
+//                event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADWaitEvent) tgc).getEventName()));
+//                if (event == null) {
+//                    if (removedEvents.size() > 0) {
+//                        if (Conversion.containsStringInList(removedEvents, ((TMLADWaitEvent) tgc).getEventName())) {
+//                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWaitEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account");
+//                            ce.setTDiagramPanel(tadp);
+//                            ce.setTGComponent(tgc);
+//                            warnings.add(ce);
+//                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                            activity.addElement(new TMLJunction("void junction", tgc));
+//                        } else {
+//                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + " is an unknown event");
+//                            ce.setTDiagramPanel(tadp);
+//                            ce.setTGComponent(tgc);
+//                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                            checkingErrors.add(ce);
+//                        }
+//                    } else {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + " is an unknown event");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                        checkingErrors.add(ce);
+//                    }
+//                } else {
+//                    //TraceManager.addDev("Nb of param of event:" + event.getNbOfParams());
+//                    tmlwaitevent = new TMLWaitEvent("wait event", tgc);
+//                    tmlwaitevent.setEvent(event);
+//                    for (int i = 0; i < ((TMLADWaitEvent) tgc).realNbOfParams(); i++) {
+//                        tmp = modifyString(((TMLADWaitEvent) tgc).getRealParamValue(i));
+//                        Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__");
+//                        if (allVariables.size() > 0) {
+//                            for (int k = 0; k < allVariables.size(); k++) {
+//                                //TraceManager.addDev("Adding record: " + allVariables.get(k));
+//                                tmlwaitevent.addParam(allVariables.get(k));
+//                            }
+//                        } else {
+//                            //TraceManager.addDev("Adding param: " + tmp);
+//                            tmlwaitevent.addParam(tmp);
+//                        }
+//                    }
+//                    if (event.getNbOfParams() != tmlwaitevent.getNbOfParams()) {
+//                        //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " waitevent#:" + tmlwaitevent.getNbOfParams());
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + ": wrong number of parameters");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                    } else {
+//                        activity.addElement(tmlwaitevent);
+//                        listE.addCor(tmlwaitevent, tgc);
+//                        ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                    }
+//
+//                }
+//
+//            } else if (tgc instanceof TMLADWriteChannel) {
+//                // Get channels
+//                //TMLADWriteChannel wr = (TMLADWriteChannel) tgc;
+//                channels = ((TMLADWriteChannel) tgc).getChannelsByName();
+//                boolean error = false;
+//                for (int i = 0; i < channels.length; i++) {
+//                    //TraceManager.addDev("Getting from table " + tmltask.getName() + "/" +channels[i]);
+//                    channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i]));
+//                    if (channel == null) {
+//                        if (Conversion.containsStringInList(removedChannels, ((TMLADWriteChannel) tgc).getChannelName(i))) {
+//                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWriteChannel) tgc).getChannelName(i) + " has been removed because the corresponding channel is not taken into account");
+//                            ce.setTDiagramPanel(tadp);
+//                            ce.setTGComponent(tgc);
+//                            warnings.add(ce);
+//                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                            activity.addElement(new TMLJunction("void junction", tgc));
+//                        } else {
+//                            UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWriteChannel) tgc).getChannelName(i) + " is an unknown channel");
+//                            ce.setTDiagramPanel(tadp);
+//                            ce.setTGComponent(tgc);
+//                            ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN);
+//                            checkingErrors.add(ce);
+//                        }
+//                        error = true;
+//
+//                    }
+//                }
+//                if (!error) {
+//                    tmlwritechannel = new TMLWriteChannel("write channel", tgc);
+//                    tmlwritechannel.setNbOfSamples(modifyString(((TMLADWriteChannel) tgc).getSamplesValue()));
+//                    tmlwritechannel.setEncForm(((TMLADWriteChannel) tgc).getEncForm());
+//                    for (int i = 0; i < channels.length; i++) {
+//                        channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i]));
+//                        tmlwritechannel.addChannel(channel);
+//                    }
+//                    //if (wr.isAttacker()){
+//                    //channel = tmlm.getChannelByName(getAttackerChannel(channels[0]));
+//                    //tmlwritechannel.addChannel(channel);
+//                    //}
+//                    //add sec pattern
+//                    if (securityPatterns.get(((TMLADWriteChannel) tgc).getSecurityContext()) != null) {
+//                        tmlwritechannel.securityPattern = securityPatterns.get(((TMLADWriteChannel) tgc).getSecurityContext());
+//                        int cur = Integer.valueOf(modifyString(((TMLADWriteChannel) tgc).getSamplesValue()));
+//                        int add = Integer.valueOf(tmlwritechannel.securityPattern.overhead);
+//                        if (!tmlwritechannel.securityPattern.nonce.equals("")) {
+//                            SecurityPattern nonce = securityPatterns.get(tmlwritechannel.securityPattern.nonce);
+//                            if (nonce != null) {
+//                                add = Integer.valueOf(nonce.overhead);
+//                            }
+//                        }
+//                        cur = cur + add;
+//                        tmlwritechannel.setNbOfSamples(Integer.toString(cur));
+//                    } else if (!((TMLADWriteChannel) tgc).getSecurityContext().isEmpty()) {
+//                        //Throw error for missing security pattern
+//                        UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADWriteChannel) tgc).getSecurityContext() + " not found");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                    }
+//                    if (tmltask.isAttacker()) {
+//                        tmlwritechannel.setAttacker(true);
+//                    }
+//                    activity.addElement(tmlwritechannel);
+//                    ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK);
+//                    listE.addCor(tmlwritechannel, tgc);
+//                }
+//            }
+//        }
+//
+//        // Interconnection between elements
+//        TGConnectorTMLAD tgco;
+//        TGConnectingPoint p1, p2;
+//        TMLActivityElement ae1, ae2;
+//        TGComponent tgc1, tgc2, tgc3;
+//        int j, index;
+//
+//        iterator = list.listIterator();
+//        while (iterator.hasNext()) {
+//            tgc = iterator.next();
+//            if (tgc instanceof TGConnectorTMLAD) {
+//                tgco = (TGConnectorTMLAD) tgc;
+//                p1 = tgco.getTGConnectingPointP1();
+//                p2 = tgco.getTGConnectingPointP2();
+//
+//                // Identification of connected components
+//                tgc1 = null;
+//                tgc2 = null;
+//                for (j = 0; j < list.size(); j++) {
+//                    tgc3 = list.get(j);
+//                    if (tgc3.belongsToMe(p1)) {
+//                        tgc1 = tgc3;
+//                    }
+//                    if (tgc3.belongsToMe(p2)) {
+//                        tgc2 = tgc3;
+//                    }
+//                }
+//
+//                // Connecting tml modeling components
+//                if ((tgc1 != null) && (tgc2 != null)) {
+//                    //ADComponent ad1, ad2;
+//                    ae1 = activity.findReferenceElement(tgc1);
+//                    ae2 = activity.findReferenceElement(tgc2);
+//
+//                    if ((ae1 != null) && (ae2 != null)) {
+//                        //Special case if "for loop" or if "choice"
+//
+//                        if (ae1 instanceof TMLForLoop) {
+//                            index = tgc1.indexOf(p1) - 1;
+//                            if (index == 0) {
+//                                ae1.addNext(0, ae2);
+//                            } else {
+//                                ae1.addNext(ae2);
+//                            }
+//
+//                        } else if (ae1 instanceof TMLChoice) {
+//                            index = tgc1.indexOf(p1) - 1;
+//                            //TraceManager.addDev("Adding next:" + ae2);
+//                            ae1.addNext(ae2);
+//                            //TraceManager.addDev("Adding guard:" + ((TMLADChoice)tgc1).getGuard(index));
+//                            ((TMLChoice) ae1).addGuard(modifyString(((TMLADChoice) tgc1).getGuard(index)));
+//
+//                        } else if (ae1 instanceof TMLSequence) {
+//                            index = tgc1.indexOf(p1) - 1;
+//                            ((TMLSequence) ae1).addIndex(index);
+//                            ae1.addNext(ae2);
+//                            //TraceManager.addDev("Adding " + ae2 + " at index " + index);
+//
+//                        } else if (ae1 instanceof TMLRandomSequence) {
+//                            index = tgc1.indexOf(p1) - 1;
+//                            ((TMLRandomSequence) ae1).addIndex(index);
+//                            ae1.addNext(ae2);
+//                            //TraceManager.addDev("Adding " + ae2 + " at index " + index);
+//
+//                        } else {
+//                            ae1.addNext(ae2);
+//                        }
+//                    }
+//                }
+//            }
+//        }
+//
+//
+//        // Check that each "for" has two nexts
+//        // Check that TMLChoice have compatible guards
+//        // Check TML select evts
+//        iterator = list.listIterator();
+//        while (iterator.hasNext()) {
+//            tgc = iterator.next();
+//
+//            if ((tgc instanceof TMLADForLoop) || (tgc instanceof TMLADForStaticLoop)) {
+//                ae1 = activity.findReferenceElement(tgc);
+//                if (ae1 != null) {
+//                    if (ae1.getNbNext() != 2) {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted for loop: a loop must have an internal behavior, and an exit behavior ");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                    }
+//                }
+//            } else if (tgc instanceof TMLADChoice) {
+//                tmlchoice = (TMLChoice) (activity.findReferenceElement(tgc));
+//                tmlchoice.orderGuards();
+//
+//                int nbNonDeter = tmlchoice.nbOfNonDeterministicGuard();
+//                int nbStocha = tmlchoice.nbOfStochasticGuard();
+//                if ((nbNonDeter > 0) && (nbStocha > 0)) {
+//                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic and stochastic guards");
+//                    ce.setTDiagramPanel(tadp);
+//                    ce.setTGComponent(tgc);
+//                    checkingErrors.add(ce);
+//                }
+//                int nb = Math.max(nbNonDeter, nbStocha);
+//                if (nb > 0) {
+//                    nb = nb + tmlchoice.nbOfElseAndAfterGuards();
+//                    if (nb != tmlchoice.getNbGuard()) {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic/ stochastic and regular guards)");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                    }
+//                }
+//
+//                if (tmlchoice.nbOfNonDeterministicGuard() > 0) {
+//                    /*if (!rndAdded) {
+//                      TMLAttribute tmlt = new TMLAttribute("rnd__0", new TMLType(TMLType.NATURAL));
+//                      tmlt.initialValue = "";
+//                      tmltask.addAttribute(tmlt);
+//                      rndAdded = true;
+//                      }*/
+//                }
+//                if (tmlchoice.hasMoreThanOneElse()) {
+//                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [else] guard");
+//                    ce.setTDiagramPanel(tadp);
+//                    ce.setTGComponent(tgc);
+//                    checkingErrors.add(ce);
+//                } else if ((index = tmlchoice.getElseGuard()) > -1) {
+//                    index = tmlchoice.getElseGuard();
+//                    if (index == 0) {
+//                        UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have a regular guard");
+//                        ce.setTDiagramPanel(tadp);
+//                        ce.setTGComponent(tgc);
+//                        checkingErrors.add(ce);
+//                    }
+//                }
+//                if (tmlchoice.hasMoreThanOneAfter()) {
+//                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [after] guard");
+//                    ce.setTDiagramPanel(tadp);
+//                    ce.setTGComponent(tgc);
+//                    checkingErrors.add(ce);
+//                }
+//            }
+//            if (tgc instanceof TMLADSelectEvt) {
+//                tmlselectevt = (TMLSelectEvt) (activity.findReferenceElement(tgc));
+//                if (!tmlselectevt.isARealSelectEvt()) {
+//                    UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "'Select events'  should be followed by only event receiving operators");
+//                    ce.setTDiagramPanel(tadp);
+//                    ce.setTGComponent(tgc);
+//                    checkingErrors.add(ce);
+//                }
+//            }
+//
+//        }
+//
+//        // Sorting nexts elements of Sequence
+//        for (j = 0; j < activity.nElements(); j++) {
+//            ae1 = activity.get(j);
+//            if (ae1 instanceof TMLSequence) {
+//                ((TMLSequence) ae1).sortNexts();
+//            }
+//            if (ae1 instanceof TMLRandomSequence) {
+//                ((TMLRandomSequence) ae1).sortNexts();
+//            }
+//        }
+//    }
 
     public TMLMapping<TGComponent> translateToTMLMapping() {
         tmlm = new TMLModeling<>(true);
@@ -3850,23 +3931,23 @@ public class GTMLModeling {
         }
         return "";
     }
-
-    public String getFromTable(TMLTask task, String s) {
-        //TraceManager.addDev("TABLE GET: Getting from task=" + task.getName() + " element=" + s);
-
-        if (table == null) {
-            return s;
-        }
-
-        String ret = table.get(task.getName() + "/" + s);
-        //TraceManager.addDev("Returning=" + ret);
-
-        if (ret == null) {
-            return s;
-        }
-
-        return ret;
-    }
+//
+//    public String getFromTable(TMLTask task, String s) {
+//        //TraceManager.addDev("TABLE GET: Getting from task=" + task.getName() + " element=" + s);
+//
+//        if (table == null) {
+//            return s;
+//        }
+//
+//        String ret = table.get(task.getName() + "/" + s);
+//        //TraceManager.addDev("Returning=" + ret);
+//
+//        if (ret == null) {
+//            return s;
+//        }
+//
+//        return ret;
+//    }
 
     public void removeActionsWithRecords() {
         //TraceManager.addDev("Reworking actions with records");
diff --git a/src/main/java/ui/ICDElementVisitor.java b/src/main/java/ui/ICDElementVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..2ccfa5f361707c74a7df2c923b162cf5d4c8e332
--- /dev/null
+++ b/src/main/java/ui/ICDElementVisitor.java
@@ -0,0 +1,6 @@
+package ui;
+
+public interface ICDElementVisitor {
+	
+	boolean visit( CDElement element );
+}
diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java
index 1024449f09b86cfb08cab17ffc4e669b6f32dd22..86f669307489ba4789cce0fe8d35032fd349bddb 100644
--- a/src/main/java/ui/MainGUI.java
+++ b/src/main/java/ui/MainGUI.java
@@ -8054,7 +8054,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
         return false;
     }
 
-		public boolean newSysCAMSComponentTaskName(TURTLEPanel tp, String old, String niou) {
+    public boolean newSysCAMSComponentTaskName(TURTLEPanel tp, String old, String niou) {
     	JTabbedPane jtp = tp.tabbedPane;
     	for (int i = 0; i < jtp.getTabCount(); i++) {
     		if (jtp.getTitleAt(i).equals(niou)) {
@@ -8075,7 +8075,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
     					tdp.setName(niou);
     				}
     			}
-    			
+
     			return true;
     		}
     	}
@@ -8439,33 +8439,33 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
         //tofile.extracParamToFile();
     }
 
-    public void avatarToSoclib() {
-        //DG 6.2. appelee nulle part?
-
-        ADDDiagramPanel deploymentDiagramPanel = getDeploymentPanel();
-        AvatarDesignPanel designDiagramPanel = getFirstAvatarDesignPanelFound();
-
-        AvatarDeploymentPanelTranslator avdeploymenttranslator = new AvatarDeploymentPanelTranslator(deploymentDiagramPanel);
-        AvatarddSpecification avddspec = avdeploymenttranslator.getAvatarddSpecification();
-
-
-        AvatarDesignPanelTranslator avdesigntranslator = new AvatarDesignPanelTranslator(designDiagramPanel);
-
-        List<AvatarBDStateMachineOwner> adp = designDiagramPanel.getAvatarBDPanel().getFullStateMachineOwnerList();
-        AvatarSpecification avaspec = avdesigntranslator.generateAvatarSpecification(adp);
-
-        // Generator for block tasks and application main file
-
-        TasksAndMainGenerator gene = new TasksAndMainGenerator(avddspec, avaspec);
-        gene.generateSoclib(false, false);
-        try {
-            //System.err.println("ok");
-            gene.saveInFiles(TasksAndMainGenerator.getGeneratedPath());
-        } catch (FileException e) {
-            System.err.println("FileException : MainGUI.avatarToSoclib()");
-        }
-
-    }
+//    public void avatarToSoclib() {
+//        //DG 6.2. appelee nulle part?
+//
+//        ADDDiagramPanel deploymentDiagramPanel = getDeploymentPanel();
+//        AvatarDesignPanel designDiagramPanel = getFirstAvatarDesignPanelFound();
+//
+//        AvatarDeploymentPanelTranslator avdeploymenttranslator = new AvatarDeploymentPanelTranslator(deploymentDiagramPanel);
+//        AvatarddSpecification avddspec = avdeploymenttranslator.getAvatarddSpecification();
+//
+//
+//        AvatarDesignPanelTranslator avdesigntranslator = new AvatarDesignPanelTranslator(designDiagramPanel);
+//
+//        List<AvatarBDStateMachineOwner> adp = designDiagramPanel.getAvatarBDPanel().getFullStateMachineOwnerList();
+//        AvatarSpecification avaspec = avdesigntranslator.generateAvatarSpecification(adp);
+//
+//        // Generator for block tasks and application main file
+//
+//        TasksAndMainGenerator gene = new TasksAndMainGenerator(avddspec, avaspec);
+//        gene.generateSoclib(false, false);
+//        try {
+//            //System.err.println("ok");
+//            gene.saveInFiles(TasksAndMainGenerator.getGeneratedPath());
+//        } catch (FileException e) {
+//            System.err.println("FileException : MainGUI.avatarToSoclib()");
+//        }
+//
+//    }
     //--------------------end DDD------------------------------------------------
 
     public Vector<SysCAMSComponentTaskDiagramPanel> getListSysCAMSPanel() {
diff --git a/src/main/java/ui/MalformedModelingException.java b/src/main/java/ui/MalformedModelingException.java
index c656bb59ba229eb6908d1fe044cec61d58cd9110..809732ad480a013cba12796fab8ebe4bea32212a 100755
--- a/src/main/java/ui/MalformedModelingException.java
+++ b/src/main/java/ui/MalformedModelingException.java
@@ -36,12 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
-
 /**
  * Class MalformedModelingException
  * Creation: 15/12/2003
@@ -50,10 +46,22 @@ package ui;
  */
 public	class MalformedModelingException extends Exception {
 	
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 7411903139644480309L;
+	
 	public MalformedModelingException() {
-		super("Modeling does not follows the TTool format");
+		this( (Throwable) null );
+	}
+
+	public MalformedModelingException( final String message ) {
+		super( message );
+	}
+
+	public MalformedModelingException( final Throwable th ) {
+		super( "Modeling does not follow the TTool format", th );
 	}
-    
 } // Class 
 
 	
\ No newline at end of file
diff --git a/src/main/java/ui/MalformedTMLDesignException.java b/src/main/java/ui/MalformedTMLDesignException.java
index 45952af48e7ebaeae8f33a61f2fd5c2fc6aa38c9..725d68f6eb5d105ba5edb75292c7076a319ed860 100755
--- a/src/main/java/ui/MalformedTMLDesignException.java
+++ b/src/main/java/ui/MalformedTMLDesignException.java
@@ -36,11 +36,12 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
+import java.util.ArrayList;
+import java.util.List;
+
+import translator.CheckingError;
 
 /**
  * Class MalformedTMLDesigngException
@@ -50,10 +51,43 @@ package ui;
  */
 public	class MalformedTMLDesignException extends Exception {
 	
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = -379782523139636075L;
+	
+	private final List<CheckingError> errors;
+
 	public MalformedTMLDesignException(String msg) {
-		super(msg);
+		this( msg, new ArrayList<CheckingError>() );
 	}
     
+	public MalformedTMLDesignException( final String msg,
+										final List<CheckingError> errors ) {
+		super( msg );
+		
+		this.errors = errors;
+	}
+	
+	public List<CheckingError> getErrors() {
+		return errors;
+	}
+	
+	@Override
+	public String toString() {
+		final StringBuilder message = new StringBuilder( super.toString() );
+		
+		if ( !getErrors().isEmpty() ) {
+			message.append( "Errors are:" );
+		}
+		
+		for ( final CheckingError  error : getErrors() ) {
+			message.append( System.lineSeparator() + error );
+		}
+		
+		return message.toString();
+	}
+   
 } // Class 
 
 	
\ No newline at end of file
diff --git a/src/main/java/ui/RangeExpression.java b/src/main/java/ui/RangeExpression.java
new file mode 100644
index 0000000000000000000000000000000000000000..58ee809adaaee21d80ca96c88a06621afa482d37
--- /dev/null
+++ b/src/main/java/ui/RangeExpression.java
@@ -0,0 +1,56 @@
+package ui;
+
+public class RangeExpression extends Expression {
+	
+	private final Expression minExpression;
+
+	private final Expression maxExpression;
+	
+	
+	public RangeExpression( final String minExpressionText,
+							final String maxExpressionText,
+							final String nullText,
+							final String labelGlobal,
+							final String labelValues ) {
+		super( null, nullText, labelGlobal );
+		
+		
+		minExpression = new Expression( minExpressionText, nullText, labelValues );
+		maxExpression = new Expression( maxExpressionText, nullText, labelValues );
+	}
+
+	public Expression getMinExpression() {
+		return minExpression;
+	}
+
+	public Expression getMaxExpression() {
+		return maxExpression;
+	}
+	
+	@Override
+	public void setEnabled( final boolean enabled ) {
+		getMinExpression().setEnabled( enabled );
+		getMaxExpression().setEnabled( enabled );
+	}
+	
+	@Override
+	public boolean isEnabled() {
+		return minExpression.isEnabled() || maxExpression.isEnabled();
+	}
+	
+	@Override
+	public boolean isNull() {
+		return minExpression.isNull() && maxExpression.isNull();
+	}
+	
+	@Override
+	public String toString() {
+		if ( getLabel() == null ) {
+			return "[" + getMinExpression().toString() + ", " + getMaxExpression().toString() + "]";
+		}
+		
+		final Object[] values = new String[] { getMinExpression().toString(), getMaxExpression().toString() };
+		
+		return String.format( getLabel(), values );
+	}
+}
diff --git a/src/main/java/ui/TDiagramMouseManager.java b/src/main/java/ui/TDiagramMouseManager.java
index 0f589acc1533a1e1e8a04f9c7a5a48fae811dda3..48895b01a38191f457baacc394546954010c1256 100755
--- a/src/main/java/ui/TDiagramMouseManager.java
+++ b/src/main/java/ui/TDiagramMouseManager.java
@@ -38,13 +38,13 @@
 
 package ui;
 
-import ui.window.JDialogSearchBox;
-
-import java.awt.*;
+import java.awt.Cursor;
+import java.awt.Point;
 import java.awt.event.MouseAdapter;
 import java.awt.event.MouseEvent;
 import java.util.ArrayList;
-import myutil.*;
+
+import ui.window.JDialogSearchBox;
 
 /**
  * Class TDiagramMouseManager
@@ -58,7 +58,7 @@ public class TDiagramMouseManager extends MouseAdapter {//implements MouseListen
     private TDiagramPanel tdp;
 
     private TGComponent tgc;
-    private TGComponent lastSelectedComponent = null;
+   // private TGComponent lastSelectedComponent = null;
 
     private int oldx;
     private int oldy;
@@ -75,7 +75,7 @@ public class TDiagramMouseManager extends MouseAdapter {//implements MouseListen
 
     private int resizeInfo;
 
-    private boolean selectedComponent = false;
+   // private boolean selectedComponent = false;
 
     //private Point p;
     private TGConnectingPoint cp;
@@ -496,14 +496,14 @@ public class TDiagramMouseManager extends MouseAdapter {//implements MouseListen
  	    	else
  	    		tdp.getGUI().setMode(MainGUI.OPENED);
  	    	
-     	    lastSelectedComponent = tgc;
+     	    //lastSelectedComponent = tgc;
      	    tdp.setSelect(true);
      	    tgc.singleClick(tdp.getGUI().getFrame(), x, y);       	   
         }
         else {
         	tdp.getGUI().setMode(MainGUI.OPENED);
      	    tdp.setSelect(false);
-     	    lastSelectedComponent = null;
+     	   // lastSelectedComponent = null;
      	    tdp.componentPointed = null;
         }
         tdp.getGUI().changeMade(tdp, TDiagramPanel.CHANGE_VALUE_COMPONENT);
@@ -581,19 +581,22 @@ public class TDiagramMouseManager extends MouseAdapter {//implements MouseListen
                 tdp.repaint();
             }
         }
+        
+        // Issue #69 Always repaint. Needed for displaying the transition element in Avatar state machine diagram
+//
+//        if ((selected == TGComponentManager.CONNECTOR) && (tdp.mode == TDiagramPanel.NORMAL)) { // is connectingPointShow selected
+//            if(tdp.highlightOutAndFreeConnectingPoint(e.getX(), e.getY(), tdp.getMGUI().getIdButtonSelected())) {
+//                tdp.repaint();
+//            }
+//        }
+//
+//        if ((selected == TGComponentManager.CONNECTOR) && (tdp.mode == TDiagramPanel.ADDING_CONNECTOR)) {
+//            tdp.highlightInAndFreeConnectingPoint(e.getX(), e.getY(), tdp.getMGUI().getIdButtonSelected());
+//            tdp.setAddingTGConnector(e.getX(), e.getY());
+//            tdp.repaint();
+//        }
 
-        if ((selected == TGComponentManager.CONNECTOR) && (tdp.mode == TDiagramPanel.NORMAL)) { // is connectingPointShow selected
-            if(tdp.highlightOutAndFreeConnectingPoint(e.getX(), e.getY(), tdp.getMGUI().getIdButtonSelected())) {
-                tdp.repaint();
-            }
-        }
-
-        if ((selected == TGComponentManager.CONNECTOR) && (tdp.mode == TDiagramPanel.ADDING_CONNECTOR)) {
-            tdp.highlightInAndFreeConnectingPoint(e.getX(), e.getY(), tdp.getMGUI().getIdButtonSelected());
-            tdp.setAddingTGConnector(e.getX(), e.getY());
-            tdp.repaint();
-        }
-
+        tdp.repaint();
     }
 
     @Override
diff --git a/src/main/java/ui/TDiagramPanel.java b/src/main/java/ui/TDiagramPanel.java
index 02ae7c410e61c75e08d2e1ea2a902a8770d1b205..fcb27f31919baf038bc7ba4881c16f760b4c1452 100755
--- a/src/main/java/ui/TDiagramPanel.java
+++ b/src/main/java/ui/TDiagramPanel.java
@@ -1701,7 +1701,10 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         }
 
         if (e.getSource() == enableDisable) {
-            componentPopup.setEnabled(!componentPopup.isEnabled());
+            
+        	// Issue #69
+        	componentPopup.setEnabled( !componentPopup.isEnabled( true ) );
+//            componentPopup.setEnabled(!componentPopup.isEnabled());
             getGUI().changeMade(this, CHANGE_VALUE_COMPONENT);
             repaint();
             return;
@@ -2031,15 +2034,17 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
             clone.setEnabled(false);
         }
 
-        if (componentPointed instanceof CanBeDisabled) {
-            /*if (componentPointed.hasFather()) {
-              clone.setEnabled(false);
-              } else {*/
-            enableDisable.setEnabled(true);
-            //}
-        } else {
-            enableDisable.setEnabled(false);
-        }
+        // Issue #69
+        enableDisable.setEnabled( componentPointed.canBeDisabled() );
+//        if (componentPointed instanceof CanBeDisabled) {
+//            /*if (componentPointed.hasFather()) {
+//              clone.setEnabled(false);
+//              } else {*/
+//            enableDisable.setEnabled(true);
+//            //}
+//        } else {
+//            enableDisable.setEnabled(false);
+//        }
 
         if (componentPointed instanceof SwallowedTGComponent) {
             if (componentPointed.getFather() == null) {
@@ -2548,6 +2553,18 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         }
         return null;
     }
+    
+    public List<TGConnector> getConnectors() {
+    	final List<TGConnector> connectors = new ArrayList<TGConnector>();
+ 
+        for( final TGComponent compo : componentList ) {
+        	if ( compo instanceof TGConnector ) {
+        		connectors.add( (TGConnector) compo );
+        	}
+        }
+        
+        return connectors;
+    }
 
     public TGComponent getComponentToWhichBelongs(TGConnectingPoint p) {
         for (TGComponent tgc1 : this.componentList) {
@@ -2569,7 +2586,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         return null;
     }
 
-    public void getAllLatencyChecks(ArrayList<TGComponent> _list) {
+    public void getAllLatencyChecks(List<TGComponent> _list) {
         for (TGComponent tgc : this.componentList) {
             if (tgc.getCheckLatency()) {
                 _list.add(tgc);
@@ -2577,13 +2594,13 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         }
     }
 
-    public void getAllCheckedTGComponent(ArrayList<TGComponent> _list) {
+    public void getAllCheckedTGComponent( List<TGComponent> _list) {
         for (TGComponent tgc : this.componentList)
             if (tgc.hasCheckedAccessibility())
                 _list.addAll(tgc.getAllCheckedAccessibility());
     }
 
-    public void getAllCheckableTGComponent(ArrayList<TGComponent> _list) {
+    public void getAllCheckableTGComponent(List<TGComponent> _list) {
         for (TGComponent tgc : this.componentList) {
             //if (tgc instanceof CheckableAccessibility) {
                 _list.addAll(tgc.getAllCheckableAccessibility());
@@ -2594,7 +2611,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
 
     }
 
-    public void getAllCheckableInvariantTGComponent(ArrayList<TGComponent> _list) {
+    public void getAllCheckableInvariantTGComponent(List<TGComponent> _list) {
         for (TGComponent tgc : this.componentList)
             if (tgc.hasCheckableInvariant())
                 _list.addAll(tgc.getAllCheckableInvariant());
@@ -3702,8 +3719,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         ;
     }
 
-
-    public void getListOfBreakPoints(java.util.List<Point> points, int taskID) {
+    public void getListOfBreakPoints(List<Point> points, int taskID) {
         for (TGComponent tgc : this.componentList)
             if (tgc.getBreakpoint() && (tgc.getDIPLOID() != -1)) {
                 boolean found = false;
@@ -3863,7 +3879,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         select = b;
     }
 
-    public void upComponent() {
+    protected void upComponent() {
         TGComponent tgc = componentPointed;
         if (tgc != null && tgc.moveable) {
             tgc.setMoveCd(tgc.x, tgc.y - MOVE_SPEED);
@@ -3871,7 +3887,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         }
     }
 
-    public void downComponent() {
+    protected void downComponent() {
         TGComponent tgc = componentPointed;
         if (tgc != null && tgc.moveable) {
             tgc.setMoveCd(tgc.x, tgc.y + MOVE_SPEED);
@@ -3879,7 +3895,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         }
     }
 
-    public void leftComponent() {
+    protected void leftComponent() {
         TGComponent tgc = componentPointed;
         if (tgc != null && tgc.moveable) {
             tgc.setMoveCd(tgc.x - MOVE_SPEED, tgc.y);
@@ -3887,7 +3903,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         }
     }
 
-    public void rightComponent() {
+    protected void rightComponent() {
         TGComponent tgc = componentPointed;
         if (tgc != null && tgc.moveable) {
             tgc.setMoveCd(tgc.x + MOVE_SPEED, tgc.y);
@@ -3895,22 +3911,22 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
         }
     }
 
-    public void upComponents() {
+    protected void upComponents() {
         moveSelected(xSel, ySel - MOVE_SPEED);
         repaint();
     }
 
-    public void downComponents() {
+    protected void downComponents() {
         moveSelected(xSel, ySel + MOVE_SPEED);
         repaint();
     }
 
-    public void leftComponents() {
+    protected void leftComponents() {
         moveSelected(xSel - MOVE_SPEED, ySel);
         repaint();
     }
 
-    public void rightComponents() {
+    protected void rightComponents() {
         moveSelected(xSel + MOVE_SPEED, ySel);
         repaint();
     }
@@ -3922,6 +3938,21 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree {
     public TDiagramMouseManager getMouseManager() {
         return tdmm;
     }
+
+    /**
+     * Check if newvalue is already a name of a component.
+     *
+     * @param newvalue
+     * @return true if the name is used
+     * @author Fabien Tessier
+     */
+    public boolean isCompositeNameUsed(String newvalue) {
+        for (TGComponent tgc : this.componentList) {
+            if (tgc.getValue().equals(newvalue))
+                return true;
+        }
+        return false;
+    }
 }
 
 
diff --git a/src/main/java/ui/TGCNote.java b/src/main/java/ui/TGCNote.java
index 069995457ba1bc1483d86c44a448f1b89eeef893..0cb5986d14fc39d7d08d862585d1983fdafe5570 100755
--- a/src/main/java/ui/TGCNote.java
+++ b/src/main/java/ui/TGCNote.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui;
 
 import myutil.*;
@@ -119,7 +118,7 @@ public class TGCNote extends TGCScalableWithoutInternalComponent {
         return this.values;
     }
 
-
+    @Override
     public void internalDrawing(Graphics graph) {
         if (this.rescaled && !this.tdp.isScaled()) {
             this.rescaled = false;
@@ -178,10 +177,10 @@ public class TGCNote extends TGCScalableWithoutInternalComponent {
         graph.fillPolygon(px, py, 4);
 
         graph.setColor(c);
-        Graphics2D g2 = (Graphics2D)graph;
+       // Graphics2D g2 = (Graphics2D)graph;
         for (int i = 0; i < this.values.length; i++) {
             //TraceManager.addDev("Value #" + i + " = " + this.values[i]);
-            g2.drawString(this.values[i], this.x + this.textX, this.y + this.textY + (i + 1) * this.currentFontSize);
+        	graph.drawString(this.values[i], this.x + this.textX, this.y + this.textY + (i + 1) * this.currentFontSize);
         }
     }
 
@@ -189,6 +188,7 @@ public class TGCNote extends TGCScalableWithoutInternalComponent {
         values = Conversion.wrapText(value);
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String oldValue = this.value;
 
@@ -205,6 +205,7 @@ public class TGCNote extends TGCScalableWithoutInternalComponent {
         return false;
     }
 
+    @Override
     public TGComponent isOnMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -212,6 +213,7 @@ public class TGCNote extends TGCScalableWithoutInternalComponent {
         return null;
     }
 
+    @Override
     public void rescale(double scaleFactor) {
         /*dlineHeight = (lineHeight + dlineHeight) / oldScaleFactor * scaleFactor;
           lineHeight = (int)(dlineHeight);
@@ -223,10 +225,12 @@ public class TGCNote extends TGCScalableWithoutInternalComponent {
         super.rescale(scaleFactor);
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.UML_NOTE;
     }
 
+    @Override
     protected String translateExtraParam() {
         if (values == null)
             this.makeValue();
diff --git a/src/main/java/ui/TGCOneLineText.java b/src/main/java/ui/TGCOneLineText.java
index 26ee5a0803b073d4823ab54ac9281e78def16097..d9db3c656949ab3c9baec22b5a700c60a720f2dd 100755
--- a/src/main/java/ui/TGCOneLineText.java
+++ b/src/main/java/ui/TGCOneLineText.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
 import myutil.Conversion;
@@ -48,8 +45,6 @@ import ui.util.IconManager;
 import javax.swing.*;
 import java.awt.*;
 
-//import java.awt.geom.*;
-
 /**
    * Class TGCOneLineText
    * Internal component that is a onle line text
@@ -58,8 +53,8 @@ import java.awt.*;
    * @author Ludovic APVRILLE
  */
 public class TGCOneLineText extends TGCWithoutInternalComponent{
-    protected boolean emptyText;
 
+	protected boolean emptyText;
 
     public TGCOneLineText(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) {
         super(_x, _y,  _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -79,6 +74,7 @@ public class TGCOneLineText extends TGCWithoutInternalComponent{
         myImageIcon = IconManager.imgic302;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         if (!tdp.isScaled()) {
             width = g.getFontMetrics().stringWidth(value);
@@ -90,6 +86,7 @@ public class TGCOneLineText extends TGCWithoutInternalComponent{
         }
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y - height, Math.max(width, minWidth), height)) {
             return this;
@@ -97,6 +94,7 @@ public class TGCOneLineText extends TGCWithoutInternalComponent{
         return null;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String oldValue = value;
         String text = getName() + ": ";
@@ -124,21 +122,12 @@ public class TGCOneLineText extends TGCWithoutInternalComponent{
         return false;
     }
     
-    public void renameTab(String s) {
-    	TURTLEPanel tp = this.tdp.tp;
-    	for (TDiagramPanel tdpTmp: tp.panels) {
-    		if (tdpTmp.name.equals(name)) {
-    	    	if (!tp.nameInUse(s)) {
-    	            tp.tabbedPane.setTitleAt(tp.getIndexOfChild(tdpTmp), s);
-    	            tp.panels.elementAt(tp.getIndexOfChild(tdpTmp)).setName(s);
-    	            tp.mgui.changeMade(null, -1);
-    	        }
-    			break;
-    		}
-    	}
+    /* Issue #69
+     *  (non-Javadoc)
+     * @see ui.TGComponent#canBeDisabled()
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	return getFather() != null && getFather().canLabelBeDisabled( this );
     }
-    
-   public boolean nameUsed(String s) {
-    	return this.tdp.tp.refNameUsed(s);
-   }
 }
diff --git a/src/main/java/ui/TGCPointOfConnector.java b/src/main/java/ui/TGCPointOfConnector.java
index 253517696f2ad867a1931f6acdd6260399fa1bdf..5d8608d4fb2d66b902606c478f4159d81c39867e 100755
--- a/src/main/java/ui/TGCPointOfConnector.java
+++ b/src/main/java/ui/TGCPointOfConnector.java
@@ -109,4 +109,13 @@ public class TGCPointOfConnector extends TGCScalableWithoutInternalComponent {
     public int getCurrentMaxY() {
     	return getY() + getHeight();
     }
+
+	/* Issue #69
+	 * (non-Javadoc)
+	 * @see ui.CDElement#canBeDisabled()
+	 */
+	@Override
+	public boolean canBeDisabled() {
+		return false;
+	}
 }
diff --git a/src/main/java/ui/TGCScalableWithInternalComponent.java b/src/main/java/ui/TGCScalableWithInternalComponent.java
index a5c9f992f7723cb82392d62b87f1f36ea85f4d40..e292b8944c2010235867f686897fc8905e6ab373 100755
--- a/src/main/java/ui/TGCScalableWithInternalComponent.java
+++ b/src/main/java/ui/TGCScalableWithInternalComponent.java
@@ -38,8 +38,6 @@
 
 package ui;
 
-import myutil.TraceManager;
-
 /**
    * Class TGCScalableWithInternalComponent
    * Graphical component that contains one or more internal components, and which is scalable
@@ -48,8 +46,10 @@ import myutil.TraceManager;
    * @author Ludovic APVRILLE
  */
 public abstract class TGCScalableWithInternalComponent extends TGCWithInternalComponent implements ScalableTGComponent {
-    protected boolean rescaled = false;
-    protected double oldScaleFactor;
+    
+	protected boolean rescaled = false;
+    
+	protected double oldScaleFactor;
 
     public TGCScalableWithInternalComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -114,7 +114,7 @@ public abstract class TGCScalableWithInternalComponent extends TGCWithInternalCo
         hasBeenResized();
     }
 
-    public void initScaling(int w, int h) {
+    protected void initScaling(int w, int h) {
         oldScaleFactor = tdp.getZoom();
 
         dx = 0;
@@ -139,5 +139,4 @@ public abstract class TGCScalableWithInternalComponent extends TGCWithInternalCo
 
         rescaled = true;
     }
-
 }
diff --git a/src/main/java/ui/TGCWithInternalComponent.java b/src/main/java/ui/TGCWithInternalComponent.java
index 1b2d6e71a192ec96a0abb56b59dcdb8d8c620fb0..833bc50b1d75cce2f7893fc8197b17304c4e411f 100755
--- a/src/main/java/ui/TGCWithInternalComponent.java
+++ b/src/main/java/ui/TGCWithInternalComponent.java
@@ -36,13 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
-//import java.awt.*;
-
 /**
    * Class TGCWithInternalComponent
    * Graphical component that contains one or more internal components
@@ -50,13 +45,13 @@ package ui;
    * @version 1.0 22/12/2003
    * @author Ludovic APVRILLE
  */
-public abstract class TGCWithInternalComponent extends TGComponent{
-
+public abstract class TGCWithInternalComponent extends TGComponent {
 
     public TGCWithInternalComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
     }
 
+    @Override
     public void setState(int s) {
         state = s;
         if (s != TGState.POINTER_ON_ME) {
@@ -76,6 +71,7 @@ public abstract class TGCWithInternalComponent extends TGComponent{
         }
     }
 
+    @Override
     public final TGComponent isOnMe(int x1, int y1) {
         selectedInternalComponent = isOnAnInternalTGComponent(x1, y1);
 
@@ -87,5 +83,4 @@ public abstract class TGCWithInternalComponent extends TGComponent{
     }
 
     public abstract TGComponent isOnOnlyMe(int x1, int y1);
-
 }
diff --git a/src/main/java/ui/TGCWithoutInternalComponent.java b/src/main/java/ui/TGCWithoutInternalComponent.java
index cfbf1548aeadae10870aebc17032143dcb230ce2..8689b451937bd35e3a17fb4495a24b6019c4226e 100755
--- a/src/main/java/ui/TGCWithoutInternalComponent.java
+++ b/src/main/java/ui/TGCWithoutInternalComponent.java
@@ -36,13 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
-//import java.awt.*;
-
 /**
  * Class TGCWithoutInternalComponent
  * Graphical component which contains no internal component
@@ -59,6 +54,7 @@ public abstract class TGCWithoutInternalComponent extends TGComponent{
         nbInternalTGComponent = 0;
     }
     
+    @Override
     public void setState(int s) {
         if ((s == TGState.POINTED) && (father == null)) {
             state = TGState.POINTER_ON_ME;
diff --git a/src/main/java/ui/TGComponent.java b/src/main/java/ui/TGComponent.java
index 3d48762e9b1ee42229a55734f072450b44d73dbd..644262db990ae7b22aff56c67a9942604c221889 100755
--- a/src/main/java/ui/TGComponent.java
+++ b/src/main/java/ui/TGComponent.java
@@ -68,6 +68,7 @@ import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.geom.Point2D;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Vector;
@@ -81,7 +82,7 @@ import java.util.Vector;
  * @version 1.0 21/12/2003
  */
 
-public abstract class TGComponent implements CDElement, GenericTree {
+public abstract class TGComponent  extends AbstractCDElement implements /*CDElement,*/ GenericTree {
 
     protected final static String XML_HEAD = "<COMPONENT type=\"";
     protected final static String XML_ID = "\" id=\"";
@@ -156,7 +157,7 @@ public abstract class TGComponent implements CDElement, GenericTree {
     protected TGComponent selectedInternalComponent;
 
     // characteristics
-    protected boolean enabled = true;
+    //protected boolean enabled = true;
     protected boolean moveable;
     protected boolean removable;
     protected boolean multieditable = false;
@@ -168,7 +169,7 @@ public abstract class TGComponent implements CDElement, GenericTree {
 
     //Associated transactions
     public String transaction = "";
-    public java.util.List<SimulationTransaction> transactions = new ArrayList<SimulationTransaction>();
+    public List<SimulationTransaction> transactions = new ArrayList<SimulationTransaction>();
 
     //If task
     public String runningStatus = "";
@@ -245,14 +246,14 @@ public abstract class TGComponent implements CDElement, GenericTree {
 
     public abstract void setState(int s);
 
-
-    public void setEnabled(boolean _enabled) {
-        enabled = _enabled;
-    }
-
-    public boolean isEnabled() {
-        return enabled;
-    }
+//
+//    public void setEnabled(boolean _enabled) {
+//        enabled = _enabled;
+//    }
+//
+//    public boolean isEnabled() {
+//        return enabled;
+//    }
 
     // Internal component operations
     public void setFather(TGComponent _father) {
@@ -387,14 +388,14 @@ public abstract class TGComponent implements CDElement, GenericTree {
         return false;
     }
 
-    public java.util.List<TGComponent> getAllCheckedAccessibility() {
-        java.util.List<TGComponent> list = new LinkedList<TGComponent>();
+    public List<TGComponent> getAllCheckedAccessibility() {
+        List<TGComponent> list = new LinkedList<TGComponent>();
         getAllCheckedAccessibility(list);
 
         return list;
     }
 
-    public void getAllCheckedAccessibility(java.util.List<TGComponent> _list) {
+    public void getAllCheckedAccessibility(List<TGComponent> _list) {
         if (accessibility) {
             _list.add(this);
         }
@@ -406,14 +407,14 @@ public abstract class TGComponent implements CDElement, GenericTree {
         }
     }
 
-    public java.util.List<TGComponent> getAllCheckableAccessibility() {
-        java.util.List<TGComponent> list = new LinkedList<TGComponent>();
+    public List<TGComponent> getAllCheckableAccessibility() {
+        List<TGComponent> list = new LinkedList<TGComponent>();
         getAllCheckableAccessibility(list);
 
         return list;
     }
 
-    public void getAllCheckableAccessibility(java.util.List<TGComponent> _list) {
+    public void getAllCheckableAccessibility(List<TGComponent> _list) {
         TraceManager.addDev("Investigating accessibility of " + this);
         if (this instanceof CheckableAccessibility) {
             _list.add(this);
@@ -612,7 +613,7 @@ public abstract class TGComponent implements CDElement, GenericTree {
         GraphicLib.dashedRect(g, x + width + s2 + s3, y + s3, w + 15, h - 12);
     }
 
-    public void drawAttributes(Graphics g, String attr) {
+    protected void drawAttributes(Graphics g, String attr) {
         if (attr == null) {
             return;
         }
@@ -630,11 +631,9 @@ public abstract class TGComponent implements CDElement, GenericTree {
         int w = p1.x;
         int h = p1.y - y + s3;
         GraphicLib.dashedRect(g, x + width + s2 + s3, y + s3, w + 15, h - 12);
-
     }
 
-    public Point drawCode(Graphics g, String s, int x1, int y1, boolean pre, boolean java, int dec) {
-
+    protected Point drawCode(Graphics g, String s, int x1, int y1, boolean pre, boolean java, int dec) {
         Point p = new Point(0, y1);
 
         String info;
@@ -1022,11 +1021,14 @@ public abstract class TGComponent implements CDElement, GenericTree {
 
     }
 
-
     public void draw(Graphics g) {
         RunningInfo ri;
         LoadInfo li;
-        ColorManager.setColor(g, state, 0);
+        
+        // Issue #69: Disabling of components
+        ColorManager.setColor(g, state, 0, isEnabled() );
+//        ColorManager.setColor(g, state, 0);
+  
         Font font = new Font(Font.SANS_SERIF, Font.PLAIN, this.tdp.getFontSize());
         g.setFont(font);
         internalDrawing(g);
@@ -1153,7 +1155,7 @@ public abstract class TGComponent implements CDElement, GenericTree {
                         if (li != null) {
                             drawLoadDiploID(g, li);
                         }
-                        java.util.List<SimulationTransaction> ts = tdp.getMGUI().getTransactions(getDIPLOID());
+                        List<SimulationTransaction> ts = tdp.getMGUI().getTransactions(getDIPLOID());
                         if (ts != null && ts.size() > 0) {
                             transactions = new ArrayList<SimulationTransaction>(ts);
                             transaction = transactions.get(transactions.size() - 1).taskName + ":" + transactions.get(transactions.size() - 1).command;
@@ -1627,8 +1629,8 @@ public abstract class TGComponent implements CDElement, GenericTree {
         return tgcomponent[index];
     }
 
-    public LinkedList<TGComponent> getRecursiveAllInternalComponent() {
-        LinkedList<TGComponent> ll = new LinkedList<TGComponent>();
+    public List<TGComponent> getRecursiveAllInternalComponent() {
+        List<TGComponent> ll = new LinkedList<TGComponent>();
 
         for (int i = 0; i < nbInternalTGComponent; i++) {
             ll.add(tgcomponent[i]);
@@ -3047,7 +3049,7 @@ public abstract class TGComponent implements CDElement, GenericTree {
         return saveInXML(true);
     }
 
-    public StringBuffer saveInXML(boolean saveSubComponents) {
+    protected StringBuffer saveInXML(boolean saveSubComponents) {
         StringBuffer sb = null;
         boolean b = (father == null);
         if (b) {
@@ -3068,7 +3070,10 @@ public abstract class TGComponent implements CDElement, GenericTree {
         sb.append(translateCDParam());
         sb.append(translateSizeParam());
         sb.append(translateHidden());
-        if (this instanceof CanBeDisabled) {
+
+        // Issue #69
+        if ( canBeDisabled() ) {
+        //if (this instanceof CanBeDisabled) {
             sb.append(translateEnabled());
         }
         sb.append(translateCDRectangleParam());
@@ -3119,7 +3124,7 @@ public abstract class TGComponent implements CDElement, GenericTree {
     }
 
     protected String translateEnabled() {
-        return "<enabled value=\"" + enabled + "\" />\n";
+        return "<enabled value=\"" + isEnabled() + "\" />\n";
     }
 
     protected String translateHidden() {
@@ -3279,6 +3284,7 @@ public abstract class TGComponent implements CDElement, GenericTree {
     public void postLoading(int decId) throws MalformedModelingException {
     }
 
+    @Override
     public String toString() {
         String s1 = getName();
         String s2 = getValue();
@@ -3341,4 +3347,131 @@ public abstract class TGComponent implements CDElement, GenericTree {
     public void clickSelect(boolean b) {
         isSelect = b;
     }
+    
+    /**
+     * Issue #69
+     * @param point
+     * @return
+     */
+    public TGConnector getConnectorConnectedTo( final TGConnectingPoint point ) {
+    	return tdp.getConnectorConnectedTo( point );
+    }
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    public List<TGConnector> getConnectors() {
+    	return tdp.getConnectors();
+    }
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    public List<TGConnector> getInputConnectors() {
+    	final List<TGConnector> connectors = new ArrayList<TGConnector>();
+    	final List<TGConnectingPoint> points = Arrays.asList( getConnectingPoints() );
+    	
+    	for ( final TGConnector connector : getConnectors() ) {
+    		if ( points.contains( connector.getTGConnectingPointP2() ) ) {
+    			connectors.add( connector );
+    		}
+    	}
+    	
+    	return connectors;
+    }
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    public List<TGConnector> getOutputConnectors() {
+    	final List<TGConnector> connectors = new ArrayList<TGConnector>();
+    	final List<TGConnectingPoint> points = Arrays.asList( getConnectingPoints() );
+    	
+    	for ( final TGConnector connector : getConnectors() ) {
+    		if ( points.contains( connector.getTGConnectingPointP1() ) ) {
+    			connectors.add( connector );
+    		}
+    	}
+    	
+    	return connectors;
+    }
+
+	/**
+	 * Issue #69
+	 * @return
+	 */
+	public TGConnectingPoint[] getConnectingPoints() {
+		return connectingPoint;
+	}
+	
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.CDElement#acceptForward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptForward( final ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			if ( tgcomponent !=  null ) {
+				for ( final TGComponent subCompo : tgcomponent ) {
+					subCompo.acceptForward( visitor );
+				}
+			}
+			
+			if ( connectingPoint !=  null ) {
+				for ( final TGConnectingPoint point : connectingPoint ) {
+					final TGConnector connector = getConnectorConnectedTo( point );
+					
+					if ( connector != null && point == connector.getTGConnectingPointP1() ) {
+						point.acceptForward( visitor );
+					}
+				}
+			}
+		}
+	}
+	
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptBackward( final ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			if ( tgcomponent !=  null ) {
+				for ( final TGComponent subCompo : tgcomponent ) {
+					subCompo.acceptBackward( visitor );
+				}
+			}
+			
+			if ( connectingPoint !=  null ) {
+				for ( final TGConnectingPoint point : connectingPoint ) {
+					final TGConnector connector = getConnectorConnectedTo( point );
+					
+					if ( connector != null && point == connector.getTGConnectingPointP2() ) {
+						point.acceptBackward( visitor );
+					}
+				}
+			}
+		}
+	}
+    
+    public void renameTab(String s) {
+    	TURTLEPanel tp = this.tdp.tp;
+    	for (TDiagramPanel tdpTmp: tp.panels) {
+    		if (tdpTmp.name.equals(name)) {
+    	    	if (!tp.nameInUse(s)) {
+    	            tp.tabbedPane.setTitleAt(tp.getIndexOfChild(tdpTmp), s);
+    	            tp.panels.elementAt(tp.getIndexOfChild(tdpTmp)).setName(s);
+    	            tp.mgui.changeMade(null, -1);
+    	        }
+    			break;
+    		}
+    	}
+    }
+    
+   public boolean nameUsed(String s) {
+    	return this.tdp.tp.refNameUsed(s);
+   }
 }
diff --git a/src/main/java/ui/TGComponentManager.java b/src/main/java/ui/TGComponentManager.java
index 95102882c9c655e806e1108ae6a1cd3e54377da4..6d5bd21e984f49e033e75a23715f313c0bfb2c61 100644
--- a/src/main/java/ui/TGComponentManager.java
+++ b/src/main/java/ui/TGComponentManager.java
@@ -37,11 +37,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui;
 
-//import java.awt.*;
-
 import ui.ad.*;
 import ui.atd.*;
 import ui.avatarad.*;
@@ -327,7 +324,9 @@ public class TGComponentManager {
     public static final int TMLCP_REF_SD = 1505;
     public static final int TMLCP_START_STATE = 1506;
     public static final int TMLCP_STOP_STATE = 1507;
-    public static final int TMLCP_JUNCTION = 1508;
+
+    // Issue #69
+   // public static final int TMLCP_JUNCTION = 1508;
     public static final int TMLCP_FOR_LOOP = 1510;
 
     public static final int TMLSD_STORAGE_INSTANCE = 1520;
@@ -428,7 +427,10 @@ public class TGComponentManager {
     public static final int AVATARSMD_CONNECTOR = 5102;
     public static final int AVATARSMD_SEND_SIGNAL = 5103;
     public static final int AVATARSMD_RECEIVE_SIGNAL = 5104;
-    public static final int AVATARSMD_PARALLEL = 5105;
+    
+    // Issue #69
+    //public static final int AVATARSMD_PARALLEL = 5105;
+    
     public static final int AVATARSMD_STATE = 5106;
     public static final int AVATARSMD_CHOICE = 5107;
     public static final int AVATARSMD_RANDOM = 5108;
@@ -597,9 +599,9 @@ public class TGComponentManager {
             case AVATARSMD_RECEIVE_SIGNAL:
                 tgc = new AvatarSMDReceiveSignal(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp);
                 break;
-            case AVATARSMD_PARALLEL:
-                tgc = new AvatarSMDParallel(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp);
-                break;
+//              case AVATARSMD_PARALLEL: Issue #69
+//              tgc = new AvatarSMDParallel(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp);
+//              break;
             case AVATARSMD_STATE:
                 tgc = new AvatarSMDState(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp);
                 break;
@@ -1385,9 +1387,9 @@ public class TGComponentManager {
             case TMLCP_STOP_STATE:
                 tgc = new TMLCPStopState(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp);
                 break;
-            case TMLCP_JUNCTION:
-                tgc = new TMLCPJunction(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp);
-                break;
+//            case TMLCP_JUNCTION: // Issue #69
+//                tgc = new TMLCPJunction(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp);
+//                break;
             case TMLCP_FOR_LOOP:
                 tgc = new TMLCPForLoop(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp);
                 break;
@@ -1540,8 +1542,8 @@ public class TGComponentManager {
             return AVATARSMD_RECEIVE_SIGNAL;
         } else if (tgc instanceof AvatarSMDLibraryFunctionCall) {
             return AVATARSMD_LIBRARY_FUNCTION_CALL;
-        } else if (tgc instanceof AvatarSMDParallel) {
-            return AVATARSMD_PARALLEL;
+//        } else if (tgc instanceof AvatarSMDParallel) { // Issue #69
+//            return AVATARSMD_PARALLEL;
         } else if (tgc instanceof AvatarSMDState) {
             return AVATARSMD_STATE;
         } else if (tgc instanceof AvatarSMDChoice) {
@@ -2175,8 +2177,8 @@ public class TGComponentManager {
             return TMLCP_START_STATE;
         } else if (tgc instanceof TMLCPStopState) {
             return TMLCP_STOP_STATE;
-        } else if (tgc instanceof TMLCPJunction) {
-            return TMLCP_JUNCTION;
+//          } else if (tgc instanceof TMLCPJunction) { Issue #69
+//          return TMLCP_JUNCTION;
         } else if (tgc instanceof TMLCPForLoop) {
             return TMLCP_FOR_LOOP;
         } else if (tgc instanceof TGConnectorTMLCP) {
diff --git a/src/main/java/ui/TGConnectingPoint.java b/src/main/java/ui/TGConnectingPoint.java
index 8943e41030274945973435176c70f5af365bf21c..1ac1d98c38896be8c6410853863030f12c7cd896 100755
--- a/src/main/java/ui/TGConnectingPoint.java
+++ b/src/main/java/ui/TGConnectingPoint.java
@@ -37,9 +37,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
 import myutil.GraphicLib;
@@ -53,9 +50,9 @@ import java.awt.*;
    * @version 1.0 22/12/2003
    * @author Ludovic APVRILLE, Andrea Enrici
  */
-public class TGConnectingPoint implements CDElement {
+public class TGConnectingPoint extends AbstractCDElement /*implements CDElement*/ {
 
-    protected TGComponent father;
+    //protected TGComponent father;
 
     //private static int ID = 0;
 
@@ -123,6 +120,7 @@ public class TGConnectingPoint implements CDElement {
     public void draw(Graphics g) {
         int mx = getX();
         int my = getY();
+
         if (state == SELECTED) {
             mx = mx - width / 2;
             my = my - height / 2;
@@ -133,7 +131,6 @@ public class TGConnectingPoint implements CDElement {
             g.setColor(myColor);
             g.fillRect(mx - width/4, my - width/4, width/2, height/2);
             GraphicLib.doubleColorRect(g, mx - width/4, my - width/4, width/2, height/2, Color.lightGray, Color.black);
-
         }
     }
 
@@ -220,8 +217,6 @@ public class TGConnectingPoint implements CDElement {
         TGComponent.setGeneralId(id + 1);
     }
 
-
-
     // return true if state _s is different from the previous one
     public boolean setState(int _s){
         boolean b = false;
@@ -296,9 +291,9 @@ public class TGConnectingPoint implements CDElement {
       }*/
 
     //DG 27.02.
-    public TGComponent getOwner()        {
-        return father;
-    }
+//    public TGComponent getOwner()        {
+//        return father;
+//    }
     //fin DG
 
     public void setReferenceToConnector( TGConnector _ref )     {
@@ -325,4 +320,70 @@ public class TGConnectingPoint implements CDElement {
     public int getCurrentMaxY() {
     	return getY() + getHeight();
     }
+
+	/* Issue #69
+	 * (non-Javadoc)
+	 * @see ui.CDElement#canBeDisabled()
+	 */
+	@Override
+	public boolean canBeDisabled() {
+		return false;
+	}
+    
+	/*  Issue #69
+	 * (non-Javadoc)
+	 * @see ui.CDElement#isEnabled()
+	 */
+    @Override
+	public boolean isEnabled() {
+		return true;
+	}
+
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.CDElement#acceptForward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptForward( final ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			if ( getFather() instanceof TGComponent ) {
+				final TGConnector connector = ( (TGComponent) getFather() ).getConnectorConnectedTo( this );
+				
+				if ( connector != null ) {
+	
+					// Traverse the graph in its direction
+					if ( this == connector.getTGConnectingPointP2() ) {
+						getFather().acceptForward( visitor );
+					}
+					else {
+						connector.acceptForward( visitor );
+					}
+				}
+	    	}
+		}
+    }
+
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptBackward( final ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			if ( getFather() instanceof TGComponent ) {
+				final TGConnector connector = ( (TGComponent) getFather() ).getConnectorConnectedTo( this );
+				
+				if ( connector != null ) {
+	
+					// Traverse the graph in its direction
+					if ( this == connector.getTGConnectingPointP1() ) {
+						getFather().acceptBackward( visitor );
+					}
+					else {
+						connector.acceptBackward( visitor );
+					}
+				}
+	    	}
+		}
+    }
 }
diff --git a/src/main/java/ui/TGConnectingPointWidthHeight.java b/src/main/java/ui/TGConnectingPointWidthHeight.java
index 2aa5eab134416a667546a6080ab652674c219fb0..46d95a7615f67802358c51f105fff164bc179615 100755
--- a/src/main/java/ui/TGConnectingPointWidthHeight.java
+++ b/src/main/java/ui/TGConnectingPointWidthHeight.java
@@ -36,13 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
-//import java.awt.*;
-
 /**
  * Class TGConnectingPointWidthHeight
  * Connecting points of TClasses
@@ -51,8 +46,10 @@ package ui;
  * @author Ludovic APVRILLE
  */
 public class TGConnectingPointWidthHeight extends TGConnectingPoint{
-    protected double w;
-    protected double h;
+
+	protected double w;
+    
+	protected double h;
 
     public TGConnectingPointWidthHeight(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) {
         super(_container, _x, _y, _in, _out);
@@ -60,10 +57,12 @@ public class TGConnectingPointWidthHeight extends TGConnectingPoint{
         h = _h;
     }
 
+    @Override
     public int getX() {
         return x + container.getX() + (int)(container.getWidth() * w);
     }
 
+    @Override
     public int getY() {
         return y + container.getY() + (int)(container.getHeight() * h);
     }
diff --git a/src/main/java/ui/TGConnector.java b/src/main/java/ui/TGConnector.java
index 0166e22e6b7ebe458a025128f1d841d3ed3ea2af..c8cfd70edf52b13f7cb15d278905357e72a74686 100755
--- a/src/main/java/ui/TGConnector.java
+++ b/src/main/java/ui/TGConnector.java
@@ -37,9 +37,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
 import myutil.*;
@@ -59,7 +56,7 @@ import java.util.Vector;
  * @version 1.0 22/12/2003
  * @author Ludovic APVRILLE, Andrea ENRICI
  */
-public abstract class TGConnector extends TGCScalableWithInternalComponent      {
+public abstract class TGConnector extends TGCScalableWithInternalComponent {
 
     protected final static String XML_CONNECTOR_HEAD = "<CONNECTOR type=\"";
     protected final static String XML_ID = "\" id=\"";
@@ -188,10 +185,9 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
         //TraceManager.addDev("Index=" + index);
         return index;
     }
-
  
     public int getFirstIndexOfOtherInternalComponents() {
-	return getIndexOfLastTGCPointOfConnector() + 1;
+    	return getIndexOfLastTGCPointOfConnector() + 1;
     }
 
     public boolean hasTGCPointOfConnector() {
@@ -209,24 +205,25 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
         return -1;
 	}*/
 
+    @Override
     public void internalDrawing(Graphics g) {
-
         TGComponent p3, p4;
 
-
         if (hasTGCPointOfConnector())  {
             p3 = tgcomponent[0];
             p4 = tgcomponent[0];
             //TraceManager.addDev("p3.x " + p3.getX() + " p3.y " + p3.getY());
             //drawMiddleSegment(g, p1.getX(), p1.getY(), p3.getXZoom(), p3.getYZoom());
-	    drawMiddleSegment(g, p1.getX(), p1.getY(), p3.getX(), p3.getY());
+            drawMiddleSegment(g, p1.getX(), p1.getY(), p3.getX(), p3.getY());
 
-	    TGCPointOfConnector[] pts = listOfPointsToArray();
+            TGCPointOfConnector[] pts = listOfPointsToArray();
+            
             for(int i=0; i<pts.length-1; i++) {
                 p3 = tgcomponent[i];
                 p4 = tgcomponent[i+1];
                 drawMiddleSegment(g, p3.getX(), p3.getY(), p4.getX(), p4.getY());
             }
+            
             drawLastSegment(g, p4.getX(), p4.getY(), p2.getX(), p2.getY());
         } else {
             drawLastSegment(g, p1.getX(), p1.getY(), p2.getX(), p2.getY());
@@ -447,12 +444,12 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
     }
 
     private int indexOf(TGComponent pt) {
-	for(int i=0; i<tgcomponent.length; i++) {
-	    if (tgcomponent[i] == pt) {
-		return i;
-	    }
-	}
-	return -1;
+		for(int i=0; i<tgcomponent.length; i++) {
+		    if (tgcomponent[i] == pt) {
+		    	return i;
+		    }
+		}
+		return -1;
     }
 
     public int indexPointedSegment(int x1, int y1) {
@@ -465,7 +462,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
                 return 0;
             }
 
-	    TGCPointOfConnector []points = listOfPointsToArray();
+            TGCPointOfConnector []points = listOfPointsToArray();
             for(int i=0; i<points.length-1; i++) {
                 p3 = points[i];
                 p4 = points[i+1];
@@ -621,6 +618,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
         return true;
     }
 
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         TGComponent p3, p4;
         int i;
@@ -774,6 +772,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
 
     }
 
+    @Override
     public StringBuffer saveInXML() {
         StringBuffer sb = new StringBuffer(XML_CONNECTOR_HEAD);
         sb.append(getType());
@@ -828,6 +827,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
         }
     }
 
+    @Override
     public void addActionToPopupMenu(JPopupMenu componentMenu, ActionListener menuAL, int x, int y) {
         popupx = x;
         popupy = y;
@@ -863,6 +863,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
         }
     }
 
+    @Override
     public boolean eventOnPopup(ActionEvent e) {
         if (e.getActionCommand().equals("Add Point")) {
             return addTGCPointOfConnector(popupx, popupy);
@@ -908,8 +909,8 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
         tgcomponent = tgcomponentnew;
     }
 
-
     // Middle of the last segment
+    @Override
     public void drawAttributes(Graphics g, String attr) {
         int s0=4, s1=9, s2=30, s3=10;
         int x1, y1;
@@ -975,4 +976,46 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent
         
         return maxValue;
     }
+	
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.TGComponent#acceptForward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptForward( ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			
+			// Traverse the graph in the direction of the connector
+			getTGConnectingPointP2().acceptForward( visitor );
+		}
+	}
+	
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.TGComponent#acceptBackward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptBackward( ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			
+			// Traverse the graph in the direction of the connector
+			getTGConnectingPointP1().acceptBackward( visitor );
+		}
+	}
+    
+    public boolean isContainedBy( final TGComponent component ) {
+		if ( p2 != null ) {
+			if ( p2.getFather() instanceof TGComponent && ( (TGComponent) p2.getFather() ).getFather() == component ) {
+				return true;
+			}
+		}
+		
+		if ( p1 != null ) {
+			if ( p1.getFather() instanceof TGComponent && ( (TGComponent) p1.getFather() ).getFather() == component ) {
+				return true;
+			}
+		}
+		
+		return false;
+    }
 }//End of class
diff --git a/src/main/java/ui/TGConnectorComment.java b/src/main/java/ui/TGConnectorComment.java
index 9f17561d418df2dd5f5f892d90fb1e4c65969607..dc15f63d6e9db8c0b2f4ad4dae98bffaebe2e320 100755
--- a/src/main/java/ui/TGConnectorComment.java
+++ b/src/main/java/ui/TGConnectorComment.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
 import myutil.GraphicLib;
@@ -47,8 +44,6 @@ import ui.util.IconManager;
 import java.awt.*;
 import java.util.Vector;
 
-//import java.awt.geom.*;
-
 /**
  * Class TGConnectorComment
  * Connects a UML note to a component
@@ -60,21 +55,23 @@ public  class TGConnectorComment extends TGConnector {
 
     public TGConnectorComment(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) {
         super(_x, _y,  _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint);
+
         myImageIcon = IconManager.imgic108;
         automaticDrawing = false;
     }
 
+    @Override
     protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
         GraphicLib.dashedLine(g, x1, y1, x2, y2);
-
     }
 
+    @Override
     protected void drawMiddleSegment(Graphics g, int x1, int y1, int x2, int y2) {
         GraphicLib.dashedLine(g, x1, y1, x2, y2);
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.CONNECTOR_COMMENT;
     }
-
 }
diff --git a/src/main/java/ui/TGConnectorFullArrow.java b/src/main/java/ui/TGConnectorFullArrow.java
index 3e95702904cca99f41b5e3c4e3a37c883a069ebb..4b356be0e5b8a66213fc25a35b7760b2178a3a6c 100755
--- a/src/main/java/ui/TGConnectorFullArrow.java
+++ b/src/main/java/ui/TGConnectorFullArrow.java
@@ -35,9 +35,6 @@
  * The fact that you are presently reading this means that you have had
  * knowledge of the CeCILL license and that you accept its terms.
  */
-
-
-
  
 package ui;
 
@@ -56,13 +53,16 @@ import java.util.Vector;
  * @author Ludovic APVRILLE
  */
 public  class TGConnectorFullArrow extends TGConnector implements TGConnectorBetweenElementsInterface {
+
 	protected int arrowLength = 10;
 
 	public TGConnectorFullArrow(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) {
 		super(_x, _y,  _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint);
+	
 		myImageIcon = IconManager.imgic202;
 	}
 
+    @Override
 	protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
 		if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) {
 			g.drawLine(x1, y1, x2, y2);
@@ -71,15 +71,8 @@ public  class TGConnectorFullArrow extends TGConnector implements TGConnectorBet
 		}
 	}
 	
+    @Override
 	public int getType() {
-            //
-            return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
 	}
 }
-
-
-
-
-    
-
-
diff --git a/src/main/java/ui/TGUIAction.java b/src/main/java/ui/TGUIAction.java
index c06631ce49bb99c4a3fa2c9707440d13a936a839..65c1ad8f286366e989df5f5ccfacf4b30ab9785d 100644
--- a/src/main/java/ui/TGUIAction.java
+++ b/src/main/java/ui/TGUIAction.java
@@ -421,7 +421,7 @@ public class TGUIAction extends AbstractAction {
     public static final int ASMD_SEND_SIGNAL = 296;
     public static final int ASMD_RECEIVE_SIGNAL = 297;
     public static final int ASMD_LIBRARY_FUNCTION_CALL = 432;
-    public static final int ASMD_PARALLEL = 298;
+    //public static final int ASMD_PARALLEL = 298; Issue #69
     public static final int ASMD_STATE = 299;
     public static final int ASMD_CHOICE = 325;
     public static final int ASMD_RANDOM = 326;
@@ -1293,7 +1293,7 @@ public class TGUIAction extends AbstractAction {
         actions[ASMD_RECEIVE_SIGNAL] = new TAction("add-asmd-receivesignal", "Receive signal", IconManager.imgic2016, IconManager.imgic2016, "Receive signal", "Add a receive signal operator to the currently opened AVATAR state machine diagram", 0);
         // TODO: change icon
         actions[ASMD_LIBRARY_FUNCTION_CALL] = new TAction("add-asmd-libraryfunctioncall", "Library function call", IconManager.imgic2018, IconManager.imgic2018, "Library function call", "Add a library function call to the currently opened AVATAR state machine diagram", 0);
-        actions[ASMD_PARALLEL] = new TAction("add-asmd-parallel", "Parallel", IconManager.imgic206, IconManager.imgic206, "Parallel", "Add a parallel operator to the currently opened AVATAR state machine diagram", 0);
+        //actions[ASMD_PARALLEL] = new TAction("add-asmd-parallel", "Parallel", IconManager.imgic206, IconManager.imgic206, "Parallel", "Add a parallel operator to the currently opened AVATAR state machine diagram", 0);
         actions[ASMD_STATE] = new TAction("add-asmd-state", "State", IconManager.imgic5036, IconManager.imgic5036, "State", "Add a new state to the currently opened AVATAR state machine diagram", 0);
         actions[ASMD_CHOICE] = new TAction("add-asmd-choice", "Add Choice", IconManager.imgic208, IconManager.imgic208, "Choice", "Add a choice - non-deterministic or guarded - to the currently opened AVATAR state machine diagram", 0);
         actions[ASMD_RANDOM] = new TAction("add-asmd-random", "Add random", IconManager.imgic924, IconManager.imgic924, "Select random", "Add a random operator to the currently opened AVATAR State Machine diagram", 0);
@@ -1374,10 +1374,9 @@ public class TGUIAction extends AbstractAction {
         actions[ACT_GENERATE_ONTOLOGIES_ALL_DIAGRAMS] = new TAction("generate-ontology-all-diagrams", "Generate ontology (all diagrams)", IconManager.imgic338, IconManager.imgic339, "Generate ontology (all diagrams)",  "Generate the ontology for the diagrams under edition", 0);
 
         actions[MOVE_ENABLED] = new TAction("Move", "Move enabled", IconManager.imgic780, IconManager.imgic780, "Move enabled (shift + arrow)", "Move", 0);
-	actions[FIRST_DIAGRAM] = new TAction("FirstDiagram", "First Diagram", IconManager.imgic142, IconManager.imgic142, "Switch the the first diagram", "Switch to the first diagram", 0);
+        actions[FIRST_DIAGRAM] = new TAction("FirstDiagram", "First Diagram", IconManager.imgic142, IconManager.imgic142, "Switch the the first diagram", "Switch to the first diagram", 0);
     }
 
-
     public String getActionCommand()  {
         return (String)getValue(Action.ACTION_COMMAND_KEY);
     }
@@ -1390,6 +1389,7 @@ public class TGUIAction extends AbstractAction {
         return (String)getValue(Action.LONG_DESCRIPTION);
     }
 
+    @Override
     public void actionPerformed(ActionEvent evt)  {
         if (listeners != null) {
             Object[] listenerList = listeners.getListenerList();
diff --git a/src/main/java/ui/TrackingCDElementVisitor.java b/src/main/java/ui/TrackingCDElementVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..5dbfd6a684deb5a207329c38a2572e7d960ee6ab
--- /dev/null
+++ b/src/main/java/ui/TrackingCDElementVisitor.java
@@ -0,0 +1,18 @@
+package ui;
+
+import java.util.HashSet;
+import java.util.Set;
+
+public abstract class TrackingCDElementVisitor implements ICDElementVisitor {
+	
+	private final Set<CDElement> visitedElements;
+	
+	protected TrackingCDElementVisitor() {
+		visitedElements = new HashSet<CDElement>();
+	}
+
+	@Override
+	public boolean visit(CDElement element) {
+		return visitedElements.add( element );
+	}
+}
diff --git a/src/main/java/ui/UICheckingError.java b/src/main/java/ui/UICheckingError.java
index bbbb281e7e56998126685e030bd9ef4ba0dac48d..b03b7feeba0e8b516c7e27b03e7734fffbce8911 100755
--- a/src/main/java/ui/UICheckingError.java
+++ b/src/main/java/ui/UICheckingError.java
@@ -36,16 +36,10 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
-
 package ui;
 
 import translator.CheckingError;
 
-
-
 /**
  * Class UICheckingError
  * Creation: 07/06/2017
@@ -54,7 +48,14 @@ import translator.CheckingError;
  */
 public class UICheckingError extends CheckingError {
 
-    private TDiagramPanel tdp;
+    /**
+	 * 
+	 */
+	private static final long serialVersionUID = -6532490783339577084L;
+	
+	public static final String MESSAGE_CHOICE_BOTH_STOCHASTIC_DETERMINISTIC = "Badly formatted choice: it has both non-determinitic/ stochastic and regular guards";
+
+	private TDiagramPanel tdp;
     private TGComponent tgc;
 
     public UICheckingError(int _type, String _message) {
diff --git a/src/main/java/ui/ad/CanBeDisabledADElementVisitor.java b/src/main/java/ui/ad/CanBeDisabledADElementVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..19c917284485eff8540a826c529ee02b7d3d226a
--- /dev/null
+++ b/src/main/java/ui/ad/CanBeDisabledADElementVisitor.java
@@ -0,0 +1,53 @@
+package ui.ad;
+
+import ui.TrackingCDElementVisitor;
+import ui.CDElement;
+import ui.TGConnectingPoint;
+
+public class CanBeDisabledADElementVisitor extends TrackingCDElementVisitor {
+	
+	private boolean canBeDisabled;
+
+	public CanBeDisabledADElementVisitor() {
+		super();
+		
+		canBeDisabled = true;
+	}
+
+	/* Check that the element is not part of the inside loop of a for loop 
+	 * (non-Javadoc)
+	 * @see ui.ICDElementVisitor#visit(ui.CDElement)
+	 */
+	@Override
+	public boolean visit( final CDElement element ) {
+		if ( !super.visit( element ) ) {
+			return false;
+		}
+		
+		if ( element instanceof TGConnectingPoint ) {
+			final CDElement father = ( (TGConnectingPoint) element ).getFather();
+			
+			if ( father instanceof TADForLoop ) {
+				if ( element == ( (TADForLoop) father ).getInsideLoopConnectingPoint() && !father.isEnabled() ) {
+					canBeDisabled = false;
+					
+					return false;
+				}
+			}
+
+//			if ( father instanceof TADSequence ) {
+//				if ( element != ( (TADSequence) father ).getEnterSequenceConnectionPoint() && !father.isEnabled() ) {
+//					canBeDisabled = false;
+//					
+//					return false;
+//				}
+//			}
+		}
+		
+		return true;
+	}
+	
+	public boolean isCanBeDisabled() {
+		return canBeDisabled;
+	}
+}
diff --git a/src/main/java/ui/ad/EnablingADBranchVisitor.java b/src/main/java/ui/ad/EnablingADBranchVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..592367a6845dd8631968d4a8d777836a0be446ff
--- /dev/null
+++ b/src/main/java/ui/ad/EnablingADBranchVisitor.java
@@ -0,0 +1,30 @@
+package ui.ad;
+
+import ui.CDElement;
+import ui.TrackingCDElementVisitor;
+
+public class EnablingADBranchVisitor extends TrackingCDElementVisitor {
+	
+	private final boolean enabled;
+	
+	public EnablingADBranchVisitor( final boolean enabled ) {
+		super();
+		
+		this.enabled = enabled;
+	}
+
+	/* Disable everything of the branch
+	 * (non-Javadoc)
+	 * @see ui.ICDElementVisitor#visit(ui.CDElement)
+	 */
+	@Override
+	public boolean visit( final CDElement element ) {
+		if ( !super.visit( element ) ) {
+			return false;
+		}
+
+		element.doSetEnabled( enabled );
+
+		return true;
+	}
+}
diff --git a/src/main/java/ui/ad/EnablingADConnectorVisitor.java b/src/main/java/ui/ad/EnablingADConnectorVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..60a190a3501038aa1684ad691b32976d36ecdf9c
--- /dev/null
+++ b/src/main/java/ui/ad/EnablingADConnectorVisitor.java
@@ -0,0 +1,51 @@
+package ui.ad;
+
+import ui.CDElement;
+import ui.TGConnectingPoint;
+import ui.TGConnector;
+import ui.TrackingCDElementVisitor;
+
+public class EnablingADConnectorVisitor extends TrackingCDElementVisitor {
+	
+	private final boolean enabled;
+	
+	public EnablingADConnectorVisitor( final boolean enabled ) {
+		super();
+		
+		this.enabled = enabled;
+	}
+
+	@Override
+	public boolean visit( final CDElement element ) {
+		if ( !super.visit( element ) ) {
+			return false;
+		}
+
+		// Do not disable the stop
+		if ( element instanceof TADStopState ) {
+			return false;
+		}
+		
+		if ( element.canBeDisabled() && !( element instanceof TGConnector ) ) {
+			element.setEnabled( enabled );
+		}
+
+		if ( element instanceof TGConnectingPoint ) {
+			final TGConnectingPoint point = (TGConnectingPoint) element;
+			final CDElement father = point.getFather();
+			
+			// Only continue if the point does not belongs to the inside of the loop because it is managed by 
+			// the For itself
+			if ( father instanceof TADForLoop ) {
+				return point != ( (TADForLoop) father ).getInsideLoopConnectingPoint();
+			}
+			
+			// Disabling a sequence results in disabling all its branches so only continue if we are at entrance
+//			if ( father instanceof TADSequence ) {
+//				return point == ( (TADSequence) father ).getEnterSequenceConnectionPoint();
+//			}
+		}
+		
+		return true;
+	}
+}
diff --git a/src/main/java/ui/ad/TADActionState.java b/src/main/java/ui/ad/TADActionState.java
index 6188b2dcd4b27720e1b06adc48d5b987e3fbdba9..a99752dca2228217c788dc40d6377af4674ec437 100755
--- a/src/main/java/ui/ad/TADActionState.java
+++ b/src/main/java/ui/ad/TADActionState.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -55,7 +52,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 12/08/2003
  * @author Ludovic APVRILLE
  */
-public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJavaCode, CheckableAccessibility, ActionStateErrorHighlight {
+public class TADActionState extends TADOneLineText/* Issue #69 TGCOneLineText*/ implements PreJavaCode, PostJavaCode, CheckableAccessibility, ActionStateErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -71,11 +68,12 @@ public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJ
         height = 20;
         minWidth = 30;
         
-        nbConnectingPoint = 2;
-        connectingPoint = new TGConnectingPoint[2];
-        connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
-        addTGConnectingPointsComment();
+        createConnectingPoints();
+//        nbConnectingPoint = 2;
+//        connectingPoint = new TGConnectingPoint[2];
+//        connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+//        connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
+//        addTGConnectingPointsComment();
         
         moveable = true;
         editable = true;
@@ -87,6 +85,16 @@ public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJ
         myImageIcon = IconManager.imgic204;
     }
     
+    protected void createConnectingPoints() {
+        nbConnectingPoint = 2;
+        connectingPoint = new TGConnectingPoint[ nbConnectingPoint ];
+        connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+        connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
+
+        addTGConnectingPointsComment();
+    }
+    
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -127,6 +135,7 @@ public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJ
 		}
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -175,19 +184,18 @@ public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJ
         return ret; 
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_ACTION_STATE;
     }
     
+    @Override
    	public int getDefaultConnector() {
       return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateAction = _stateAction;
 	}
-	
-
-    
-    
 }
diff --git a/src/main/java/ui/ad/TADArrayGetState.java b/src/main/java/ui/ad/TADArrayGetState.java
index 96138a63e5ab255b858990d9200648ec3edd4c98..47e708e4ac03371051471f2ac5a32b0f59b28000 100755
--- a/src/main/java/ui/ad/TADArrayGetState.java
+++ b/src/main/java/ui/ad/TADArrayGetState.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -60,7 +57,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 20/03/2009
  * @author Ludovic APVRILLE
  */
-public class TADArrayGetState extends TGCWithoutInternalComponent implements BasicErrorHighlight {
+public class TADArrayGetState extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -98,8 +95,7 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas
         myImageIcon = IconManager.imgic230;
     }
 	
-
-    
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -136,8 +132,8 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas
 		}*/
     }
 	
+    @Override
 	public boolean editOndoubleClick(JFrame frame) {
-        
         String oldValue = value;
         
         JDialogArrayGet jdag = new JDialogArrayGet(frame, variable, array, index, "Getting value from an array");
@@ -161,6 +157,7 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas
 		value = variable + " = " + array + "[" + index + "]"; 
 	}
     
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Prop variable=\"");
@@ -213,6 +210,7 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas
         makeValue();
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -242,17 +240,18 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas
 		return index;
 	}
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_ARRAY_GET;
     }
     
+    @Override
    	public int getDefaultConnector() {
       return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateAction = _stateAction;
 	}
-    
-    
 }
diff --git a/src/main/java/ui/ad/TADArraySetState.java b/src/main/java/ui/ad/TADArraySetState.java
index 80517ed993c7f5068d46264f5903b37170c069f7..4e0060f2fc1db93fc6c34b44c2d523b670654ae8 100755
--- a/src/main/java/ui/ad/TADArraySetState.java
+++ b/src/main/java/ui/ad/TADArraySetState.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -60,7 +57,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 20/03/2009
  * @author Ludovic APVRILLE
  */
-public class TADArraySetState extends TGCWithoutInternalComponent implements BasicErrorHighlight {
+public class TADArraySetState extends TADComponentWithoutSubcomponents/* Issue #69TGCWithoutInternalComponent */ implements BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -72,7 +69,6 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas
 	protected String expr = "x";
 	
 	protected int stateAction = 0; // 0: unchecked 1: ok; 2:unknown
-	
     
     public TADArraySetState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -97,8 +93,7 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas
         myImageIcon = IconManager.imgic232;
     }
 	
-
-    
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -126,11 +121,10 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas
         g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
         
         g.drawString(value, x + (width - w) / 2 , y + textY);
-		
     }
-	
+
+    @Override
 	public boolean editOndoubleClick(JFrame frame) {
-        
         String oldValue = value;
         
         JDialogArraySet jdas = new JDialogArraySet(frame, array, index, expr, "Setting value of an array location");
@@ -154,6 +148,7 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas
 		value = array + "[" + index + "] = " + expr; 
 	}
     
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Prop expr=\"");
@@ -206,6 +201,7 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas
         makeValue();
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -235,17 +231,18 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas
 		return index;
 	}
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_ARRAY_SET;
     }
     
+    @Override
    	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateAction = _stateAction;
 	}
-    
-    
 }
diff --git a/src/main/java/ui/ad/TADChoice.java b/src/main/java/ui/ad/TADChoice.java
index ab65e5b2111e537eaf38082eb68dae968dbb2c6c..67361b576a6755f4468f09759461bf9f01a61950 100755
--- a/src/main/java/ui/ad/TADChoice.java
+++ b/src/main/java/ui/ad/TADChoice.java
@@ -36,18 +36,18 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
 import ui.*;
 import ui.util.IconManager;
 
-import java.awt.*;
+import java.awt.Color;
+import java.awt.Graphics;
 import java.awt.geom.Line2D;
-
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
 
 /**
  * Class TADChoice
@@ -56,11 +56,19 @@ import java.awt.geom.Line2D;
  * @version 1.0 21/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADChoice extends TGCWithInternalComponent  {
-    private int lineLength = 10;
-    private int lineOutLength = 25;
-    private int textX1, textY1, textX2, textY2, textX3, textY3;
+public class TADChoice extends TADComponentWithSubcomponents/* Issue #69  TGCWithInternalComponent */ {
+
+	public static final String EMPTY_GUARD_TEXT = "[ ]";
+    
+	private static final String TRUE_GUARD_TEXT = "[ true ]";
+
+	protected int lineLength = 10;
+    
+	protected int lineOutLength = 25;
     
+	private int textX1, textY1, textX2, textY2, textX3, textY3;
+    
+    protected int stateOfError = 0;
     
     public TADChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -74,31 +82,34 @@ public class TADChoice extends TGCWithInternalComponent  {
         textX3 = width /2 + 5;
         textY3 = height + 15;
         
-        nbConnectingPoint = 4;
-        connectingPoint = new TGConnectingPoint[nbConnectingPoint];
-        connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[1] = new TGConnectingPointAD(this, -lineOutLength, 0, false, true, 0.0, 0.5);
-        connectingPoint[2] = new TGConnectingPointAD(this, lineOutLength, 0, false, true, 1.0, 0.5);
-        connectingPoint[3] = new TGConnectingPointAD(this, 0, lineOutLength,  false, true, 0.5, 1.0);
-        addTGConnectingPointsComment();
+        createConnectingPoints();
+//        nbConnectingPoint = 4;
+//        connectingPoint = new TGConnectingPoint[nbConnectingPoint];
+//        connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+//        connectingPoint[1] = new TGConnectingPointAD(this, -lineOutLength, 0, false, true, 0.0, 0.5);
+//        connectingPoint[2] = new TGConnectingPointAD(this, lineOutLength, 0, false, true, 1.0, 0.5);
+//        connectingPoint[3] = new TGConnectingPointAD(this, 0, lineOutLength,  false, true, 0.5, 1.0);
+//        addTGConnectingPointsComment();
         
         nbInternalTGComponent = 3;
         tgcomponent = new TGComponent[nbInternalTGComponent];
+
+        createGuards();
         
-        TGCOneLineText tgc = new TGCOneLineText(x+textX1-50, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 1");
-        tgcomponent[0] = tgc;
-        
-        tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 2");
-        tgcomponent[1] = tgc;
-        
-        tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 3");
-        tgcomponent[2] = tgc;
+//        TGCOneLineText tgc = new TGCOneLineText(x+textX1-50, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 1");
+//        tgcomponent[0] = tgc;
+//        
+//        tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 2");
+//        tgcomponent[1] = tgc;
+//        
+//        tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 3");
+//        tgcomponent[2] = tgc;
         
         moveable = true;
         editable = false;
@@ -108,9 +119,53 @@ public class TADChoice extends TGCWithInternalComponent  {
         
         myImageIcon = IconManager.imgic208;
     }
+
+    protected void createConnectingPoints() {
+        nbConnectingPoint = 4;
+        connectingPoint = new TGConnectingPoint[nbConnectingPoint];
+        connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+        connectingPoint[1] = new TGConnectingPointAD(this, -lineOutLength, 0, false, true, 0.0, 0.5);
+        connectingPoint[2] = new TGConnectingPointAD(this, lineOutLength, 0, false, true, 1.0, 0.5);
+        connectingPoint[3] = new TGConnectingPointAD(this, 0, lineOutLength,  false, true, 0.5, 1.0);
+        addTGConnectingPointsComment();
+    }
     
+    protected void createGuards() {
+        TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, tdp);
+        tgc.setValue( EMPTY_GUARD_TEXT );
+        tgc.setName("guard 1");
+        tgcomponent[ 0 ] = tgc;
+        
+        tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, tdp);
+        tgc.setValue( EMPTY_GUARD_TEXT );
+        tgc.setName("guard 2");
+        tgcomponent[ 1 ] = tgc;
+        
+        tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, tdp);
+        tgc.setValue( EMPTY_GUARD_TEXT );
+        tgc.setName("guard 3");
+        tgcomponent[ 2 ] = tgc;
+    }
+    
+    @Override
     public void internalDrawing(Graphics g) {
-        g.drawLine(x+(width/2), y, x+width, y + height/2);
+		if (stateOfError > 0)  {
+			Color c = g.getColor();
+			switch(stateOfError) {
+			case ErrorHighlight.OK:
+				g.setColor(ColorManager.CHOICE);
+				break;
+			default:
+				g.setColor(ColorManager.UNKNOWN_BOX_ACTION);
+			}
+			// Making the polygon
+			int [] px1 = {x+(width/2), x+width+2, x + (width/2), x};
+			int [] py1 = {y, y + height/2, y+height+2, y+height/2};
+			g.fillPolygon(px1, py1, 4);
+			g.setColor(c);
+		}
+
+		g.drawLine(x+(width/2), y, x+width, y + height/2);
         g.drawLine(x, y + height / 2, x+width/2, y + height);
         g.drawLine(x + width/2, y, x, y + height/2);
         g.drawLine(x + width, y + height/2, x + width/2, y + height);
@@ -121,6 +176,7 @@ public class TADChoice extends TGCWithInternalComponent  {
         g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -158,20 +214,72 @@ public class TADChoice extends TGCWithInternalComponent  {
             tgcomponent[i].setValue(guard);
          }
     }
-    
+
+	public List<String> getGuards()        {
+		List<String> guards = new ArrayList<String>();
+		for( int i = 0; i < nbInternalTGComponent; i++ ) {
+			guards.add( getGuard(i) );
+		}
+		return guards;
+	}
+
+    /**
+     * Issue #69
+     * @param point
+     * @return
+     */
+    public TGCOneLineText getGuardForConnectingPoint( final TGConnectingPoint point ) {
+		final int index = Arrays.asList( connectingPoint ).indexOf( point );
+
+		if ( index < 0 ) {
+			throw new IllegalArgumentException( "No guard found for connecting point " + point );
+		}
+		
+		return (TGCOneLineText) tgcomponent[ index - 1 ];
+    }
+   
+    @Override
     public int getType() {
         return TGComponentManager.TAD_CHOICE;
     }
     
+    @Override
    	public int getDefaultConnector() {
       return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
+	
+	public void setStateAction(int _stateAction) {
+		stateOfError = _stateAction;
+	}
     
-}
-
-
-
-
-
-
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.AbstractCDElement#canBeDisabled()
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	return false;
+    }
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canLabelBeDisabled( final TGCOneLineText label ) {
+    	return label.getValue() != null && !label.getValue().isEmpty() && !EMPTY_GUARD_TEXT.equals( label.getValue() );
+    }
+    
+    /**
+     * Issue #69
+     * @param guard
+     * @return
+     */
+    public String getEffectiveCondition( final TGCOneLineText guard ) {
+    	if ( guard.isEnabled() ) {
+   	 	   return guard.getValue();
+ 	   	}
 
+		return TRUE_GUARD_TEXT;
+    }
+}
diff --git a/src/main/java/ui/ad/TADComponentWithSubcomponents.java b/src/main/java/ui/ad/TADComponentWithSubcomponents.java
new file mode 100644
index 0000000000000000000000000000000000000000..7faa2ecd2c04d57e79a02bc5b2ecb53a85072b2f
--- /dev/null
+++ b/src/main/java/ui/ad/TADComponentWithSubcomponents.java
@@ -0,0 +1,30 @@
+package ui.ad;
+
+import ui.TDiagramPanel;
+import ui.TGCScalableWithInternalComponent;
+import ui.TGComponent;
+
+/**
+ * Issue #69
+ * @author dblouin
+ *
+ */
+public abstract class TADComponentWithSubcomponents extends TGCScalableWithInternalComponent /*TGCWithInternalComponent*/ {
+
+	public TADComponentWithSubcomponents(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY,
+			boolean _pos, TGComponent _father, TDiagramPanel _tdp) {
+		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
+	}
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor();
+    	acceptBackward( visitor );
+    	
+    	return visitor.isCanBeDisabled();
+    }
+}
diff --git a/src/main/java/ui/ad/TADComponentWithoutSubcomponents.java b/src/main/java/ui/ad/TADComponentWithoutSubcomponents.java
new file mode 100644
index 0000000000000000000000000000000000000000..2317c348b68cf09cd9838446ae4956b3ad7342e5
--- /dev/null
+++ b/src/main/java/ui/ad/TADComponentWithoutSubcomponents.java
@@ -0,0 +1,30 @@
+package ui.ad;
+
+import ui.TDiagramPanel;
+import ui.TGCWithoutInternalComponent;
+import ui.TGComponent;
+
+/**
+ * Issue #69
+ * @author dblouin
+ *
+ */
+public abstract class TADComponentWithoutSubcomponents extends TGCWithoutInternalComponent {
+
+	public TADComponentWithoutSubcomponents(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY,
+			boolean _pos, TGComponent _father, TDiagramPanel _tdp) {
+		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
+	}
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor();
+    	acceptBackward( visitor );
+    	
+    	return visitor.isCanBeDisabled();
+    }
+}
diff --git a/src/main/java/ui/ad/TADConnector.java b/src/main/java/ui/ad/TADConnector.java
new file mode 100644
index 0000000000000000000000000000000000000000..8fc2736a95b9069d0a24af1c9345c50026dcb171
--- /dev/null
+++ b/src/main/java/ui/ad/TADConnector.java
@@ -0,0 +1,74 @@
+package ui.ad;
+
+import java.awt.Point;
+import java.util.Vector;
+
+import ui.ForwardComponentsEnabledVisitor;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGConnectingPoint;
+import ui.TGConnector;
+
+/**
+ * Issue #69
+ * @author dblouin
+ *
+ */
+public abstract class TADConnector extends TGConnector {
+
+	public TADConnector(	int _x, 
+							int _y,
+							int _minX,
+							int _maxX,
+							int _minY,
+							int _maxY,
+							boolean _pos,
+							TGComponent _father,
+							TDiagramPanel _tdp,
+							TGConnectingPoint _p1,
+							TGConnectingPoint _p2,
+							Vector<Point> _listPoint ) {
+		super( _x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint );
+	}
+	
+    /**
+     * Issue #69
+     * @param _enabled
+     */
+    @Override
+    public void setEnabled( final boolean _enabled ) {
+    	if ( p2 != null ) {
+    		p2.acceptForward( new EnablingADConnectorVisitor( _enabled ) );
+    	}
+    }
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	if ( p2 != null && p2.getFather() instanceof TADStopState ) {
+    		return false;
+    	}
+    	
+    	final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor();
+    	acceptBackward( visitor );
+    	
+    	return visitor.isCanBeDisabled();
+    }
+    
+    /** Issue #69
+     * @return
+     */
+    public boolean isEnabled( boolean checkBranch ) {
+    	if ( checkBranch && p2 != null ) {
+    		final ForwardComponentsEnabledVisitor visitor = new ForwardComponentsEnabledVisitor();
+    		p2.acceptForward( visitor );
+    		
+    		return visitor.isEnabled();
+    	}
+    	
+    	return super.isEnabled();
+    }
+}
diff --git a/src/main/java/ui/ad/TADDeterministicDelay.java b/src/main/java/ui/ad/TADDeterministicDelay.java
index f37a5a603d1227eeba7b253243a9d3fece2ad0c2..a326f06ad75e2c35d8b44823f2071bc6642bafce 100755
--- a/src/main/java/ui/ad/TADDeterministicDelay.java
+++ b/src/main/java/ui/ad/TADDeterministicDelay.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -55,9 +52,11 @@ import java.awt.geom.Line2D;
  * @version 1.0 21/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADDeterministicDelay extends TGCWithInternalComponent {
-    private int lineLength = 5;
-    private int textX, textY;
+public class TADDeterministicDelay extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent */{
+    
+	private int lineLength = 5;
+    
+	private int textX, textY;
     
     public TADDeterministicDelay(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -90,12 +89,14 @@ public class TADDeterministicDelay extends TGCWithInternalComponent {
         myImageIcon = IconManager.imgic214;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         g.drawRect(x, y, width, height);
         g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
         g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -116,13 +117,13 @@ public class TADDeterministicDelay extends TGCWithInternalComponent {
         tgcomponent[0].setValue(value);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_DETERMINISTIC_DELAY;
     }
     
+    @Override
    	public int getDefaultConnector() {
       return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
-    
 }
-
diff --git a/src/main/java/ui/ad/TADForLoop.java b/src/main/java/ui/ad/TADForLoop.java
new file mode 100644
index 0000000000000000000000000000000000000000..ebb66cde885f9c71fc3441933d1b03c95bd23846
--- /dev/null
+++ b/src/main/java/ui/ad/TADForLoop.java
@@ -0,0 +1,138 @@
+package ui.ad;
+
+import java.awt.geom.Line2D;
+
+import myutil.GraphicLib;
+import ui.BasicErrorHighlight;
+import ui.EmbeddedComment;
+import ui.ICDElementVisitor;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGConnectingPoint;
+import ui.util.IconManager;
+
+/**
+ * Issue #69
+ * @author dblouin
+ *
+ */
+public abstract class TADForLoop extends TADComponentWithoutSubcomponents implements EmbeddedComment, BasicErrorHighlight {
+
+	protected final static String IN_LOOP = "inside loop";
+	protected final static String EXIT_LOOP = "exit loop";
+	
+	protected static final int INDEX_ENTER_LOOP = 0;
+	protected static final int INDEX_INSIDE_LOOP = 1;
+	protected static final int INDEX_EXIT_LOOP = 2;
+
+	protected int lineLength = 5;
+    protected int textX =  5;
+    protected int textY =  15;
+    protected int arc = 5;
+
+    protected int stateOfError = 0;
+
+	public TADForLoop(	int _x, 
+						int _y,
+						int _minX,
+						int _maxX,
+						int _minY,
+						int _maxY,
+						boolean _pos,
+						TGComponent _father,
+						TDiagramPanel _tdp ) {
+		super( _x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp );
+
+		width = 30;
+        height = 20;
+        minWidth = 30;
+
+        moveable = true;
+        editable = true;
+        removable = true;
+        
+        myImageIcon = IconManager.imgic912;
+	}
+
+    @Override
+    public TGComponent isOnMe(int _x, int _y) {
+        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+            return this;
+        }
+
+        if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) {
+            return this;
+        }
+
+        if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) {
+            return this;
+        }
+
+        return null;
+    }
+	
+	@Override
+	public void setStateAction(int _stateAction) {
+		stateOfError = _stateAction;
+	}
+	
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.TGComponent#acceptForward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptForward( ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			final TGConnectingPoint insideLoopPoint = getInsideLoopConnectingPoint();
+			
+			if ( insideLoopPoint != null ) {
+				insideLoopPoint.acceptForward( visitor );
+			}
+			
+			final TGConnectingPoint exitPoint = getExitLoopConnectingPoint();
+			
+			if ( exitPoint != null ) {
+				exitPoint.acceptForward( visitor );
+			}
+		}
+    }
+    
+	
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.TGComponent#acceptBackward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptBackward( ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			final TGConnectingPoint enterLoopPoint = getEnterLoopConnectingPoint();
+			
+			if ( enterLoopPoint != null ) {
+				enterLoopPoint.acceptBackward( visitor );
+			}
+		}
+    }
+	
+    /**
+     * Issue #69
+     * @param _enabled
+     */
+    @Override
+    public void setEnabled( final boolean _enabled ) {
+    	super.setEnabled( _enabled );
+    	
+    	getInsideLoopConnectingPoint().acceptForward( new EnablingADBranchVisitor( _enabled ) );
+    }
+
+	public TGConnectingPoint getEnterLoopConnectingPoint() {
+		return connectingPoint[ INDEX_ENTER_LOOP ];
+	}
+
+	public TGConnectingPoint getInsideLoopConnectingPoint() {
+		return connectingPoint[ INDEX_INSIDE_LOOP ];
+	}
+
+	public TGConnectingPoint getExitLoopConnectingPoint() {
+		return connectingPoint[ INDEX_EXIT_LOOP ];
+	}
+}
diff --git a/src/main/java/ui/ad/TADJunction.java b/src/main/java/ui/ad/TADJunction.java
index 7990e48101933677625f4ab6520a92f27b3922a4..7fed85cbf3663c602acf04ecee2adcefeb90d9c7 100755
--- a/src/main/java/ui/ad/TADJunction.java
+++ b/src/main/java/ui/ad/TADJunction.java
@@ -35,9 +35,6 @@
  * The fact that you are presently reading this means that you have had
  * knowledge of the CeCILL license and that you accept its terms.
  */
-
-
-
  
 package ui.ad;
 
@@ -47,7 +44,6 @@ import ui.util.IconManager;
 import java.awt.*;
 import java.awt.geom.Line2D;
 
-
 /**
  * Class TADJunction
  * Junction between several activities, without any synchronization. To be used in activity diagrams
@@ -55,7 +51,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 28/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADJunction extends TGCWithoutInternalComponent {
+public class TADJunction extends TADComponentWithoutSubcomponents /* Issue #69 TGCWithoutInternalComponent*/ {
 	
 	protected int range = 5;
 	
@@ -108,6 +104,7 @@ public class TADJunction extends TGCWithoutInternalComponent {
 		myImageIcon = IconManager.imgic212;
 	}
 
+	@Override
 	public void internalDrawing(Graphics g) {
 		//g.drawLine(x +width/2, y,  x+width/2, y + height);
 		//g.drawLine(x, y + (height/2), x+width, y + (height/2));
@@ -123,6 +120,7 @@ public class TADJunction extends TGCWithoutInternalComponent {
 		g.drawLine(x+width/2+range, y + height / 2, x+width/2, y+height/2+range);
 	}
 
+	@Override
 	public TGComponent isOnMe(int _x, int _y) {
 		// vertical line
 		if ((int)(Line2D.ptSegDistSq(x +width/2, y,  x+width/2, y + height, _x, _y)) < distanceSelected) {
@@ -135,19 +133,13 @@ public class TADJunction extends TGCWithoutInternalComponent {
 		return null;
 	}
 	
+	@Override
 	public int getType() {
 		return TGComponentManager.TAD_JUNCTION;
 	}
 	
+	@Override
 	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+		return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
-
 }
-
-
-
-
-    
-
-
diff --git a/src/main/java/ui/ad/TADNonDeterministicDelay.java b/src/main/java/ui/ad/TADNonDeterministicDelay.java
index 89b4f98895ff3037c570c3df8e2abaee0d59adaf..6eff783dcd5f1e0ac2c42ccba137630c485eea92 100755
--- a/src/main/java/ui/ad/TADNonDeterministicDelay.java
+++ b/src/main/java/ui/ad/TADNonDeterministicDelay.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -55,7 +52,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 10/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADNonDeterministicDelay extends TGCWithInternalComponent{
+public class TADNonDeterministicDelay extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ {
     private int lineLength = 5;
     private int textX = 5;
     private int textY = 5;
@@ -91,6 +88,7 @@ public class TADNonDeterministicDelay extends TGCWithInternalComponent{
         myImageIcon = IconManager.imgic216;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         int y1 = y;
         
@@ -108,6 +106,7 @@ public class TADNonDeterministicDelay extends TGCWithInternalComponent{
         
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -128,18 +127,13 @@ public class TADNonDeterministicDelay extends TGCWithInternalComponent{
         tgcomponent[0].setValue(value);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_NON_DETERMINISTIC_DELAY;
     }
     
+    @Override
    	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
 }
-
-
-
-
-
-
-
diff --git a/src/main/java/ui/ad/TADOneLineText.java b/src/main/java/ui/ad/TADOneLineText.java
new file mode 100644
index 0000000000000000000000000000000000000000..ffdc4a483f4caa2e5110ce13cf0ffc1e32d93189
--- /dev/null
+++ b/src/main/java/ui/ad/TADOneLineText.java
@@ -0,0 +1,25 @@
+package ui.ad;
+
+import ui.TDiagramPanel;
+import ui.TGCOneLineText;
+import ui.TGComponent;
+
+public abstract class TADOneLineText extends TGCOneLineText {
+
+	public TADOneLineText(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father,
+			TDiagramPanel _tdp) {
+		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
+	}
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor();
+    	acceptBackward( visitor );
+    	
+    	return visitor.isCanBeDisabled();
+    }
+}
diff --git a/src/main/java/ui/ad/TADParallel.java b/src/main/java/ui/ad/TADParallel.java
index 7ab9862e2433660797069d6a615e5607eff80127..530ebc3c7adc5e5fcacff722dd1496d79d074a09 100755
--- a/src/main/java/ui/ad/TADParallel.java
+++ b/src/main/java/ui/ad/TADParallel.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -55,9 +52,11 @@ import java.awt.*;
  * @version 1.0 12/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADParallel extends TGCWithInternalComponent{
-    private int lineLength = 0;
-    private int textX, textY;
+public class TADParallel extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ {
+    
+	private int lineLength = 0;
+    
+	private int textX, textY;
     
     public TADParallel(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -100,11 +99,13 @@ public class TADParallel extends TGCWithInternalComponent{
         myImageIcon = IconManager.imgic206;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         g.drawRect(x, y, width, height);
         g.fillRect(x, y, width, height);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -120,18 +121,13 @@ public class TADParallel extends TGCWithInternalComponent{
         tgcomponent[0].setValue(val);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_PARALLEL;
     }
     
+    @Override
    	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
 }
-
-
-
-
-
-
-
diff --git a/src/main/java/ui/ad/TADPreemption.java b/src/main/java/ui/ad/TADPreemption.java
index c38308f22597af184fa3489d375b6fb053ff1f94..8f601cb48463b80b7fb7cd1fd0672547840b412b 100755
--- a/src/main/java/ui/ad/TADPreemption.java
+++ b/src/main/java/ui/ad/TADPreemption.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -55,9 +52,11 @@ import java.awt.*;
  * @version 1.0 12/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADPreemption extends TGCWithInternalComponent{
-    private int lineLength = 0;
-    private int textX, textY;
+public class TADPreemption extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent*/ {
+    
+	private int lineLength = 0;
+    
+	private int textX, textY;
     
     public TADPreemption(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -98,11 +97,13 @@ public class TADPreemption extends TGCWithInternalComponent{
         myImageIcon = IconManager.imgic206;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         g.drawRect(x, y, width, height);
         g.fillRect(x, y, width, height);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -110,11 +111,13 @@ public class TADPreemption extends TGCWithInternalComponent{
         return null;
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_PREEMPTION;
     }
     
+    @Override
    	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
-}
\ No newline at end of file
+}
diff --git a/src/main/java/ui/ad/TADSequence.java b/src/main/java/ui/ad/TADSequence.java
index 99eabaf2fd2c0ba804a7863f2b2ad15b7ddbf0ae..158a67935d557e89291ab82984b06b67532a8583 100755
--- a/src/main/java/ui/ad/TADSequence.java
+++ b/src/main/java/ui/ad/TADSequence.java
@@ -36,17 +36,16 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
+import java.awt.Graphics;
+import java.util.Arrays;
+import java.util.List;
+
 import myutil.GraphicLib;
 import ui.*;
 import ui.util.IconManager;
 
-import java.awt.*;
-
 /**
  * Class TADSequence
  * Sequence operator. Activities are executed in sequence from left to right
@@ -55,9 +54,11 @@ import java.awt.*;
  * @version 1.0 12/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADSequence extends TGCWithInternalComponent{
-    private int lineLength = 0;
-    private int textX, textY;
+public class TADSequence extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ {
+    
+	protected int lineLength = 0;
+    
+	private int textX, textY;
     
     public TADSequence(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -69,15 +70,16 @@ public class TADSequence extends TGCWithInternalComponent{
         textX = width - 6;
         textY = height + 2;
         
-        nbConnectingPoint = 6;
-        connectingPoint = new TGConnectingPoint[6];
-        connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.167, 1.0);
-        connectingPoint[2] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.333, 1.0);
-        connectingPoint[3] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
-        connectingPoint[4] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.667, 1.0);
-        connectingPoint[5] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.833, 1.0);
-        addTGConnectingPointsCommentCorner();
+        createConnectingPoints();
+//        nbConnectingPoint = 6;
+//        connectingPoint = new TGConnectingPoint[6];
+//        connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+//        connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.167, 1.0);
+//        connectingPoint[2] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.333, 1.0);
+//        connectingPoint[3] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
+//        connectingPoint[4] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.667, 1.0);
+//        connectingPoint[5] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.833, 1.0);
+//        addTGConnectingPointsCommentCorner();
         
         nbInternalTGComponent = 1;
         tgcomponent = new TGComponent[nbInternalTGComponent];
@@ -98,11 +100,25 @@ public class TADSequence extends TGCWithInternalComponent{
         myImageIcon = IconManager.imgic206;
     }
     
+    protected void createConnectingPoints() {
+        nbConnectingPoint = 6;
+        connectingPoint = new TGConnectingPoint[6];
+        connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+        connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.167, 1.0);
+        connectingPoint[2] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.333, 1.0);
+        connectingPoint[3] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
+        connectingPoint[4] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.667, 1.0);
+        connectingPoint[5] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.833, 1.0);
+        addTGConnectingPointsCommentCorner();
+    }
+    
+    @Override
     public void internalDrawing(Graphics g) {
         g.drawRect(x, y, width, height);
         g.fillRect(x, y, width, height);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -110,11 +126,36 @@ public class TADSequence extends TGCWithInternalComponent{
         return null;
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_SEQUENCE;
     }
     
+    @Override
    	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    }
+
+    public TGConnectingPoint getEnterConnectingPoint() {
+    	return connectingPoint[ 0 ];
+    }
+	
+    public List<TGConnectingPoint> getExitConnectingPoints() {
+    	return Arrays.asList( Arrays.copyOfRange( connectingPoint, 1, connectingPoint.length ) );
+    }
+	
+    /**
+     * Issue #69
+     * @param _enabled
+     */
+    @Override
+    public void setEnabled( final boolean _enabled ) {
+    	super.setEnabled( _enabled );
+    	
+    	for ( final TGConnectingPoint point : connectingPoint ) {
+    		if ( point != getEnterConnectingPoint() ) {
+    			point.acceptForward( new EnablingADConnectorVisitor( _enabled ) );
+        	}
+    	}
     }
 }
diff --git a/src/main/java/ui/ad/TADStartState.java b/src/main/java/ui/ad/TADStartState.java
index 0bf11c61a634b6c82cfefb012a4f6da185d47105..b4d21f778eae2d336594cca6ffb956005f9f68dc 100755
--- a/src/main/java/ui/ad/TADStartState.java
+++ b/src/main/java/ui/ad/TADStartState.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
- 
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -55,8 +52,9 @@ import java.awt.geom.Line2D;
  * @version 1.0 12/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADStartState extends TGCWithoutInternalComponent{
-	private int lineLength = 5;
+public class TADStartState extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ {
+	
+	protected int lineLength = 5;
 
 	public TADStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
 		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -64,9 +62,10 @@ public class TADStartState extends TGCWithoutInternalComponent{
 		width = 15;
 		height = 15;
 
-		nbConnectingPoint = 1;
-		connectingPoint = new TGConnectingPoint[1];
-		connectingPoint[0] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
+		createConnectingPoints();
+//		nbConnectingPoint = 1;
+//		connectingPoint = new TGConnectingPoint[1];
+//		connectingPoint[0] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
 
 		nbInternalTGComponent = 0;
 
@@ -79,11 +78,19 @@ public class TADStartState extends TGCWithoutInternalComponent{
 		myImageIcon = IconManager.imgic222;
 	}
 
+    protected void createConnectingPoints() {
+		nbConnectingPoint = 1;
+		connectingPoint = new TGConnectingPoint[1];
+		connectingPoint[0] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
+    }
+
+    @Override
 	public void internalDrawing(Graphics g) {
 		g.fillOval(x, y, width, height);
 		g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
 	}
 
+    @Override
 	public TGComponent isOnMe(int _x, int _y) {
 		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
 			return this;
@@ -93,19 +100,25 @@ public class TADStartState extends TGCWithoutInternalComponent{
 			return this;	
 		}
 		
-		
-		
 		return null;
 	}
 	
+    @Override
 	public int getType() {
 		return TGComponentManager.TAD_START_STATE;
 	}
 	
+    @Override
 	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    }
+    
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.AbstractCDElement#canBeDisabled()
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	return false;
     }
-	
 }
-
-
diff --git a/src/main/java/ui/ad/TADStopState.java b/src/main/java/ui/ad/TADStopState.java
index a92f665a912de31efc0176a0e5ab934453860bbd..04dc7556e0493784bdcc0b6d14dcaa5137e9c0e0 100755
--- a/src/main/java/ui/ad/TADStopState.java
+++ b/src/main/java/ui/ad/TADStopState.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
- 
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -54,9 +51,11 @@ import java.awt.*;
  * @version 1.0 12/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADStopState extends TGCWithoutInternalComponent{
+public class TADStopState extends TADComponentWithoutSubcomponents /* Issue #69 TGCWithoutInternalComponent*/ {
+	
 	private int internalCircleSize = 16;
-	private int lineLength = 5;
+	
+	protected int lineLength = 5;
 
 	public TADStopState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
 		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -64,9 +63,10 @@ public class TADStopState extends TGCWithoutInternalComponent{
 		width = 20;
 		height = 20;
 
-		nbConnectingPoint = 1;
-		connectingPoint = new TGConnectingPoint[1];
-		connectingPoint[0] = new TGConnectingPointAD(this, 0, - lineLength, true, false, 0.5, 0.0);
+		createConnectingPoints();
+//		nbConnectingPoint = 1;
+//		connectingPoint = new TGConnectingPoint[1];
+//		connectingPoint[0] = new TGConnectingPointAD(this, 0, - lineLength, true, false, 0.5, 0.0);
 
 		nbInternalTGComponent = 0;
 
@@ -79,14 +79,24 @@ public class TADStopState extends TGCWithoutInternalComponent{
 		myImageIcon = IconManager.imgic210;
 	}
 
+	protected void createConnectingPoints() {
+		nbConnectingPoint = 1;
+		connectingPoint = new TGConnectingPoint[1];
+		connectingPoint[0] = new TGConnectingPointAD(this, 0, - lineLength, true, false, 0.5, 0.0);
+	}
+
+	@Override
 	public void internalDrawing(Graphics g) {
-		ColorManager.setColor(g, state, 0);
+	
+		// Issue #69
+		ColorManager.setColor( g, state, 0, isEnabled() );
+//		ColorManager.setColor(g, state, 0);
 		g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize);
 		g.drawOval(x, y, width, height);
 		g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
 	}
 
-
+	@Override
 	public TGComponent isOnMe(int _x, int _y) {
 		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
 			return this;
@@ -94,19 +104,22 @@ public class TADStopState extends TGCWithoutInternalComponent{
 		return null;
 	}
 	
+	@Override
 	public int getType() {
 		return TGComponentManager.TAD_STOP_STATE;
 	}
 	
+	@Override
 	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+		return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
-	
-}
-
-
-
-
     
-
-
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.AbstractCDElement#canBeDisabled()
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	return false;
+    }
+}
diff --git a/src/main/java/ui/ad/TADTimeCapture.java b/src/main/java/ui/ad/TADTimeCapture.java
index 128a81da1ae89291aa99b343b0a6e92221f49e6c..5197e735757c8534ad221167e38044a352f546b3 100755
--- a/src/main/java/ui/ad/TADTimeCapture.java
+++ b/src/main/java/ui/ad/TADTimeCapture.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -55,14 +52,13 @@ import java.awt.geom.Line2D;
  * @version 1.0 23/07/2009
  * @author Ludovic APVRILLE
  */
-public class TADTimeCapture extends TGCOneLineText implements ActionStateErrorHighlight {
+public class TADTimeCapture extends TADOneLineText/* Issue #69 TGCOneLineText*/ implements ActionStateErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
     protected int arc = 5;
 	
 	protected int stateAction = 0; // 0: unchecked 1: attribute; 3:unknown
-
 	
     public TADTimeCapture(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -87,6 +83,7 @@ public class TADTimeCapture extends TGCOneLineText implements ActionStateErrorHi
         myImageIcon = IconManager.imgic204;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		String myVal = "time -> " + value;
         int w  = g.getFontMetrics().stringWidth(myVal);
@@ -110,15 +107,16 @@ public class TADTimeCapture extends TGCOneLineText implements ActionStateErrorHi
 			g.fillRoundRect(x, y, width, height, arc, arc);
 			g.setColor(c);
 		}
-        g.drawRoundRect(x, y, width, height, arc, arc);
+
+		g.drawRoundRect(x, y, width, height, arc, arc);
 		
         g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
         g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
         
         g.drawString(myVal, x + (width - w) / 2 , y + textY);
-		
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -127,22 +125,22 @@ public class TADTimeCapture extends TGCOneLineText implements ActionStateErrorHi
         if ((int)(Line2D.ptSegDistSq(x +width/2, y- lineLength,  x+width/2, y + lineLength + height, _x, _y)) < distanceSelected) {
 			return this;	
 		}
-        
 
         return null;
     }
     
-    
+    @Override
     public int getType() {
         return TGComponentManager.TAD_TIME_CAPTURE;
     }
     
+    @Override
    	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateAction = _stateAction;
 	}
-    
 }
diff --git a/src/main/java/ui/ad/TADTimeInterval.java b/src/main/java/ui/ad/TADTimeInterval.java
index 2b87cea962598cac2f171a1b8cbd284c8f1c75cc..fea95ac151e9b9e6f64548a7dcd8e1c7fdd2da1c 100755
--- a/src/main/java/ui/ad/TADTimeInterval.java
+++ b/src/main/java/ui/ad/TADTimeInterval.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -55,7 +52,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 12/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADTimeInterval extends TGCWithInternalComponent{
+public class TADTimeInterval extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent */{
     private int lineLength = 5;
     private int textX, textY;
     private int incrementY = 3;
@@ -70,7 +67,7 @@ public class TADTimeInterval extends TGCWithInternalComponent{
         textY = height/2 + 5;
         
         nbConnectingPoint = 2;
-        connectingPoint = new TGConnectingPoint[2];
+        connectingPoint = new TGConnectingPoint[ nbConnectingPoint ];
         connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
         connectingPoint[1] = new TGConnectingPointAD(this, 0, + lineLength, false, true, 0.5, 1.0);
         addTGConnectingPointsComment();
@@ -92,6 +89,7 @@ public class TADTimeInterval extends TGCWithInternalComponent{
         myImageIcon = IconManager.imgic224;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         g.drawRect(x, y, width, height);
         g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
@@ -109,6 +107,7 @@ public class TADTimeInterval extends TGCWithInternalComponent{
         }
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -137,19 +136,13 @@ public class TADTimeInterval extends TGCWithInternalComponent{
         ((TGCTimeInterval)(tgcomponent[0])).setMaxDelay(val);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_DELAY_NON_DETERMINISTIC_DELAY;
     }
     
+    @Override
    	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
-    
 }
-
-
-
-
-
-
-
diff --git a/src/main/java/ui/ad/TADTimeLimitedOffer.java b/src/main/java/ui/ad/TADTimeLimitedOffer.java
index 02785ec46b29070c66d5eaef01030dc62961eeb0..1298580e5d31a64031060697a3fc2edab6e294e7 100755
--- a/src/main/java/ui/ad/TADTimeLimitedOffer.java
+++ b/src/main/java/ui/ad/TADTimeLimitedOffer.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
- 
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -57,7 +54,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 12/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADTimeLimitedOffer extends TGCWithInternalComponent implements ActionStateErrorHighlight  {
+public class TADTimeLimitedOffer extends  TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent*/ implements ActionStateErrorHighlight {
 	protected int lineLength = 25;
 	protected int lineDistance = 10;
 	protected int textX =  5;
@@ -81,7 +78,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act
 		connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0);
 		connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0);
 		connectingPoint[2] = new TGConnectingPointAD(this, distanceTwoLines, lineLength, false, true, 0.5, 1.0);
-                addTGConnectingPointsComment();
+        addTGConnectingPointsComment();
 
 		nbInternalTGComponent = 1;
 		tgcomponent = new TGComponent[nbInternalTGComponent];
@@ -101,6 +98,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act
 		myImageIcon = IconManager.imgic218;
 	}
 
+	@Override
 	public void internalDrawing(Graphics g) {
 		int w  = g.getFontMetrics().stringWidth(value);
 		int w1 = Math.max(minWidth, w + 2 * textX);
@@ -142,6 +140,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act
 	
 	}
 
+	@Override
 	public TGComponent isOnOnlyMe(int x1, int y1) {
 		if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
 			return this;
@@ -175,7 +174,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act
 		connectingPoint[2].setCdX(width / 2 + distanceTwoLines);	
 	}*/
 	
-	public void updateInternalComponents(int diffWidth, int diffX) {
+	protected void updateInternalComponents(int diffWidth, int diffX) {
 		int x1 = tgcomponent[0].getX();
 		int y1 = tgcomponent[0].getY();
 		tgcomponent[0].setCdRectangle(width + distanceStateLine + 2, width + distanceStateLine + 10, textY - 10, textY + 10);
@@ -184,6 +183,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act
 		//
 	}
 	
+	@Override
 	public boolean editOndoubleClick(JFrame frame) {
 		String oldValue = value;
 		String text = getName() + ": ";
@@ -209,23 +209,18 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act
 		return tgcomponent[0].getValue();	
 	}
 	
+	@Override
 	public int getType() {
 		return TGComponentManager.TAD_TIME_LIMITED_OFFER;
 	}
 	
+	@Override
 	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+		return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
 	
+	@Override
 	public void setStateAction(int _stateAction) {
 		stateAction = _stateAction;
 	}
-
 }
-
-
-
-
-    
-
-
diff --git a/src/main/java/ui/ad/TADTimeLimitedOfferWithLatency.java b/src/main/java/ui/ad/TADTimeLimitedOfferWithLatency.java
index bc0cb533f7471cc138060256c27605118fd97343..c775d61df261687c5bec8f90e911311b190bcb2b 100755
--- a/src/main/java/ui/ad/TADTimeLimitedOfferWithLatency.java
+++ b/src/main/java/ui/ad/TADTimeLimitedOfferWithLatency.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import myutil.GraphicLib;
@@ -57,7 +54,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 12/12/2003
  * @author Ludovic APVRILLE
  */
-public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent implements ActionStateErrorHighlight {
+public class TADTimeLimitedOfferWithLatency extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent*/ implements ActionStateErrorHighlight {
     protected int lineLength = 25;
     protected int lineLengthLatency = 5;
     protected int lineDistance = 10;
@@ -116,9 +113,9 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp
         minWidth = 30;
         
         myImageIcon = IconManager.imgic220;
-        
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         //
         int w  = g.getFontMetrics().stringWidth(value);
@@ -170,6 +167,7 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp
         }
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         // state
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
@@ -210,7 +208,7 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp
                 connectingPoint[2].setCdX(width / 2 + distanceTwoLines);
         }*/
     
-    public void updateInternalComponents(int diffWidth, int diffX) {
+    protected void updateInternalComponents(int diffWidth, int diffX) {
         int x1 = tgcomponent[0].getX();
         int y1 = tgcomponent[0].getY();
         
@@ -223,6 +221,7 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp
         tgcomponent[1].setCdRectangle(posx, posx+10, posy - 10, posy + 10);
     }
     
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String oldValue = value;
         String text = getName() + ": ";
@@ -264,16 +263,18 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp
         tgcomponent[0].setValue(delay);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TAD_TIME_LIMITED_OFFER_WITH_LATENCY;
     }
     
+    @Override
    	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_AD_DIAGRAM;
+    	return TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateAction = _stateAction;
 	}
- 
-}
+ }
diff --git a/src/main/java/ui/ad/TActivityDiagramToolBar.java b/src/main/java/ui/ad/TActivityDiagramToolBar.java
index 5f84487b9c81deef28fc33c417b96ba421ab7703..02d83a32ba40d2454e58008d3b61263b3b47672a 100755
--- a/src/main/java/ui/ad/TActivityDiagramToolBar.java
+++ b/src/main/java/ui/ad/TActivityDiagramToolBar.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ad;
 
 import ui.MainGUI;
@@ -47,9 +44,6 @@ import ui.TToolBar;
 
 import javax.swing.*;
 
-//import java.awt.*;
-//import java.awt.event.*;
-
 /**
  * Class TActivityDiagramToolBar
  * Toolbar associated with activity diagrams
@@ -59,7 +53,6 @@ import javax.swing.*;
  */
 public class TActivityDiagramToolBar extends TToolBar {
     
-    
     public TActivityDiagramToolBar(MainGUI _mgui) {
         super(_mgui);
     }
@@ -185,8 +178,3 @@ public class TActivityDiagramToolBar extends TToolBar {
         button.addMouseListener(mgui.mouseHandler);
     }
 } // Class
-
-
-
-
-
diff --git a/src/main/java/ui/ad/TGConnectingPointAD.java b/src/main/java/ui/ad/TGConnectingPointAD.java
index bffd4f96631badb05b301211e4fc9509e19c3da1..df8f136712d9297ab99e3631732a41eb7cc37cab 100755
--- a/src/main/java/ui/ad/TGConnectingPointAD.java
+++ b/src/main/java/ui/ad/TGConnectingPointAD.java
@@ -35,9 +35,6 @@
  * The fact that you are presently reading this means that you have had
  * knowledge of the CeCILL license and that you accept its terms.
  */
-
-
-
  
 package ui.ad;
 
@@ -52,21 +49,14 @@ import ui.TGConnectingPointWidthHeight;
  * @version 1.0 12/12/2003
  * @author Ludovic APVRILLE
  */
-public class TGConnectingPointAD extends  TGConnectingPointWidthHeight{
+public class TGConnectingPointAD extends TGConnectingPointWidthHeight{
 
 	public TGConnectingPointAD(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) {
 		super(_container, _x, _y, _in, _out, _w, _h);
 	}
 
+	@Override
 	public boolean isCompatibleWith(int type) {
         return type == TGComponentManager.CONNECTOR_AD_DIAGRAM;
     }
-       
 }
-
-
-
-
-    
-
-
diff --git a/src/main/java/ui/atd/ATDAttack.java b/src/main/java/ui/atd/ATDAttack.java
index e81ba2822b66199a8dd60965392b4febcdf1cb4e..ab9cc1a828da05e77f7a4ab4073046a9200fe309 100644
--- a/src/main/java/ui/atd/ATDAttack.java
+++ b/src/main/java/ui/atd/ATDAttack.java
@@ -59,7 +59,7 @@ import java.awt.*;
  * @author Ludovic APVRILLE
  * @version 1.0 09/12/2009
  */
-public class ATDAttack extends TGCScalableWithInternalComponent implements SwallowedTGComponent, WithAttributes, CheckableAccessibility, CanBeDisabled {
+public class ATDAttack extends TGCScalableWithInternalComponent implements SwallowedTGComponent, WithAttributes, CheckableAccessibility/*, CanBeDisabled*/ {
     private int textY1 = 3;
     //   private int textY2 = 3;
 
@@ -127,6 +127,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
         myImageIcon = IconManager.imgic702;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         String ster;
         if (isRootAttack) {
@@ -196,14 +197,20 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
         // Core of the attack
         Color c = g.getColor();
         g.draw3DRect(x, y, width, height, true);
+        
         if (isEnabled()) {
             if (isRootAttack) {
                 g.setColor(ColorManager.ATD_ROOT_ATTACK);
             } else {
                 g.setColor(ColorManager.ATD_ATTACK);
             }
-        } else {
-            g.setColor(ColorManager.ATD_ATTACK_DISABLED);
+        } 
+        else {
+    		// Issue #69: Disabled color now managed in TGComponent / ColorManager
+	    	// For filled shapes ensure background color is white so that text is
+	    	// readable
+	    	g.setColor( ColorManager.DISABLED_FILLING );
+//            g.setColor(ColorManager.ATD_ATTACK_DISABLED);
         }
 
         g.fill3DRect(x + 1, y + 1, width - 1, height - 1, true);
@@ -254,13 +261,14 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
                 }
             }
 
-            if (!isEnabled()) {
-                String val = "disabled";
-                w = g.getFontMetrics().stringWidth(val);
-                //int h =  currentFontSize + (int)(textY1 * tdp.getZoom());
-                g.setFont(f.deriveFont(Font.ITALIC));
-                g.drawString(val, x + (width - w - 5), y + height - 2);
-            }
+            // Issue #69: Use the same disabling UI as other components
+//            if (!isEnabled()) {
+//                String val = "disabled";
+//                w = g.getFontMetrics().stringWidth(val);
+//                //int h =  currentFontSize + (int)(textY1 * tdp.getZoom());
+//                g.setFont(f.deriveFont(Font.ITALIC));
+//                g.drawString(val, x + (width - w - 5), y + height - 2);
+//            }
 
 
         } else {
@@ -271,7 +279,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
 
     }
 
-    public void setValue(String val, Graphics g) {
+    private void setValue(String val, Graphics g) {
         oldValue = value;
         String ster;
         if (isRootAttack) {
@@ -299,10 +307,9 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
 
 
         g.setFont(f0);
-
-        //
     }
 
+    @Override
     public void resizeWithFather() {
         if ((father != null) && (father instanceof ATDBlock)) {
             //
@@ -312,7 +319,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
         }
     }
 
-
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String tmp;
         boolean error = false;
@@ -356,6 +363,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
         return !error;
     }
 
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
 
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
@@ -364,10 +372,12 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
         return null;
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.ATD_ATTACK;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<info description=\"" + description);
@@ -379,9 +389,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
 
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException {
-        //
         try {
-
             NodeList nli;
             Node n1, n2;
             Element elt;
@@ -420,7 +428,6 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
         }
     }
 
-
     public String getDescription() {
         return description;
     }
@@ -439,7 +446,6 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
         return s;
     }
 
-
     public boolean isRootAttack() {
         return isRootAttack;
     }
@@ -448,8 +454,14 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall
         setFather(null);
         TDiagramPanel tdp = getTDiagramPanel();
         setCdRectangle(tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY());
-
     }
-
-
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	return true;
+    }
 }
diff --git a/src/main/java/ui/atd/ATDAttackConnector.java b/src/main/java/ui/atd/ATDAttackConnector.java
index 7590b0414bd785dff05f6dd827d8d0d121630fc9..300ce4ea0e2b3f4b20046ae6fca522d34ff084f6 100644
--- a/src/main/java/ui/atd/ATDAttackConnector.java
+++ b/src/main/java/ui/atd/ATDAttackConnector.java
@@ -36,12 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.atd;
 
-
 import myutil.Conversion;
 import myutil.GraphicLib;
 import ui.*;
@@ -66,7 +62,6 @@ public  class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints
     protected double oldScaleFactor;
     protected int fontSize = 12;
 
-
     public ATDAttackConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) {
         super(_x, _y,  _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint);
         myImageIcon = IconManager.imgic202;
@@ -75,6 +70,7 @@ public  class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints
         oldScaleFactor = tdp.getZoom();
     }
 
+    @Override
     protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
         /*if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) {
           g.drawLine(x1, y1, x2, y2);
@@ -137,19 +133,19 @@ public  class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints
           g.fillRect(p1.getX()-(cz/2), p1.getY()-(cz/2), cz, cz);*/
 
         Point p = new Point(x2, y2);
-        if (p == null) {
+//        if (p == null) {
+//            //
+//        } else {
+        if (Point2D.distance(x1, y1, p.x, p.y) < GraphicLib.longueur * 1.5) {
             //
-        } else {
-            if (Point2D.distance(x1, y1, p.x, p.y) < GraphicLib.longueur * 1.5) {
+            if ((p.x != x1) || (p.y != y1)) {
+                g.drawLine(x1, y1, p.x, p.y);
                 //
-                if ((p.x != x1) || (p.y != y1)) {
-                    g.drawLine(x1, y1, p.x, p.y);
-                    //
-                }
-            } else {
-                GraphicLib.arrowWithLine(g, 1, 0, 10, x1, y1, p.x, p.y, true);
             }
+        } else {
+            GraphicLib.arrowWithLine(g, 1, 0, 10, x1, y1, p.x, p.y, true);
         }
+      //  }
 
         if (value.length() > 0) {
             Font f = g.getFont();
@@ -160,9 +156,9 @@ public  class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints
             g.drawString(value, x2+(cz/2)+1, y2);
             g.setFont(f);
         }
-
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String oldValue = value;
         String text = getName() + "Connector";
@@ -175,8 +171,6 @@ public  class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints
             s = Conversion.removeFirstSpaces(s);
         }
 
-        //
-
         if ((s != null) && (!s.equals(oldValue))) {
             setValue(s);
             return true;
@@ -185,11 +179,12 @@ public  class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints
         return false;
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.ATD_ATTACK_CONNECTOR;
     }
 
+    @Override
     public void rescale(double scaleFactor){
         //
         int xx, yy;
@@ -212,9 +207,4 @@ public  class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints
 
         oldScaleFactor = scaleFactor;
     }
-
-
-
-
-
 }
diff --git a/src/main/java/ui/atd/ATDCompositionConnector.java b/src/main/java/ui/atd/ATDCompositionConnector.java
index daa43954f2e0809bb4d9a4ab1412dac4f5acd591..52ee0ddb63974d72bb3740fd9898932473107cec 100644
--- a/src/main/java/ui/atd/ATDCompositionConnector.java
+++ b/src/main/java/ui/atd/ATDCompositionConnector.java
@@ -36,12 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.atd;
 
-
 import ui.*;
 import ui.util.IconManager;
 
@@ -63,8 +59,7 @@ public  class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo
 	protected int xp1, xp2, yp1, yp2;
 	protected double oldScaleFactor;
 	protected boolean rescaled;
-	
-    
+	    
     public ATDCompositionConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) {
         super(_x, _y,  _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint);
         myImageIcon = IconManager.imgic202;
@@ -74,6 +69,7 @@ public  class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo
 		rescaled = true;
     }
     
+    @Override
     protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
         /*if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) {
 		g.drawLine(x1, y1, x2, y2);
@@ -86,7 +82,7 @@ public  class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo
 			xp2 = x2;
 			yp1 = y1;
 			yp2 = y2;
-			Double alpha;
+			//Double alpha;
 			
 			int dd = (int)(d*tdp.getZoom());
 			int DD = (int)(D*tdp.getZoom());
@@ -169,6 +165,7 @@ public  class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo
 		rescaled = false;
     }
 	
+    @Override
 	public TGComponent extraIsOnOnlyMe(int x1, int y1) {
 		if (p != null) {
 			if (p.contains(x1, y1)) {
@@ -179,6 +176,7 @@ public  class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo
         return null;
     }
 	
+    @Override
 	public void rescale(double scaleFactor){
 		//
 		int xx, yy;
@@ -203,11 +201,8 @@ public  class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo
 		rescaled = true;
 	}
     
-    
+    @Override
     public int getType() {
         return TGComponentManager.ATD_COMPOSITION_CONNECTOR;
     }
-	
-	
-    
 }
diff --git a/src/main/java/ui/avatarad/AvatarADAcceptEventAction.java b/src/main/java/ui/avatarad/AvatarADAcceptEventAction.java
index 34987e1a285ba75f7b568c022cc95fb4d967a892..4c2cb5c0647315cbd26be50c6ed5c5b9ef672976 100755
--- a/src/main/java/ui/avatarad/AvatarADAcceptEventAction.java
+++ b/src/main/java/ui/avatarad/AvatarADAcceptEventAction.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import myutil.GraphicLib;
@@ -56,7 +53,7 @@ import java.awt.geom.Line2D;
    * @version 1.0 02/09/2011
    * @author Ludovic APVRILLE
  */
-public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements EmbeddedComment, BasicErrorHighlight {
+public class AvatarADAcceptEventAction extends  AvatarADBasicCanBeDisabledComponent/* Issue #69 AvatarADBasicComponent*/ implements EmbeddedComment, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  6;
     protected int textY =  15;
@@ -69,8 +66,8 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements
     public AvatarADAcceptEventAction(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
-	initScaling(30, 20);
-	minWidth = (int)(30* tdp.getZoom());
+        initScaling(30, 20);
+        minWidth = (int)(30* tdp.getZoom());
         oldScaleFactor = tdp.getZoom();
 
         nbConnectingPoint = 2;
@@ -89,6 +86,7 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements
         myImageIcon = IconManager.imgic904;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -142,6 +140,7 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements
 
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -154,15 +153,11 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements
         return null;
     }
 
-
-
     public String getEventName() {
         return value;
     }
 
-
-
-
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String oldValue = value;
 
@@ -182,15 +177,13 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements
 
     }
 
-
-
+    @Override
     public int getType() {
         return TGComponentManager.AAD_ACCEPT_EVENT_ACTION;
     }
 
-
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
-
 }
diff --git a/src/main/java/ui/avatarad/AvatarADAction.java b/src/main/java/ui/avatarad/AvatarADAction.java
index aef9de2da3743eafa3d042f7f52d78f2bb74e4b5..3d0e619b91a3c5eb614519cad869b7870684915a 100755
--- a/src/main/java/ui/avatarad/AvatarADAction.java
+++ b/src/main/java/ui/avatarad/AvatarADAction.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import myutil.GraphicLib;
@@ -56,7 +53,7 @@ import java.awt.geom.Line2D;
    * @version 1.0 02/09/2011
    * @author Ludovic APVRILLE
  */
-public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedComment, BasicErrorHighlight {
+public class AvatarADAction extends AvatarADBasicCanBeDisabledComponent/* Issue #69 AvatarADBasicComponent*/ implements EmbeddedComment, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -88,6 +85,7 @@ public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedCo
         myImageIcon = IconManager.imgic204;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -118,6 +116,7 @@ public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedCo
 
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -130,6 +129,7 @@ public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedCo
         return null;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         oldValue = value;
 
@@ -177,13 +177,13 @@ public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedCo
         return ret;
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.AAD_ACTION;
     }
 
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
-
-
 }
diff --git a/src/main/java/ui/avatarad/AvatarADActivity.java b/src/main/java/ui/avatarad/AvatarADActivity.java
index b8c4cc814ecd0c6d13f46a347e35e46414178e33..ad62604325f848346d9291e7a5dab126c6d741c5 100644
--- a/src/main/java/ui/avatarad/AvatarADActivity.java
+++ b/src/main/java/ui/avatarad/AvatarADActivity.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import myutil.GraphicLib;
@@ -46,9 +43,11 @@ import ui.*;
 import ui.util.IconManager;
 
 import javax.swing.*;
-import java.awt.*;
-import java.util.LinkedList;
 
+import java.awt.Font;
+import java.awt.Graphics;
+import java.util.LinkedList;
+import java.util.List;
 
 /**
    * Class AvatarADActivity
@@ -58,23 +57,22 @@ import java.util.LinkedList;
    * @author Ludovic APVRILLE
  */
 public class AvatarADActivity extends TGCScalableWithInternalComponent implements SwallowTGComponent, SwallowedTGComponent {
-    private int textY1 = 3;
+//    private int textY1 = 3;
 
-    private int maxFontSize = 12;
-    private int minFontSize = 4;
-    private int currentFontSize = -1;
+    //private int maxFontSize = 12;
+  //  private int minFontSize = 4;
+    //private int currentFontSize = -1;
     private boolean displayText = true;
     private int textX = 7;
 
-
     public String oldValue;
 
     public AvatarADActivity(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
-	initScaling(100, 50);
-	minWidth = (int)(40* tdp.getZoom());
-	minHeight = (int)(30* tdp.getZoom());
+        initScaling(100, 50);
+        minWidth = (int)(40* tdp.getZoom());
+        minHeight = (int)(30* tdp.getZoom());
         oldScaleFactor = tdp.getZoom();
 
         nbConnectingPoint = 32;
@@ -137,7 +135,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         setValue(name);
         oldValue = value;
 
-        currentFontSize = maxFontSize;
+        //currentFontSize = maxFontSize;
         oldScaleFactor = tdp.getZoom();
 
         myImageIcon = IconManager.imgic700;
@@ -145,6 +143,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         //actionOnAdd();
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         Font f = g.getFont();
         Font fold = f;
@@ -200,7 +199,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         g.drawRect(x, y, width, height);
         int decY = (int)(15 * tdp.getZoom());
         int decX = (int)(20 * tdp.getZoom());
-	int h = g.getFontMetrics().getHeight();
+        int h = g.getFontMetrics().getHeight();
         if ((height > decY) && (width > decX)) {
             g.drawLine(x, y+decY, x+decY, y+decY);
             g.drawLine(x+decY, y+decY, x+decX, y+decY-5);
@@ -230,7 +229,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         g.setFont(fold);
     }
 
-
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
 
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
@@ -244,8 +243,8 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         return value;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame, int _x, int _y) {
-
         oldValue = value;
 
         //String text = getName() + ": ";
@@ -272,11 +271,12 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
 
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.AAD_ACTIVITY;
     }
 
+    @Override
     public boolean acceptSwallowedTGComponent(TGComponent tgc) {
         if (tgc instanceof AvatarADBasicComponent) {
             return true;
@@ -290,6 +290,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
 
     }
 
+    @Override
     public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) {
         boolean swallowed = false;
 
@@ -340,6 +341,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         return true;
     }
 
+    @Override
     public void removeSwallowedTGComponent(TGComponent tgc) {
         removeMyInternalComponent(tgc, false);
     }
@@ -379,7 +381,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         return false;
     }
 
-
+    @Override
     public void hasBeenResized() {
         for(int i=0; i<nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof AvatarADBasicComponent) {
@@ -399,8 +401,8 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
 
     }
 
+    @Override
     public void resizeWithFather() {
-
         if ((father != null) && (father instanceof AvatarADActivity)) {
             // Too large to fit in the father? -> resize it!
             resizeToFatherSize();
@@ -410,8 +412,8 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         }
     }
 
-    public LinkedList<AvatarADActivity> getActivityList() {
-        LinkedList<AvatarADActivity> list = new LinkedList<AvatarADActivity>();
+    public List<AvatarADActivity> getActivityList() {
+        List<AvatarADActivity> list = new LinkedList<AvatarADActivity>();
         for(int i=0; i<nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof AvatarADActivity) {
                 list.add((AvatarADActivity)(tgcomponent[i]));
@@ -420,8 +422,8 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         return list;
     }
 
-    public LinkedList<AvatarADActivity> getFullActivityList() {
-        LinkedList<AvatarADActivity> list = new LinkedList<AvatarADActivity>();
+    public List<AvatarADActivity> getFullActivityList() {
+        List<AvatarADActivity> list = new LinkedList<AvatarADActivity>();
         for(int i=0; i<nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof AvatarADActivity) {
                 list.add((AvatarADActivity)(tgcomponent[i]));
@@ -432,7 +434,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
     }
 
     public boolean hasInternalActivityWithName(String name) {
-        LinkedList<AvatarADActivity> list  = getFullActivityList();
+        List<AvatarADActivity> list  = getFullActivityList();
         for(AvatarADActivity s: list) {
             if (s.getValue().compareTo(name) ==0) {
                 return true;
@@ -441,6 +443,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
         return false;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
     }
@@ -471,6 +474,13 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement
     public boolean isACompositeActivity() {
         return (nbInternalTGComponent > 0);
     }
-
-
+    
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.AbstractCDElement#canBeDisabled()
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	return true;
+    }
 }
diff --git a/src/main/java/ui/avatarad/AvatarADAssociationConnector.java b/src/main/java/ui/avatarad/AvatarADAssociationConnector.java
index e0944602b82b1b7b559e3d99b41d6f4d08cd5cdc..56b3f58357b1cd738545ee55d39677f0e5b6f9f8 100755
--- a/src/main/java/ui/avatarad/AvatarADAssociationConnector.java
+++ b/src/main/java/ui/avatarad/AvatarADAssociationConnector.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADConnector;
 
 import java.awt.*;
 import java.awt.geom.Point2D;
@@ -55,14 +53,14 @@ import java.util.Vector;
 * @version 1.0 01/09/2011
 * @author Ludovic APVRILLE
  */
-public  class AvatarADAssociationConnector extends TGConnector {
+public  class AvatarADAssociationConnector extends TADConnector/* Issue #69 TGConnector*/ {
     int w, h;
     
     public AvatarADAssociationConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) {
         super(_x, _y,  _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint);
     }
     
-    
+    @Override
     protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
         if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) {
             g.drawLine(x1, y1, x2, y2);
@@ -75,6 +73,7 @@ public  class AvatarADAssociationConnector extends TGConnector {
     GraphicLib.dashedLine(g, x1, y1, x2, y2);
     }*/
     
+    @Override
     public TGComponent extraIsOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) {
             return this;
@@ -82,15 +81,21 @@ public  class AvatarADAssociationConnector extends TGConnector {
         return null;
     }
 	
+    @Override
     public int getType() {
         return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
     }
     
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	if ( p2 != null && ( p2.getFather() instanceof AvatarADStopState || p2.getFather() instanceof AvatarADStopFlow ) ) {
+    		return false;
+    	}
+    	
+    	return super.canBeDisabled();
+    }
 }
-
-
-
-
-
-
-
diff --git a/src/main/java/ui/avatarad/AvatarADBasicCanBeDisabledComponent.java b/src/main/java/ui/avatarad/AvatarADBasicCanBeDisabledComponent.java
new file mode 100644
index 0000000000000000000000000000000000000000..3465351a35fd8d8b989cd9dba0d3d7b8ff3c58f4
--- /dev/null
+++ b/src/main/java/ui/avatarad/AvatarADBasicCanBeDisabledComponent.java
@@ -0,0 +1,17 @@
+package ui.avatarad;
+
+import ui.TDiagramPanel;
+import ui.TGComponent;
+
+public abstract class AvatarADBasicCanBeDisabledComponent extends AvatarADBasicComponent {
+    
+    public AvatarADBasicCanBeDisabledComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos,
+			TGComponent _father, TDiagramPanel _tdp) {
+		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
+	}
+
+	@Override
+    public boolean canBeDisabled() {
+    	return true;
+    }
+}
diff --git a/src/main/java/ui/avatarad/AvatarADBasicComponent.java b/src/main/java/ui/avatarad/AvatarADBasicComponent.java
index 3721dec6eb48bca9156d717f45c839ab9a869360..8dc5982201fc7ef212c8ad9df97a754425d6f725 100644
--- a/src/main/java/ui/avatarad/AvatarADBasicComponent.java
+++ b/src/main/java/ui/avatarad/AvatarADBasicComponent.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import ui.*;
@@ -51,16 +48,18 @@ import ui.*;
  * @author Ludovic APVRILLE
  */
 public abstract class AvatarADBasicComponent extends TGCScalableWithoutInternalComponent implements SwallowedTGComponent {
-    private int lineLength = 5;
+   // private int lineLength = 5;
 
     public AvatarADBasicComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
     }
 
+    @Override
     public void resizeWithFather() {
         if ((father != null) && (father instanceof AvatarADActivity)) {
             // Too large to fit in the father? -> resize it!
@@ -70,5 +69,4 @@ public abstract class AvatarADBasicComponent extends TGCScalableWithoutInternalC
             setMoveCd(x, y);
         }
     }
-
 }
diff --git a/src/main/java/ui/avatarad/AvatarADChoice.java b/src/main/java/ui/avatarad/AvatarADChoice.java
index 7830ed0ca7308baa6bd7ad3ee2d7c1ba32901121..b261c689a536b2cd5b9a24190771f5bf4b004693 100755
--- a/src/main/java/ui/avatarad/AvatarADChoice.java
+++ b/src/main/java/ui/avatarad/AvatarADChoice.java
@@ -36,17 +36,15 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
-import java.awt.geom.Line2D;
+import ui.EmbeddedComment;
+import ui.SwallowedTGComponent;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADChoice;
 
 /**
    * Class AvatarADChoice
@@ -55,125 +53,138 @@ import java.awt.geom.Line2D;
    * @version 1.0 01/09/2011
    * @author Ludovic APVRILLE
  */
-public class AvatarADChoice extends TGCScalableWithInternalComponent implements SwallowedTGComponent, EmbeddedComment, BasicErrorHighlight {
-    private int lineLength = 10;
-    private int lineOutLength = 25;
-    private int textX1, textY1, textX2, textY2, textX3, textY3;
+public class AvatarADChoice extends TADChoice /* Issue #69 TGCScalableWithInternalComponent*/ implements SwallowedTGComponent, EmbeddedComment/*, BasicErrorHighlight*/ {
+//    private int lineLength = 10;
+//    private int lineOutLength = 25;
+//    private int textX1, textY1, textX2, textY2, textX3, textY3;
 
     protected int stateOfError = 0; // Not yet checked
 
     public AvatarADChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
-
-        initScaling(30, 30);
-        oldScaleFactor = tdp.getZoom();
-
-        textX1 = -lineOutLength;
-        textY1 = height/2 - 5;
-        textX2 = width + 5;
-        textY2 = height/2 - 5;
-        textX3 = width /2 + 5;
-        textY3 = height + 15;
-
+//
+//        initScaling(30, 30);
+//        oldScaleFactor = tdp.getZoom();
+//
+//        textX1 = -lineOutLength;
+//        textY1 = height/2 - 5;
+//        textX2 = width + 5;
+//        textY2 = height/2 - 5;
+//        textX3 = width /2 + 5;
+//        textY3 = height + 15;
+//
+//        nbConnectingPoint = 4;
+//        connectingPoint = new TGConnectingPoint[nbConnectingPoint];
+//        connectingPoint[0] = new AvatarADConnectingPoint(this, 0, -lineLength, true, false, 0.5, 0.0);
+//        connectingPoint[1] = new AvatarADConnectingPoint(this, -lineOutLength, 0, false, true, 0.0, 0.5);
+//        connectingPoint[2] = new AvatarADConnectingPoint(this, lineOutLength, 0, false, true, 1.0, 0.5);
+//        connectingPoint[3] = new AvatarADConnectingPoint(this, 0, lineOutLength,  false, true, 0.5, 1.0);
+//
+//        nbInternalTGComponent = 3;
+//        tgcomponent = new TGComponent[nbInternalTGComponent];
+//
+//        TGCScalableOneLineText tgc = new TGCScalableOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 1");
+//        tgcomponent[0] = tgc;
+//
+//        tgc = new TGCScalableOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 2");
+//        tgcomponent[1] = tgc;
+//
+//        tgc = new TGCScalableOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 3");
+//        tgcomponent[2] = tgc;
+//
+//        moveable = true;
+//        editable = false;
+//        removable = true;
+//
+//        name = "choice";
+//
+//        myImageIcon = IconManager.imgic208;
+    }
+    
+    @Override
+    protected void createConnectingPoints() {
         nbConnectingPoint = 4;
         connectingPoint = new TGConnectingPoint[nbConnectingPoint];
         connectingPoint[0] = new AvatarADConnectingPoint(this, 0, -lineLength, true, false, 0.5, 0.0);
         connectingPoint[1] = new AvatarADConnectingPoint(this, -lineOutLength, 0, false, true, 0.0, 0.5);
         connectingPoint[2] = new AvatarADConnectingPoint(this, lineOutLength, 0, false, true, 1.0, 0.5);
         connectingPoint[3] = new AvatarADConnectingPoint(this, 0, lineOutLength,  false, true, 0.5, 1.0);
-
-        nbInternalTGComponent = 3;
-        tgcomponent = new TGComponent[nbInternalTGComponent];
-
-        TGCScalableOneLineText tgc = new TGCScalableOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 1");
-        tgcomponent[0] = tgc;
-
-        tgc = new TGCScalableOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 2");
-        tgcomponent[1] = tgc;
-
-        tgc = new TGCScalableOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 3");
-        tgcomponent[2] = tgc;
-
-        moveable = true;
-        editable = false;
-        removable = true;
-
-        name = "choice";
-
-        myImageIcon = IconManager.imgic208;
-    }
-
-    public void internalDrawing(Graphics g) {
-        if (stateOfError > 0)  {
-            Color c = g.getColor();
-            switch(stateOfError) {
-            case ErrorHighlight.OK:
-                g.setColor(ColorManager.CHOICE);
-                break;
-            default:
-                g.setColor(ColorManager.UNKNOWN_BOX_ACTION);
-            }
-            // Making the polygon
-            int [] px1 = {x+(width/2), x+width+2, x + (width/2), x};
-            int [] py1 = {y, y + height/2, y+height+2, y+height/2};
-            g.fillPolygon(px1, py1, 4);
-            g.setColor(c);
-        }
-
-        g.drawLine(x+(width/2), y, x+width, y + height/2);
-        g.drawLine(x, y + height / 2, x+width/2, y + height);
-        g.drawLine(x + width/2, y, x, y + height/2);
-        g.drawLine(x + width, y + height/2, x + width/2, y + height);
-
-        g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
-        g.drawLine(x, y + height/2, x-lineOutLength, y + height/2);
-        g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2);
-        g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength);
-    }
-
-    public TGComponent isOnOnlyMe(int _x, int _y) {
-        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-            return this;
-        }
-
-        if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        return null;
     }
-
-    public String getGuard(int i) {
-        if ((i>=0) && (i<nbInternalTGComponent)) {
-            return tgcomponent[i].getValue();
-        }
-        return "";
-    }
-
-    public void setGuard(String guard, int i) {
-        if ((i>=0) && (i<nbInternalTGComponent)) {
-            tgcomponent[i].setValue(guard);
-        }
-    }
-
+//
+//    @Override
+//    public void internalDrawing(Graphics g) {
+//        if (stateOfError > 0)  {
+//            Color c = g.getColor();
+//            switch(stateOfError) {
+//            case ErrorHighlight.OK:
+//                g.setColor(ColorManager.CHOICE);
+//                break;
+//            default:
+//                g.setColor(ColorManager.UNKNOWN_BOX_ACTION);
+//            }
+//            // Making the polygon
+//            int [] px1 = {x+(width/2), x+width+2, x + (width/2), x};
+//            int [] py1 = {y, y + height/2, y+height+2, y+height/2};
+//            g.fillPolygon(px1, py1, 4);
+//            g.setColor(c);
+//        }
+//
+//        g.drawLine(x+(width/2), y, x+width, y + height/2);
+//        g.drawLine(x, y + height / 2, x+width/2, y + height);
+//        g.drawLine(x + width/2, y, x, y + height/2);
+//        g.drawLine(x + width, y + height/2, x + width/2, y + height);
+//
+//        g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
+//        g.drawLine(x, y + height/2, x-lineOutLength, y + height/2);
+//        g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2);
+//        g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength);
+//    }
+//
+//    @Override
+//    public TGComponent isOnOnlyMe(int _x, int _y) {
+//        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//            return this;
+//        }
+//
+//        if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        return null;
+//    }
+//
+//    public String getGuard(int i) {
+//        if ((i>=0) && (i<nbInternalTGComponent)) {
+//            return tgcomponent[i].getValue();
+//        }
+//        return "";
+//    }
+//
+//    public void setGuard(String guard, int i) {
+//        if ((i>=0) && (i<nbInternalTGComponent)) {
+//            tgcomponent[i].setValue(guard);
+//        }
+//    }
+
+    @Override
     public void resizeWithFather() {
         if ((father != null) && (father instanceof AvatarADActivity)) {
             // Too large to fit in the father? -> resize it!
@@ -184,16 +195,17 @@ public class AvatarADChoice extends TGCScalableWithInternalComponent implements
         }
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.AAD_CHOICE;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
     }
-
-    public void setStateAction(int _stateAction) {
-        stateOfError = _stateAction;
-    }
-
+//
+//    public void setStateAction(int _stateAction) {
+//        stateOfError = _stateAction;
+//    }
 }
diff --git a/src/main/java/ui/avatarad/AvatarADConnectingPoint.java b/src/main/java/ui/avatarad/AvatarADConnectingPoint.java
index 655f69cda3e4c7caa38512a1da0612ec3f911cdc..607ee7b091f836835dce051d07551b1d627140ec 100644
--- a/src/main/java/ui/avatarad/AvatarADConnectingPoint.java
+++ b/src/main/java/ui/avatarad/AvatarADConnectingPoint.java
@@ -36,12 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
-
 import ui.CDElement;
 import ui.TGComponentManager;
 import ui.TGConnectingPointWidthHeight;
@@ -53,14 +49,14 @@ import ui.TGConnectingPointWidthHeight;
  * @version 1.0 01/09/2011
  * @author Ludovic APVRILLE
  */
-public class AvatarADConnectingPoint extends  TGConnectingPointWidthHeight {
+public class AvatarADConnectingPoint extends TGConnectingPointWidthHeight {
     
     public AvatarADConnectingPoint(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) {
         super(_container, _x, _y, _in, _out, _w, _h);
     }
     
+    @Override
     public boolean isCompatibleWith(int type) {
         return type == TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
     }
-    
 }
diff --git a/src/main/java/ui/avatarad/AvatarADJunction.java b/src/main/java/ui/avatarad/AvatarADJunction.java
index da184855f6160a4612d9c4756e472263fc8d1cca..31af72842d15137bd73303c2d5ce0d136aaee6ea 100755
--- a/src/main/java/ui/avatarad/AvatarADJunction.java
+++ b/src/main/java/ui/avatarad/AvatarADJunction.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.avatarad;
 
 import ui.TDiagramPanel;
@@ -48,7 +47,6 @@ import ui.util.IconManager;
 import java.awt.*;
 import java.awt.geom.Line2D;
 
-
 /**
  * Class AvatarADJunction
  * Junction between several activities, without any synchronization. To be used in avatar activity diagrams
@@ -102,7 +100,7 @@ public class AvatarADJunction extends AvatarADBasicComponent {
         myImageIcon = IconManager.imgic212;
     }
 
-
+    @Override
     public void internalDrawing(Graphics g) {
         //g.drawLine(x +width/2, y,  x+width/2, y + height);
         //g.drawLine(x, y + (height/2), x+width, y + (height/2));
@@ -118,6 +116,7 @@ public class AvatarADJunction extends AvatarADBasicComponent {
         g.drawLine(x + width / 2 + range, y + height / 2, x + width / 2, y + height / 2 + range);
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         // vertical line
         if ((int) (Line2D.ptSegDistSq(x + width / 2, y, x + width / 2, y + height, _x, _y)) < distanceSelected) {
@@ -130,12 +129,12 @@ public class AvatarADJunction extends AvatarADBasicComponent {
         return null;
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.AAD_JUNCTION;
     }
 
-    public int getDefaultConnector() {
-        return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
-    }
-
+//    public int getDefaultConnector() {
+//        return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
+//    }
 }
diff --git a/src/main/java/ui/avatarad/AvatarADPanel.java b/src/main/java/ui/avatarad/AvatarADPanel.java
index 8681fecd95e2140d52642c9042d56ce1298f56ed..a45b09bfcc201193d63fa4277fbe1a2dcbc733f8 100644
--- a/src/main/java/ui/avatarad/AvatarADPanel.java
+++ b/src/main/java/ui/avatarad/AvatarADPanel.java
@@ -36,21 +36,13 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
-//import java.awt.*;
-
 import ui.*;
 
 import java.util.ArrayList;
 import java.util.Iterator;
-
-//import org.w3c.dom.*;
-//import org.xml.sax.*;
-//import javax.xml.parsers.*;
+import java.util.List;
 
 /**
  * Class AvatarADPanel
@@ -71,41 +63,52 @@ public class AvatarADPanel extends TDiagramPanel implements TDPWithAttributes{
         addMouseMotionListener(tdmm);*/
     }
     
+    @Override
     public boolean actionOnDoubleClick(TGComponent tgc) {
         return true;
     }
     
+    @Override
     public boolean actionOnAdd(TGComponent tgc) {
         return false;
     }
+
+    @Override
     public boolean actionOnValueChanged(TGComponent tgc) {
         return false;
     }
     
+    @Override
     public  boolean actionOnRemove(TGComponent tgc) {
         return false;
     }
     
+    @Override
     public String getXMLHead() {
         return "<AvatarADPanel name=\"" + name + "\"" + sizeParam() + zoomParam() + " >";
     }
     
+    @Override
     public String getXMLTail() {
         return "</AvatarADPanel>";
     }
     
+    @Override
     public String getXMLSelectedHead() {
         return "<AvatarADPanelCopy name=\"" + name + "\" xSel=\"" + xSel + "\" ySel=\"" + ySel + "\" widthSel=\"" + widthSel + "\" heightSel=\"" + heightSel + "\" >";
     }
     
+    @Override
     public String getXMLSelectedTail() {
         return "</AvatarADPanelCopy>";
     }
     
+    @Override
     public String getXMLCloneHead() {
         return "<AvatarADPanelCopy name=\"" + name + "\" xSel=\"" + 0 + "\" ySel=\"" + 0 + "\" widthSel=\"" + 0 + "\" heightSel=\"" + 0 + "\" >";
     }
     
+    @Override
     public String getXMLCloneTail() {
         return "</AvatarADPanelCopy>";
     }
@@ -118,47 +121,41 @@ public class AvatarADPanel extends TDiagramPanel implements TDPWithAttributes{
         // Position correctly guards of choice
     }
     
-    
-	
+    @Override
 	public boolean hasAutoConnect() {
 		return false;
 	}
 	
 	public void setConnectorsToFront() {
 		TGComponent tgc;
-		
-		//
-		
-        Iterator iterator = componentList.listIterator();
+        Iterator<TGComponent> iterator = componentList.listIterator();
         
-		ArrayList<TGComponent> list = new ArrayList<TGComponent>();
+		List<TGComponent> list = new ArrayList<TGComponent>();
 		
         while(iterator.hasNext()) {
-            tgc = (TGComponent)(iterator.next());
+            tgc = iterator.next();
 			if (!(tgc instanceof TGConnector)) {
 				list.add(tgc);
 			}
 		}
 		
-		//
 		for(TGComponent tgc1: list) {
-			//
 			componentList.remove(tgc1);
 			componentList.add(tgc1);
 		}
 	}
 	
 	public void alignPartitions() {
-        AvatarADPartition ontheLeft = null, sdi;
+        AvatarADPartition ontheLeft = null;//, sdi;
         int x = getMaxX(),xtmp;
         int y;
         int i;
         TGComponent tgc;
-        Iterator iterator = componentList.listIterator();
+        Iterator<TGComponent> iterator = componentList.listIterator();
         
         // search for the instances which is the most on the left
         while(iterator.hasNext()) {
-            tgc = (TGComponent)(iterator.next());
+            tgc = iterator.next();
             if (tgc instanceof AvatarADPartition) {
                 xtmp = tgc.getX();
                 if (xtmp < x) {
@@ -180,7 +177,5 @@ public class AvatarADPanel extends TDiagramPanel implements TDPWithAttributes{
                 tgc.setCd(tgc.getX(), y);
             }
         }
-        
     }
-    
 }
diff --git a/src/main/java/ui/avatarad/AvatarADParallel.java b/src/main/java/ui/avatarad/AvatarADParallel.java
index 311bf463dc4decc522b57ec22daa145a0f039ed2..0a583b428351df3d88ac7321c0b8f2b91165fb69 100755
--- a/src/main/java/ui/avatarad/AvatarADParallel.java
+++ b/src/main/java/ui/avatarad/AvatarADParallel.java
@@ -36,17 +36,17 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
+import java.awt.Graphics;
+import java.util.Arrays;
+import java.util.List;
+
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.EnablingADConnectorVisitor;
 import ui.util.IconManager;
 
-import java.awt.*;
-
 /**
  * Class AvatarADParallel
  * Parallel operator. All activities start together
@@ -55,9 +55,9 @@ import java.awt.*;
  * @version 1.0 02/09/2011
  * @author Ludovic APVRILLE
  */
-public class AvatarADParallel extends AvatarADBasicComponent{
+public class AvatarADParallel extends AvatarADBasicCanBeDisabledComponent /* Issue #69 AvatarADBasicComponent*/ {
     private int lineLength = 0;
-    private int textX, textY;
+   // private int textX, textY;
     
     public AvatarADParallel(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -65,8 +65,8 @@ public class AvatarADParallel extends AvatarADBasicComponent{
         initScaling(150, 5);
         oldScaleFactor = tdp.getZoom();
         
-        textX = width - 10;
-        textY = height - 8;
+//        textX = width - 10;
+//        textY = height - 8;
         
         nbConnectingPoint = 10;
         connectingPoint = new TGConnectingPoint[10];
@@ -93,11 +93,13 @@ public class AvatarADParallel extends AvatarADBasicComponent{
         myImageIcon = IconManager.imgic206;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         g.drawRect(x, y, width, height);
         g.fillRect(x, y, width, height);
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -113,18 +115,37 @@ public class AvatarADParallel extends AvatarADBasicComponent{
         tgcomponent[0].setValue(val);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.AAD_PARALLEL;
     }
+//    
+//   	public int getDefaultConnector() {
+//      return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
+//    }
+	
+    public List<TGConnectingPoint> getEnterConnectingPoints() {
+    	return Arrays.asList( Arrays.copyOfRange( connectingPoint, 0, 5 ) );
+    }
+	
+    public List<TGConnectingPoint> getExitConnectingPoints() {
+    	return Arrays.asList( Arrays.copyOfRange( connectingPoint, 5, connectingPoint.length ) );
+    }
     
-   	public int getDefaultConnector() {
-      return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
+    /**
+     * Issue #69
+     * @param _enabled
+     */
+    @Override
+    public void setEnabled( final boolean _enabled ) {
+    	super.setEnabled( _enabled );
+    	
+    	final List<TGConnectingPoint> enterConPoints = getEnterConnectingPoints();
+    	
+    	for ( final TGConnectingPoint point : connectingPoint ) {
+    		if ( !enterConPoints.contains( point ) ) {
+    			point.acceptForward( new EnablingADConnectorVisitor( _enabled ) );
+        	}
+    	}
     }
 }
-
-
-
-
-
-
-
diff --git a/src/main/java/ui/avatarad/AvatarADPartition.java b/src/main/java/ui/avatarad/AvatarADPartition.java
index 4719fb9847c0482ff66b05174577a7201285243f..7410edfa4fe4373a61b04cc8ed0c8bf987b15359 100755
--- a/src/main/java/ui/avatarad/AvatarADPartition.java
+++ b/src/main/java/ui/avatarad/AvatarADPartition.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import myutil.GraphicLib;
@@ -55,18 +52,18 @@ import java.awt.*;
  * @author Ludovic APVRILLE
  */
 public class AvatarADPartition extends AvatarADBasicComponent implements EmbeddedComment{
-    private int lineLength = 5;
+    //private int lineLength = 5;
     
     public AvatarADPartition(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
         
-	initScaling(10, 500);
-	oldScaleFactor = tdp.getZoom();
-	
-	minWidth = (int)(10* tdp.getZoom());
-	maxWidth = (int)(30* tdp.getZoom());
-	minHeight = (int)(250* tdp.getZoom());
-	maxHeight = (int)(1500* tdp.getZoom());
+		initScaling(10, 500);
+		oldScaleFactor = tdp.getZoom();
+		
+		minWidth = (int)(10* tdp.getZoom());
+		maxWidth = (int)(30* tdp.getZoom());
+		minHeight = (int)(250* tdp.getZoom());
+		maxHeight = (int)(1500* tdp.getZoom());
 	
         nbConnectingPoint = 0;
 
@@ -81,11 +78,13 @@ public class AvatarADPartition extends AvatarADBasicComponent implements Embedde
         myImageIcon = IconManager.imgic222;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
        g.drawLine(x+(width/2), y, x+(width/2), y +height);
        g.drawLine(x+(width/2)+1, y, x+(width/2)+1, y +height);
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -94,12 +93,12 @@ public class AvatarADPartition extends AvatarADBasicComponent implements Embedde
         return null;
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.AAD_PARTITION;
     }
-    
-    public int getDefaultConnector() {
-      return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
-    }
-    
+//    
+//    public int getDefaultConnector() {
+//      return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
+//    }
 }
diff --git a/src/main/java/ui/avatarad/AvatarADSendSignalAction.java b/src/main/java/ui/avatarad/AvatarADSendSignalAction.java
index 6b48304f34acbff3edaaa46b7d60e39206c6c682..6c01f804d1f0ef66e6ab9c7633e580a3f2ce83e3 100755
--- a/src/main/java/ui/avatarad/AvatarADSendSignalAction.java
+++ b/src/main/java/ui/avatarad/AvatarADSendSignalAction.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import myutil.GraphicLib;
@@ -56,7 +53,7 @@ import java.awt.geom.Line2D;
    * @version 1.0 02/09/2011
    * @author Ludovic APVRILLE
  */
-public class AvatarADSendSignalAction extends AvatarADBasicComponent implements EmbeddedComment, BasicErrorHighlight {
+public class AvatarADSendSignalAction extends AvatarADBasicCanBeDisabledComponent/* Issue #69 AvatarADBasicComponent*/ implements EmbeddedComment, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -72,7 +69,7 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements
         minWidth = (int)(30* tdp.getZoom());
         oldScaleFactor = tdp.getZoom();
 	
-	nbConnectingPoint = 2;
+        nbConnectingPoint = 2;
         connectingPoint = new TGConnectingPoint[2];
         connectingPoint[0] = new AvatarADConnectingPoint(this, 0, -lineLength, true, false, 0.5, 0.0);
         connectingPoint[1] = new AvatarADConnectingPoint(this, 0, lineLength, false, true, 0.5, 1.0);
@@ -87,8 +84,8 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements
         myImageIcon = IconManager.imgic904;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
-
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
         if ((w1 != width) & (!tdp.isScaled())) {
@@ -142,14 +139,11 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements
         g.drawLine(x+width-linebreak, y, x+width, y+height/2);
         g.drawLine(x+width-linebreak, y+height, x+width, y+height/2);
 
-
-
         g.drawString("sig", x+(width-w) / 2, y);
         g.drawString(value, x + (width - w) / 2 , y + (int)((textY*tdp.getZoom())));
-
-
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -166,6 +160,7 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements
         return value;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String oldValue = value;
 
@@ -185,12 +180,12 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements
 
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.AAD_SEND_SIGNAL_ACTION;
     }
 
-
-
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
diff --git a/src/main/java/ui/avatarad/AvatarADStartState.java b/src/main/java/ui/avatarad/AvatarADStartState.java
index f24098652cec127dcd02f5f17817c18d880018d5..4bbe93d0e61fbc5430960480516e552317f1404e 100755
--- a/src/main/java/ui/avatarad/AvatarADStartState.java
+++ b/src/main/java/ui/avatarad/AvatarADStartState.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import myutil.GraphicLib;
@@ -55,13 +52,13 @@ import java.awt.geom.Line2D;
  * @version 1.0 01/09/2011
  * @author Ludovic APVRILLE
  */
-public class AvatarADStartState extends AvatarADBasicComponent implements EmbeddedComment{
+public class AvatarADStartState extends AvatarADBasicComponent implements EmbeddedComment {
     private int lineLength = 5;
     
     public AvatarADStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
-	initScaling(15, 15);
+        initScaling(15, 15);
         oldScaleFactor = tdp.getZoom();
         
         nbConnectingPoint = 1;
@@ -79,11 +76,13 @@ public class AvatarADStartState extends AvatarADBasicComponent implements Embedd
         myImageIcon = IconManager.imgic222;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         g.fillOval(x, y, width, height);
         g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -96,12 +95,13 @@ public class AvatarADStartState extends AvatarADBasicComponent implements Embedd
         return null;
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.AAD_START_STATE;
     }
-    
-    public int getDefaultConnector() {
-      return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
-    }
+//    
+//    public int getDefaultConnector() {
+//      return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
+//    }
     
 }
diff --git a/src/main/java/ui/avatarad/AvatarADStopFlow.java b/src/main/java/ui/avatarad/AvatarADStopFlow.java
index a3bbdfb88d77142023f144e635a80517d215cf06..be3ca80a2346c96112430d54a94e4a4312b3a525 100755
--- a/src/main/java/ui/avatarad/AvatarADStopFlow.java
+++ b/src/main/java/ui/avatarad/AvatarADStopFlow.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import myutil.GraphicLib;
@@ -55,7 +52,7 @@ import java.awt.*;
  * @author Ludovic APVRILLE
  */
 public class AvatarADStopFlow extends AvatarADBasicComponent implements EmbeddedComment, AllowedBreakpoint {
-    private int internalCircleSize = 16;
+//    private int internalCircleSize = 16;
     private int lineLength = 5;
 
     public AvatarADStopFlow(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
@@ -79,6 +76,7 @@ public class AvatarADStopFlow extends AvatarADBasicComponent implements Embedded
         myImageIcon = IconManager.imgic210;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         ColorManager.setColor(g, state, 0);
         //g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize);
@@ -88,6 +86,7 @@ public class AvatarADStopFlow extends AvatarADBasicComponent implements Embedded
         g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -95,12 +94,12 @@ public class AvatarADStopFlow extends AvatarADBasicComponent implements Embedded
         return null;
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.AAD_STOP_FLOW;
     }
-
-    public int getDefaultConnector() {
-        return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
-    }
-
+//
+//    public int getDefaultConnector() {
+//        return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
+//    }
 }
diff --git a/src/main/java/ui/avatarad/AvatarADStopState.java b/src/main/java/ui/avatarad/AvatarADStopState.java
index 875892b8efc6209b852efa54df0bbf0342b7a59a..e3f1e919f418aef0ab767360d4ae4c034d8fe472 100755
--- a/src/main/java/ui/avatarad/AvatarADStopState.java
+++ b/src/main/java/ui/avatarad/AvatarADStopState.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarad;
 
 import myutil.GraphicLib;
@@ -79,6 +76,7 @@ public class AvatarADStopState extends AvatarADBasicComponent implements Embedde
         myImageIcon = IconManager.imgic210;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         ColorManager.setColor(g, state, 0);
         g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize);
@@ -86,7 +84,7 @@ public class AvatarADStopState extends AvatarADBasicComponent implements Embedde
         g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
     }
 
-
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -94,12 +92,12 @@ public class AvatarADStopState extends AvatarADBasicComponent implements Embedde
         return null;
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.AAD_STOP_STATE;
     }
-
-    public int getDefaultConnector() {
-        return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
-    }
-
+//
+//    public int getDefaultConnector() {
+//        return TGComponentManager.AAD_ASSOCIATION_CONNECTOR;
+//    }
 }
diff --git a/src/main/java/ui/avatarad/AvatarADToolBar.java b/src/main/java/ui/avatarad/AvatarADToolBar.java
index f491f119af557e68cd28ca8bf28f2b94e23632e9..b1ba6354ffc0924c3f5b0bee4f23f5e6a1ebe3c2 100644
--- a/src/main/java/ui/avatarad/AvatarADToolBar.java
+++ b/src/main/java/ui/avatarad/AvatarADToolBar.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.avatarad;
 
 import ui.MainGUI;
@@ -45,9 +44,6 @@ import ui.TToolBar;
 
 import javax.swing.*;
 
-//import java.awt.*;
-//import java.awt.event.*;
-
 /**
  * Class AvatarADToolBar
  * Implements the toolbar to be used in conjunction with the panel of
@@ -62,7 +58,6 @@ public class AvatarADToolBar extends TToolBar {
 
     public AvatarADToolBar(MainGUI _mgui) {
         super(_mgui);
-
     }
 
     protected void setActive(boolean b) {
@@ -162,14 +157,10 @@ public class AvatarADToolBar extends TToolBar {
         button = this.add(mgui.actions[TGUIAction.AAD_ALIGN_PARTITION]);
         button.addMouseListener(mgui.mouseHandler);
 
-
         /*this.addSeparator();
           this.addSeparator();
 
           button = this.add(mgui.actions[TGUIAction.ACT_TOGGLE_ATTR]);
           button.addMouseListener(mgui.mouseHandler);*/
-
-
     }
-
 } // Class
diff --git a/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java b/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java
index e1b2a7f95f8f55e5f137fe0342a66941900958e8..af0b233b441903894c56236056d24aebb30e2c97 100644
--- a/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java
+++ b/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java
@@ -227,7 +227,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone
 
     }
 
-    public void makeValue() {
+    private void makeValue() {
         values = Conversion.wrapText(value);
         properties.clear();
         for (String s : values) {
diff --git a/src/main/java/ui/avatarbd/AvatarBDPragma.java b/src/main/java/ui/avatarbd/AvatarBDPragma.java
index f3b9419132506fd08616b09c0b3bf13eda6e166e..1fbb30ab86e9b7ea47d9908c5a70732c0c5c18d5 100755
--- a/src/main/java/ui/avatarbd/AvatarBDPragma.java
+++ b/src/main/java/ui/avatarbd/AvatarBDPragma.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.avatarbd;
 
 import myutil.Conversion;
@@ -55,6 +54,9 @@ import java.io.InputStreamReader;
 import java.io.OutputStreamWriter;
 import java.io.PipedInputStream;
 import java.io.PipedOutputStream;
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics;
 import java.io.BufferedReader;
 import java.io.BufferedWriter;
 
@@ -67,11 +69,11 @@ import proverifspec.ProVerifResultTraceStep;
 import ui.interactivesimulation.JFrameSimulationSDPanel;
 
 import javax.swing.*;
-import java.awt.*;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.HashMap;
 import java.util.LinkedList;
+import java.util.List;
 
 /**
  * Class Pragma
@@ -84,9 +86,9 @@ import java.util.LinkedList;
 public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
 
     protected String[] values;
-    protected LinkedList<String> models;
-    protected LinkedList<String> properties;
-    public ArrayList<String> syntaxErrors;
+    protected List<String> models;
+    protected List<String> properties;
+    public List<String> syntaxErrors;
     protected int textX = 25;
     protected int textY = 5;
     protected int marginY = 20;
@@ -165,14 +167,15 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
         makeValue();
     }
 
-    public LinkedList<String> getProperties() {
+    public List<String> getProperties() {
         return properties;
     }
 
-    public LinkedList<String> getModels() {
+    public List<String> getModels() {
         return this.models;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         Font f = g.getFont();
         Font fold = f;
@@ -299,7 +302,6 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
         }
 */
         g.setColor(c);
-
     }
 
     public void makeValue() {
@@ -402,7 +404,6 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
 //	if (c1==Color.gray){
 //	    g.drawString("?", _x+4, _y+2);
 //	}
-
     }
 
     @Override
@@ -419,7 +420,7 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
 
         String s = jdn.getText();
         if ((s != null) && (s.length() > 0) && (!s.equals(oldValue))) {
-            String tmp = s;
+           // String tmp = s;
             setValue(s);
             makeValue();
             return true;
@@ -427,6 +428,7 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
         return false;
     }
 
+    @Override
     public TGComponent isOnMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -434,10 +436,12 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
         return null;
     }
 
+    @Override
     public String getToolTipText() {
         return "The lock shows status of weak and strong authenticity. Green: Proved True, Red: Proved False, Grey: Cannot be proved";
     }
 
+    @Override
     public void rescale(double scaleFactor) {
         //TraceManager.addDev("Rescaling BD Pragma");
         /*dlineHeight = (lineHeight + dlineHeight) / oldScaleFactor * scaleFactor;
@@ -450,10 +454,12 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
         super.rescale(scaleFactor);
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.PRAGMA;
     }
 
+    @Override
     protected String translateExtraParam() {
         if (values == null) {
             makeValue();
@@ -541,10 +547,9 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
         	    	} catch (IOException ignored) {
         			}
         		}
-        		break;
 
+       			break;
     		}
     	}
-		//
 	}
 }
diff --git a/src/main/java/ui/avatarbd/AvatarBDSafetyPragma.java b/src/main/java/ui/avatarbd/AvatarBDSafetyPragma.java
index 1e9e99b5387549f7d1e57ec4b6294b0fe956d8b3..bbf87cdbbb7a6628aeaf3b688d51e9baa038f7e6 100644
--- a/src/main/java/ui/avatarbd/AvatarBDSafetyPragma.java
+++ b/src/main/java/ui/avatarbd/AvatarBDSafetyPragma.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.avatarbd;
 
 import myutil.Conversion;
@@ -49,7 +48,10 @@ import ui.util.IconManager;
 import ui.window.JDialogSafetyPragma;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics;
 import java.util.*;
 
 /**
@@ -63,7 +65,7 @@ import java.util.*;
 public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent {
 
     protected String[] values;
-    protected LinkedList<String> properties;
+    protected List<String> properties;
     protected int textX = 25;
     protected int textY = 5;
     protected int marginY = 20;
@@ -72,7 +74,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent {
     protected int lockX = 1;
     protected int lockY = 5;
     protected Graphics myg;
-    public ArrayList<String> syntaxErrors;
+    public List<String> syntaxErrors;
     protected Color myColor;
 
     private Font myFont;//, myFontB;
@@ -127,10 +129,11 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent {
         return values;
     }
 
-    public LinkedList<String> getProperties() {
+    public List<String> getProperties() {
         return properties;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         Font f = g.getFont();
         Font fold = f;
@@ -221,8 +224,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent {
 
     }
 
-    public void makeValue() {
-
+    private void makeValue() {
         values = Conversion.wrapText(value);
         properties.clear();
         for (String s : values) {
@@ -258,7 +260,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent {
       }
       }*/
 
-
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String oldValue = value;
 
@@ -279,6 +281,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent {
         return false;
     }
 
+    @Override
     public TGComponent isOnMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -286,6 +289,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent {
         return null;
     }
 
+    @Override
     public void rescale(double scaleFactor) {
         /*dlineHeight = (lineHeight + dlineHeight) / oldScaleFactor * scaleFactor;
           lineHeight = (int)(dlineHeight);
@@ -297,10 +301,12 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent {
         super.rescale(scaleFactor);
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.SAFETY_PRAGMA;
     }
 
+    @Override
     protected String translateExtraParam() {
         if (values == null) {
             makeValue();
diff --git a/src/main/java/ui/avatardd/ADDArtifact.java b/src/main/java/ui/avatardd/ADDArtifact.java
index 2570aa5fcee02688695a0867918c0d4517cd2a69..168176f98ae540799e9edccb7271b88f60ae759b 100755
--- a/src/main/java/ui/avatardd/ADDArtifact.java
+++ b/src/main/java/ui/avatardd/ADDArtifact.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatardd;
 
 import myutil.GraphicLib;
@@ -95,9 +92,8 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe
         myImageIcon = IconManager.imgic702;
     }
 
-
+    @Override
     public void internalDrawing(Graphics g) {
-
         if (oldValue.compareTo(value) != 0) {
             setValue(value, g);
         }
@@ -136,6 +132,7 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe
         //
     }
 
+    @Override
     public void resizeWithFather() {
         if ((father != null) && ((father instanceof ADDCPUNode))) {
             //
@@ -145,9 +142,9 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe
         }
     }
 
-
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
-        String tmp;
+//        String tmp;
         boolean error = false;
 
         /*JDialogTMLTaskArtifact dialog = new JDialogTMLTaskArtifact(frame, "Setting artifact attributes", this);
@@ -199,6 +196,7 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe
         value = referenceTaskName + "::" + taskName;
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -206,10 +204,12 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe
         return null;
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.ADD_ARTIFACT;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<info value=\"" + value + "\" taskName=\"" + taskName + "\" referenceTaskName=\"");
@@ -263,7 +263,7 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeFullValue();
     }
@@ -291,8 +291,4 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe
     public String getAttributesToFile() {
         return "";
     }
-
-
-
-
 }
diff --git a/src/main/java/ui/avatardd/ADDBlockArtifact.java b/src/main/java/ui/avatardd/ADDBlockArtifact.java
index c5ca6a3cf1aca61d08ad2532be7f4e80fbd97031..bdca0ae1e8c6fa41e35b5d6ec5f3b63deb667c2a 100755
--- a/src/main/java/ui/avatardd/ADDBlockArtifact.java
+++ b/src/main/java/ui/avatardd/ADDBlockArtifact.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatardd;
 
 import myutil.GraphicLib;
@@ -96,9 +93,8 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa
         myImageIcon = IconManager.imgic702;
     }
 	
-    
+    @Override
     public void internalDrawing(Graphics g) {
-        
         if (oldValue.compareTo(value) != 0) {
             setValue(value, g);
         }
@@ -137,6 +133,7 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa
         //
     }
     
+    @Override
     public void resizeWithFather() {
         if ((father != null) && ((father instanceof ADDCPUNode))) {
             //
@@ -146,8 +143,8 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa
         }
     }
     
-    
-     public boolean editOndoubleClick(JFrame frame) {
+    @Override
+    public boolean editOndoubleClick(JFrame frame) {
 		String tmp;
 		boolean error = false;
 		
@@ -191,15 +188,14 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa
 		
 		makeFullValue();
 	
-			
 		return !error;
-      
     }
     
     private void makeFullValue() {
         value = referenceTaskName + "::" + taskName;
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -207,10 +203,12 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa
         return null;
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.ADD_ARTIFACT;
     }
     
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<info value=\"" + value + "\" taskName=\"" + taskName + "\" referenceTaskName=\"");
@@ -224,7 +222,6 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{
         //
         try {
-            
             NodeList nli;
             Node n1, n2;
             Element elt;
@@ -263,7 +260,7 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa
             }
             
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeFullValue();
     }
@@ -284,5 +281,4 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa
     public String getTaskName() {
         return taskName;
     }
-	
 }
diff --git a/src/main/java/ui/avatardd/ADDBridgeNode.java b/src/main/java/ui/avatardd/ADDBridgeNode.java
index 9961306d2b417f24695064140932154327ec384c..197ddca0fd89d31d204bc0de7a0e641d898806b6 100755
--- a/src/main/java/ui/avatardd/ADDBridgeNode.java
+++ b/src/main/java/ui/avatardd/ADDBridgeNode.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatardd;
 
 import org.w3c.dom.Element;
@@ -65,7 +62,6 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute
     private int derivationy = 3;
     private String stereotype = "BRIDGE";
 	
-    
     public ADDBridgeNode(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
         
@@ -110,6 +106,7 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute
         myImageIcon = IconManager.imgic700;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		Color c = g.getColor();
 		g.draw3DRect(x, y, width, height, true);
@@ -141,8 +138,8 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute
 		g.drawImage(IconManager.img9, x + width - 20, y + 4, null);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
-        
         Polygon pol = new Polygon();
         pol.addPoint(x, y);
         pol.addPoint(x + derivationx, y - derivationy);
@@ -166,6 +163,7 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute
         return name;
     }
     
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
 	//	boolean error = false;
 		//String errors = "";
@@ -234,11 +232,12 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute
         return true;
     }
     
-    
+    @Override
     public int getType() {
         return TGComponentManager.ADD_BRIDGENODE;
     }
     
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<info stereotype=\"" + stereotype + "\" nodeName=\"" + name);
@@ -295,17 +294,14 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute
             }
             
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
     }
-    
-	  
-	  public String getAttributes() {
-		  String attr = "";
-		  //attr += "Buffer size (in byte) = " + bufferByteDataSize + "\n";
-		  //attr += "Clock ratio = " + clockRatio + "\n";
-		  return attr;
-	  }
-	  
-    
+
+    public String getAttributes() {
+    	String attr = "";
+    	//attr += "Buffer size (in byte) = " + bufferByteDataSize + "\n";
+    	//attr += "Clock ratio = " + clockRatio + "\n";
+    	return attr;
+    }
 }
diff --git a/src/main/java/ui/avatardd/ADDBusNode.java b/src/main/java/ui/avatardd/ADDBusNode.java
index 131b8d89a0833d7e893891a811d3abd7217b6d75..d01b97c8c5104fe52c161d2c7c80a22b2a2713c9 100755
--- a/src/main/java/ui/avatardd/ADDBusNode.java
+++ b/src/main/java/ui/avatardd/ADDBusNode.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatardd;
 
 import myutil.GraphicLib;
@@ -72,8 +69,6 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
     private int fifoDepth = 0;
     private int minLatency = 0;
 
-
-
     public ADDBusNode(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
@@ -118,6 +113,7 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
         myImageIcon = IconManager.imgic700;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         Color c = g.getColor();
         g.draw3DRect(x, y, width, height, true);
@@ -153,8 +149,8 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
         g.drawImage(IconManager.img9, x + width - 20, y + 4, null);
     }
 
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
-
         Polygon pol = new Polygon();
         pol.addPoint(x, y);
         pol.addPoint(x + derivationx, y - derivationy);
@@ -178,6 +174,7 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
         return name;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         boolean error = false;
         String errors = "";
@@ -204,8 +201,6 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
             }
         }
 
-
-
         if (dialog.getIndex().length() != 0) {
             try {
                 tmp = index;
@@ -236,7 +231,6 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
             }
         }
 
-
         if (dialog.getNbOfAttachedTargets().length() != 0) {
             try {
                 tmp = nbOfAttachedTargets;
@@ -294,11 +288,12 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
         return true;
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.ADD_BUSNODE;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<info stereotype=\"" + stereotype + "\" nodeName=\"" + name);
@@ -315,9 +310,7 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
 
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{
-        //
         try {
-
             NodeList nli;
             Node n1, n2;
             Element elt;
@@ -363,13 +356,10 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
     }
 
-
-
-
     public String getAttributes() {
         String attr = "";
         attr += "index = " + index + "\n";
@@ -396,8 +386,8 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes {
     public int getFifoDepth() { return fifoDepth;}
     public int getMinLatency() { return minLatency;}
 
+    @Override
     public String toString(){
         return "Bus";
     }
-
 }
diff --git a/src/main/java/ui/avatardd/ADDCPUNode.java b/src/main/java/ui/avatardd/ADDCPUNode.java
index 4993a955f80b3c05b51cbebe047a9b38c822f19e..7294aa44f7ab473ce3b089198bee6f430a58d19a 100755
--- a/src/main/java/ui/avatardd/ADDCPUNode.java
+++ b/src/main/java/ui/avatardd/ADDCPUNode.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatardd;
 
 import myutil.GraphicLib;
@@ -79,7 +76,6 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
     protected int cluster_index = 0;
     protected int monitored = 0;
 
-
     public ADDCPUNode(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
@@ -124,11 +120,11 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
         myImageIcon = IconManager.imgic700;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         Color c = g.getColor();
         g.draw3DRect(x, y, width, height, true);
 
-
         // Top lines
         g.drawLine(x, y, x + derivationx, y - derivationy);
         g.drawLine(x + width, y, x + width + derivationx, y - derivationy);
@@ -158,6 +154,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
         g.drawImage(IconManager.img9, x + width - 20, y + 4, null);
     }
 
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
 
         Polygon pol = new Polygon();
@@ -183,6 +180,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
         return name;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         boolean error = false;
         String errors = "";
@@ -209,7 +207,6 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
             }
         }
 
-
         if (dialog.getNbOFIRQ().length() != 0) {
             try {
                 tmp = nbOfIrq;
@@ -315,8 +312,6 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
             }
         }
 
-
-
         /*if (dialog.getClockRatio().length() != 0) {
           try {
           tmp = clockRatio;
@@ -332,7 +327,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
           }
           }*/
 
-	if (dialog.getIndex().length() != 0) {
+        if (dialog.getIndex().length() != 0) {
             try {
                 tmp = index;
                 index = Integer.decode(dialog.getIndex()).intValue();
@@ -391,17 +386,19 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
         return true;
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.ADD_CPUNODE;
     }
 
+    @Override
     public boolean acceptSwallowedTGComponent(TGComponent tgc) {
         //TraceManager.addDev("Accept swallowed?");
         return tgc instanceof ADDBlockArtifact;
 
     }
 
+    @Override
     public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) {
         //TraceManager.addDev("Add swallowed?");
         //Set its coordinates
@@ -418,6 +415,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
 
     }
 
+    @Override
     public void removeSwallowedTGComponent(TGComponent tgc) {
         removeInternalComponent(tgc);
     }
@@ -435,6 +433,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
         return v;
     }
 
+    @Override
     public void hasBeenResized() {
         for(int i=0; i<nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof ADDBlockArtifact) {
@@ -444,6 +443,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
 
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<info stereotype=\"" + stereotype + "\" nodeName=\"" + name);
@@ -510,15 +510,15 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.ADD_CONNECTOR;
     }
 
-
     public String getAttributes() {
         String attr = "";
         attr += "Nb of irq = " + nbOfIrq + "\n";
@@ -573,7 +573,6 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri
     }
 
     public void setMonitored(int _monitored){
-	monitored = _monitored;
+    	monitored = _monitored;
     }
-
 }
diff --git a/src/main/java/ui/avatardd/ADDChannelArtifact.java b/src/main/java/ui/avatardd/ADDChannelArtifact.java
index 4048be6ee3071dfc01d9ed6824aa4d2fda6095a9..7d5944d04d35fd29c1c731435c290dad1ea62a7c 100755
--- a/src/main/java/ui/avatardd/ADDChannelArtifact.java
+++ b/src/main/java/ui/avatardd/ADDChannelArtifact.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatardd;
 
 import myutil.GraphicLib;
@@ -97,9 +94,8 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S
         myImageIcon = IconManager.imgic702;
     }
 
-
+    @Override
     public void internalDrawing(Graphics g) {
-
         if (oldValue.compareTo(value) != 0) {
             setValue(value, g);
         }
@@ -122,7 +118,6 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S
         g.drawImage(IconManager.img9, x+width-space-fileX + 3, y + space + 7, null);
 
         g.drawString(value, x + textX , y + textY);
-
     }
 
     public void setValue(String val, Graphics g) {
@@ -138,6 +133,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S
         //
     }
 
+    @Override
     public void resizeWithFather() {
         if ((father != null) && ((father instanceof ADDRAMNode))) {
             //
@@ -147,7 +143,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S
         }
     }
 
-
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String tmp;
         boolean error = false;
@@ -204,6 +200,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S
        value = referenceDiagram + "::" + channelName;
        }*/
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -215,6 +212,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S
         return TGComponentManager.ADD_CHANNELARTIFACT;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<info value=\"" + value + "\" channelName=\"" + channelName + "\" fullChannelName=\"" + fullChannelName + "\" referenceDiagram=\"");
@@ -274,7 +272,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeFullValue();
     }
@@ -301,7 +299,6 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S
     }
 
     public String getStatusInformation() {
-	return "Name of the channel: " + fullChannelName;
+    	return "Name of the channel: " + fullChannelName;
     }
-
 }
diff --git a/src/main/java/ui/avatarmad/AvatarMADCompositionConnector.java b/src/main/java/ui/avatarmad/AvatarMADCompositionConnector.java
index f4f325f904ea778edfefd46cfd3e987291874186..8708601a6cc7f820504486cafd4eacddab941feb 100644
--- a/src/main/java/ui/avatarmad/AvatarMADCompositionConnector.java
+++ b/src/main/java/ui/avatarmad/AvatarMADCompositionConnector.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarmad;
 
 import ui.*;
@@ -47,8 +44,6 @@ import ui.util.IconManager;
 import java.awt.*;
 import java.util.Vector;
 
-//import java.awt.geom.*;
-
 /**
  * Class AvatarMADCompositionConnector
  * Connector to be used in Avatar MAD. Connects two assumptions
@@ -57,7 +52,7 @@ import java.util.Vector;
  * @author Ludovic APVRILLE
  */
 public  class AvatarMADCompositionConnector extends TGConnectorWithCommentConnectionPoints {
-    int w, h;
+  //  int w, h;
 	private int radius = 5;
     
     public AvatarMADCompositionConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) {
@@ -67,7 +62,7 @@ public  class AvatarMADCompositionConnector extends TGConnectorWithCommentConnec
 		myImageIcon = IconManager.imgic1012;
     }
     
-    
+    @Override
     protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
 		 
         //g.drawLine(x1, y1, x2, y2);
diff --git a/src/main/java/ui/avatarmad/AvatarMADConnector.java b/src/main/java/ui/avatarmad/AvatarMADConnector.java
new file mode 100644
index 0000000000000000000000000000000000000000..421f6b4f825e8c5f40d717fdac177fd3b2b10a5b
--- /dev/null
+++ b/src/main/java/ui/avatarmad/AvatarMADConnector.java
@@ -0,0 +1,84 @@
+package ui.avatarmad;
+
+import java.awt.Font;
+import java.awt.Graphics;
+import java.awt.Point;
+import java.util.Vector;
+
+import myutil.GraphicLib;
+import ui.ForwardComponentsEnabledVisitor;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGConnectingPoint;
+import ui.TGConnectorWithCommentConnectionPoints;
+import ui.ad.CanBeDisabledADElementVisitor;
+
+public abstract class AvatarMADConnector extends TGConnectorWithCommentConnectionPoints {
+
+	int w, h;
+
+	public AvatarMADConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos,
+			TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2,
+			Vector<Point> _listPoint) {
+		super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint);
+	}
+
+    @Override
+    protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
+
+        //g.drawLine(x1, y1, x2, y2);
+        GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false);
+
+        // Indicate semantics
+
+        Font f = g.getFont();
+        Font old = f;
+        if (f.getSize() != tdp.getFontSize()) {
+            f = f.deriveFont((float)tdp.getFontSize());
+            g.setFont(f);
+        }
+
+        w  = g.getFontMetrics().stringWidth(value);
+        h = g.getFontMetrics().getHeight();
+        g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2);
+        g.setFont(old);
+    }
+
+    @Override
+    public TGComponent extraIsOnOnlyMe(int x1, int y1) {
+        if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) {
+            return this;
+        }
+        return null;
+    }
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+//    	if ( p2 != null && p2.getFather() instanceof AvatarSMDStopState ) {
+//    		return false;
+//    	}
+    	
+    	final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor();
+    	acceptBackward( visitor );
+    	
+    	return visitor.isCanBeDisabled();
+    }
+    
+    /** Issue #69
+     * @return
+     */
+    public boolean isEnabled( boolean checkBranch ) {
+    	if ( checkBranch && p2 != null ) {
+    		final ForwardComponentsEnabledVisitor visitor = new ForwardComponentsEnabledVisitor();
+    		p2.acceptForward( visitor );
+    		
+    		return visitor.isEnabled();
+    	}
+    	
+    	return super.isEnabled();
+    }
+}
diff --git a/src/main/java/ui/avatarmad/AvatarMADImpactConnector.java b/src/main/java/ui/avatarmad/AvatarMADImpactConnector.java
index ae483cb1034f4011bb1b875c71d78476c956ecaf..9be09e1278fab21aa88b548e527378022b773ad0 100644
--- a/src/main/java/ui/avatarmad/AvatarMADImpactConnector.java
+++ b/src/main/java/ui/avatarmad/AvatarMADImpactConnector.java
@@ -36,19 +36,16 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarmad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
+import java.awt.Point;
 import java.util.Vector;
 
-//import java.awt.geom.*;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.util.IconManager;
 
 /**
  * Class AvatarMADImpactConnector
@@ -57,8 +54,8 @@ import java.util.Vector;
  * @version 1.0 27/08/2013
  * @author Ludovic APVRILLE
  */
-public  class AvatarMADImpactConnector extends TGConnectorWithCommentConnectionPoints {
-    int w, h;
+public  class AvatarMADImpactConnector extends AvatarMADConnector /* Issue #69 TGConnectorWithCommentConnectionPoints*/ {
+   // int w, h;
 
     public AvatarMADImpactConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) {
         super(_x, _y,  _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint);
@@ -67,36 +64,35 @@ public  class AvatarMADImpactConnector extends TGConnectorWithCommentConnectionP
         myImageIcon = IconManager.imgic1008;
     }
 
-
-    protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
-
-        //g.drawLine(x1, y1, x2, y2);
-        GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false);
-
-        // Indicate semantics
-
-        Font f = g.getFont();
-        Font old = f;
-        if (f.getSize() != tdp.getFontSize()) {
-            f = f.deriveFont((float)tdp.getFontSize());
-            g.setFont(f);
-        }
-
-        w  = g.getFontMetrics().stringWidth(value);
-        h = g.getFontMetrics().getHeight();
-        g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2);
-        g.setFont(old);
-    }
-
-    public TGComponent extraIsOnOnlyMe(int x1, int y1) {
-        if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) {
-            return this;
-        }
-        return null;
-    }
-
+//    protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
+//
+//        //g.drawLine(x1, y1, x2, y2);
+//        GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false);
+//
+//        // Indicate semantics
+//
+//        Font f = g.getFont();
+//        Font old = f;
+//        if (f.getSize() != tdp.getFontSize()) {
+//            f = f.deriveFont((float)tdp.getFontSize());
+//            g.setFont(f);
+//        }
+//
+//        w  = g.getFontMetrics().stringWidth(value);
+//        h = g.getFontMetrics().getHeight();
+//        g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2);
+//        g.setFont(old);
+//    }
+//
+//    public TGComponent extraIsOnOnlyMe(int x1, int y1) {
+//        if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) {
+//            return this;
+//        }
+//        return null;
+//    }
+
+    @Override
     public int getType() {
         return TGComponentManager.AVATARMAD_IMPACT_CONNECTOR;
     }
-
 }
diff --git a/src/main/java/ui/avatarmad/AvatarMADMeetConnector.java b/src/main/java/ui/avatarmad/AvatarMADMeetConnector.java
index 097ea94ff1a8271caeb929987343586731180076..f1b8e739b6cf6ff1319730b55702d77e11d37d24 100644
--- a/src/main/java/ui/avatarmad/AvatarMADMeetConnector.java
+++ b/src/main/java/ui/avatarmad/AvatarMADMeetConnector.java
@@ -36,19 +36,16 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarmad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
+import java.awt.Point;
 import java.util.Vector;
 
-//import java.awt.geom.*;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.util.IconManager;
 
 /**
  * Class AvatarMADMeetConnector
@@ -57,8 +54,8 @@ import java.util.Vector;
  * @version 1.0 05/02/2014
  * @author Ludovic APVRILLE
  */
-public  class AvatarMADMeetConnector extends TGConnectorWithCommentConnectionPoints {
-    int w, h;
+public  class AvatarMADMeetConnector extends AvatarMADConnector /* Issue #69 TGConnectorWithCommentConnectionPoints*/ {
+   // int w, h;
 
     public AvatarMADMeetConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) {
         super(_x, _y,  _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint);
@@ -67,36 +64,34 @@ public  class AvatarMADMeetConnector extends TGConnectorWithCommentConnectionPoi
         myImageIcon = IconManager.imgic1008;
     }
 
-
-    protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
-
-        //g.drawLine(x1, y1, x2, y2);
-        GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false);
-
-        // Indicate semantics
-
-        Font f = g.getFont();
-        Font old = f;
-        if (f.getSize() != tdp.getFontSize()) {
-            f = f.deriveFont((float)tdp.getFontSize());
-            g.setFont(f);
-        }
-
-        w  = g.getFontMetrics().stringWidth(value);
-        h = g.getFontMetrics().getHeight();
-        g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2);
-        g.setFont(old);
-    }
-
-    public TGComponent extraIsOnOnlyMe(int x1, int y1) {
-        if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) {
-            return this;
-        }
-        return null;
-    }
+//    protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
+//
+//        //g.drawLine(x1, y1, x2, y2);
+//        GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false);
+//
+//        // Indicate semantics
+//
+//        Font f = g.getFont();
+//        Font old = f;
+//        if (f.getSize() != tdp.getFontSize()) {
+//            f = f.deriveFont((float)tdp.getFontSize());
+//            g.setFont(f);
+//        }
+//
+//        w  = g.getFontMetrics().stringWidth(value);
+//        h = g.getFontMetrics().getHeight();
+//        g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2);
+//        g.setFont(old);
+//    }
+//
+//    public TGComponent extraIsOnOnlyMe(int x1, int y1) {
+//        if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) {
+//            return this;
+//        }
+//        return null;
+//    }
 
     public int getType() {
         return TGComponentManager.AVATARMAD_MEET_CONNECTOR;
     }
-
 }
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDBasicCanBeDisabledComponent.java b/src/main/java/ui/avatarsmd/AvatarSMDBasicCanBeDisabledComponent.java
new file mode 100644
index 0000000000000000000000000000000000000000..2c6e38b07e0aa61bd520209b03a93835e78c6b8b
--- /dev/null
+++ b/src/main/java/ui/avatarsmd/AvatarSMDBasicCanBeDisabledComponent.java
@@ -0,0 +1,25 @@
+package ui.avatarsmd;
+
+import ui.TDiagramPanel;
+import ui.TGComponent;
+
+public abstract class AvatarSMDBasicCanBeDisabledComponent extends AvatarSMDBasicComponent {
+
+	public AvatarSMDBasicCanBeDisabledComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY,
+			boolean _pos, TGComponent _father, TDiagramPanel _tdp) {
+		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
+	}
+
+	/* Issue #69
+	 * (non-Javadoc)
+	 * @see ui.AbstractCDElement#canBeDisabled()
+	 */
+	@Override
+    public boolean canBeDisabled() {
+		if ( getFather() instanceof AvatarSMDState ) {
+			return getFather().isEnabled();
+		}
+		
+    	return true;
+    }
+}
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDBasicComponent.java b/src/main/java/ui/avatarsmd/AvatarSMDBasicComponent.java
index fa760549d9ed74ea867c974a66f227cd73fd69f8..3a80d4a6df0e8a5cd76d3ed91b112454339d5e2b 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDBasicComponent.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDBasicComponent.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarsmd;
 
 import ui.*;
@@ -51,16 +48,18 @@ import ui.*;
  * @author Ludovic APVRILLE
  */
 public abstract class AvatarSMDBasicComponent extends TGCWithoutInternalComponent implements SwallowedTGComponent {
-    private int lineLength = 5;
+    //private int lineLength = 5;
     
     public AvatarSMDBasicComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.AVATARSMD_CONNECTOR;
+    	return TGComponentManager.AVATARSMD_CONNECTOR;
     }
 	
+    @Override
 	public void resizeWithFather() {
         if ((father != null) && (father instanceof AvatarSMDState)) {
 			// Too large to fit in the father? -> resize it!
@@ -70,5 +69,8 @@ public abstract class AvatarSMDBasicComponent extends TGCWithoutInternalComponen
             setMoveCd(x, y);
         }
     }
-    
+
+    protected boolean isContainedInEnabledState() {
+    	return getFather() instanceof AvatarSMDState && getFather().isEnabled();
+    }
 }
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDChoice.java b/src/main/java/ui/avatarsmd/AvatarSMDChoice.java
index 8e7c4bf1d20027523ab21ee1a61216fe76e310c1..df16dedae65755a98a5fa4e63acacd5e3561a3b0 100755
--- a/src/main/java/ui/avatarsmd/AvatarSMDChoice.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDChoice.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarsmd;
 
 import myutil.GraphicLib;
@@ -58,21 +55,21 @@ import java.awt.geom.Line2D;
 public class AvatarSMDChoice extends AvatarSMDBasicComponent implements EmbeddedComment, BasicErrorHighlight, PartOfInvariant {
     private int lineLength = 10;
     private int lineOutLength = 10;
-    private int textX1, textY1, textX2, textY2, textX3, textY3;
+//    private int textX1, textY1, textX2, textY2, textX3, textY3;
 	
-	 protected int stateOfError = 0; // Not yet checked
+	protected int stateOfError = 0; // Not yet checked
 	
     public AvatarSMDChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
         
         width = 30;
         height = 30;
-        textX1 = -lineOutLength;
-        textY1 = height/2 - 5;
-        textX2 = width + 5;
-        textY2 = height/2 - 5;
-        textX3 = width /2 + 5;
-        textY3 = height + 15;
+//        textX1 = -lineOutLength;
+//        textY1 = height/2 - 5;
+//        textX2 = width + 5;
+//        textY2 = height/2 - 5;
+//        textX3 = width /2 + 5;
+//        textY3 = height + 15;
         
         nbConnectingPoint = 7;
         connectingPoint = new TGConnectingPoint[nbConnectingPoint];
@@ -98,6 +95,7 @@ public class AvatarSMDChoice extends AvatarSMDBasicComponent implements Embedded
         myImageIcon = IconManager.imgic208;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		if (stateOfError > 0)  {
 			Color c = g.getColor();
@@ -126,6 +124,7 @@ public class AvatarSMDChoice extends AvatarSMDBasicComponent implements Embedded
         g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength);
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -150,18 +149,18 @@ public class AvatarSMDChoice extends AvatarSMDBasicComponent implements Embedded
         return null;
     }
     
-    
+    @Override
     public int getType() {
         return TGComponentManager.AVATARSMD_CHOICE;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.AVATARSMD_CONNECTOR;
+    	return TGComponentManager.AVATARSMD_CONNECTOR;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
-	
-    
 }
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDConnector.java b/src/main/java/ui/avatarsmd/AvatarSMDConnector.java
index 127a1e7912df018c2295369764a8ba89dbaa9633..220f2703531b9c4ca34b3c40dded44e3129e4de4 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDConnector.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDConnector.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.avatarsmd;
 
 import myutil.GraphicLib;
@@ -124,6 +123,7 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i
         tgc.setTimes(minDelay, maxDelay, minCompute, maxCompute);
     }
 
+    @Override
     protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2) {
         if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) {
             g.drawLine(x1, y1, x2, y2);
@@ -132,6 +132,7 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i
         }
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         AvatarSMDTransitionInfo info = getAvatarSMDTransitionInfo();
         if (info == null) {
@@ -140,6 +141,7 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i
         return info.editOndoubleClick(frame);
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.AVATARSMD_CONNECTOR;
     }
@@ -157,66 +159,191 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i
         return getAvatarSMDTransitionInfo().getGuard();
     }
 
-    public String getTotalMinDelay() {
-        String s1 = getAvatarSMDTransitionInfo().getAfterMinDelay();
-        String s2 = getAvatarSMDTransitionInfo().getComputeMinDelay();
-        return addedDelays(s1, s2);
-    }
-
-    public String getTotalMaxDelay() {
-        String s1 = getAvatarSMDTransitionInfo().getAfterMaxDelay();
-        String s2 = getAvatarSMDTransitionInfo().getComputeMaxDelay();
-        return addedDelays(s1, s2);
-    }
-
-    public String addedDelays(String s1, String s2) {
-        if (s1.trim().length() == 0) {
-            return s2.trim();
-        } else {
-            if (s2.trim().length() == 0) {
-                return s1;
-            } else {
-                return "(" + s1 + ") + (" + s2 + ")";
-            }
-        }
+    public String getEffectiveGuard() {
+        return getAvatarSMDTransitionInfo().getEffectiveGuard();
     }
+//
+//    public String getTotalMinDelay() {
+//        String s1 = getAvatarSMDTransitionInfo().getAfterMinDelay();
+//        String s2 = getAvatarSMDTransitionInfo().getComputeMinDelay();
+//        return addedDelays(s1, s2);
+//    }
+//
+//    public String getTotalMaxDelay() {
+//        String s1 = getAvatarSMDTransitionInfo().getAfterMaxDelay();
+//        String s2 = getAvatarSMDTransitionInfo().getComputeMaxDelay();
+//        return addedDelays(s1, s2);
+//    }
+//
+//    public String addedDelays(String s1, String s2) {
+//        if (s1.trim().length() == 0) {
+//            return s2.trim();
+//        } else {
+//            if (s2.trim().length() == 0) {
+//                return s1;
+//            } else {
+//                return "(" + s1 + ") + (" + s2 + ")";
+//            }
+//        }
+//    }
 
     public Vector<String> getActions() {
         return getAvatarSMDTransitionInfo().getActions();
     }
+  
+    public Vector<String> getEffectiveActions() {
+        return getAvatarSMDTransitionInfo().getEffectiveActions();
+    }
 
     public String getAfterMinDelay() {
         return getAvatarSMDTransitionInfo().getAfterMinDelay();
     }
+    
+    public String getEffectiveAfterMinDelay() {
+        return getAvatarSMDTransitionInfo().getEffectiveAfterMinDelay();
+    }
 
     public String getAfterMaxDelay() {
         return getAvatarSMDTransitionInfo().getAfterMaxDelay();
     }
+    public String getEffectiveAfterMaxDelay() {
+        return getAvatarSMDTransitionInfo().getEffectiveAfterMaxDelay();
+    }
 
     public String getComputeMinDelay() {
         return getAvatarSMDTransitionInfo().getComputeMinDelay();
     }
+    
+    public String getEffectiveComputeMinDelay() {
+        return getAvatarSMDTransitionInfo().getEffectiveComputeMinDelay();
+    }
 
     public String getComputeMaxDelay() {
         return getAvatarSMDTransitionInfo().getComputeMaxDelay();
     }
 
-    public String getProbability() {
-        return getAvatarSMDTransitionInfo().getProbability();
+    public String getEffectiveComputeMaxDelay() {
+        return getAvatarSMDTransitionInfo().getEffectiveComputeMaxDelay();
     }
 
-
-
-
-    public String getFilesToInclude() {
-        return getAvatarSMDTransitionInfo().getFilesToInclude();
+    public String getProbability() {
+        return getAvatarSMDTransitionInfo().getProbability();
     }
 
-    public String getCodeToInclude() {
-        return getAvatarSMDTransitionInfo().getCodeToInclude();
+    public String getEffectiveProbability() {
+        return getAvatarSMDTransitionInfo().getEffectiveProbability();
     }
+//
+//    public String getFilesToInclude() {
+//        return getAvatarSMDTransitionInfo().getFilesToInclude();
+//    }
+//
+//    public String getCodeToInclude() {
+//        return getAvatarSMDTransitionInfo().getCodeToInclude();
+//    }
 
     public String getAttributes() {
         return getAvatarSMDTransitionInfo().getAttributes();
     }
+	
+    /**
+     * Issue #69
+     * @param _enabled
+     */
+    @Override
+    public void setEnabled( final boolean _enabled ) {
+    	if ( p2 != null ) {
+    		p2.acceptForward( new EnablingAvatarSMDConnectorVisitor( _enabled ) );
+    	}
+    }
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+		if ( p2 != null ) {
+			if ( p2.getFather() instanceof AvatarSMDStopState ) {
+				return false;
+			}
+		}
+
+		return canBeDisabledContainer();
+    }
+    
+    public boolean canBeDisabledContainer() {
+		if ( p2 != null ) {
+			if ( p2.getFather() instanceof TGComponent && ( (TGComponent) p2.getFather() ).getFather() instanceof AvatarSMDState ) {
+				if ( !( (TGComponent) p2.getFather() ).getFather().isEnabled() ) {
+					return false;
+				}
+			}
+		}
+		
+		if ( p1 != null ) {
+			if ( p1.getFather() instanceof TGComponent && ( (TGComponent) p1.getFather() ).getFather() instanceof AvatarSMDState ) {
+				if ( !( (TGComponent) p1.getFather() ).getFather().isEnabled() ) {
+					return false;
+				}
+			}
+		}
+		
+		return true;
+    }
+    
+    public boolean isContainedInEnabledState() {
+    	final AvatarSMDState sourceContainingState = getContainingState( p1 );
+    	
+    	if ( sourceContainingState != null && sourceContainingState.isEnabled() ) {
+    		return true;
+    	}
+    	
+    	final AvatarSMDState targetContainingState = getContainingState( p2 );
+    	
+    	return targetContainingState != null && targetContainingState.isEnabled();
+    }
+
+    public AvatarSMDState getContainingState() {
+    	final AvatarSMDState sourceContainingState = getContainingState( p1 );
+    	
+    	final AvatarSMDState targetContainingState = getContainingState( p2 );
+    	
+    	if ( sourceContainingState == targetContainingState ) {
+    		return sourceContainingState;
+    	}
+    	
+    	return null;
+    }
+    
+    private AvatarSMDState getContainingState( final TGConnectingPoint point ) {
+    	if ( p1 == null ) {
+    		return null;
+    	}
+
+    	if ( point.getFather() instanceof TGComponent ) {
+    		final TGComponent sourceComponent = (TGComponent) point.getFather();
+    		
+    		if ( sourceComponent.getFather() instanceof AvatarSMDState ) {
+    			return (AvatarSMDState) sourceComponent.getFather();
+    		}
+    	}
+    	
+    	return null;
+    }
+    
+    
+    /** Issue #69
+     * @return
+     */
+    public boolean isEnabled( boolean checkBranch ) {
+    	if ( checkBranch && p2 != null ) {
+    		final ForwardComponentsEnabledVisitor visitor = new ForwardComponentsEnabledVisitor();
+    		p2.acceptForward( visitor );
+    		
+    		return visitor.isEnabled();
+    	}
+    	
+    	return super.isEnabled();
+    }
 }
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java
index c4e16b68cd489248aa8f6c8b655aa8559586e5c8..da260e9cb69575c3359a7b772615b57eb6419349 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java
@@ -40,6 +40,7 @@ package ui.avatarsmd;
 
 import java.awt.Color;
 import java.awt.Graphics;
+import java.awt.Polygon;
 import java.awt.geom.Line2D;
 import java.util.List;
 
@@ -67,17 +68,22 @@ import ui.window.JDialogAvatarTimer;
    * @version 1.0 15/07/2010
    * @author Ludovic APVRILLE
  */
-public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements BasicErrorHighlight, PartOfInvariant {
-    protected int lineLength = 5;
-    protected int textX =  5;
-    protected int textY =  15;
-    protected int arc = 5;
-    protected int linebreak = 10;
+public class AvatarSMDExpireTimer extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements BasicErrorHighlight, PartOfInvariant {
+    
+	protected int lineLength = 5;
+    
+	protected int textX =  5;
+    
+	protected int textY =  15;
+    
+	protected int arc = 5;
+    
+	protected int linebreak = 10;
 
     protected int hourglassWidth = 10;
+    
     protected int hourglassSpace = 2;
 
-
     protected int stateOfError = 0; // Not yet checked
 
     public AvatarSMDExpireTimer(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
@@ -153,13 +159,27 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas
         g.drawLine(x1, y1+height1, x1+linebreak, y1+height1/2);
         g.setColor(c);
 
-        g.drawLine(x, y, x+width, y);
-        g.drawLine(x+width, y, x+width, y+height);
-        g.drawLine(x, y+height, x+width, y+height);
-        g.drawLine(x, y, x+linebreak, y+height/2);
-        g.drawLine(x, y+height, x+linebreak, y+height/2);
-
-        // hourglass
+		final Polygon shape = new Polygon();
+		shape.addPoint( x, y );
+		shape.addPoint( x + width, y );
+		shape.addPoint( x + width, y + height );
+		shape.addPoint( x, y + height );
+		shape.addPoint( x + linebreak, y + height / 2 );
+		g.drawPolygon( shape );
+//        g.drawLine(x, y, x+width, y);
+//        g.drawLine(x+width, y, x+width, y+height);
+//        g.drawLine(x, y+height, x+width, y+height);
+//        g.drawLine(x, y, x+linebreak, y+height/2);
+//        g.drawLine(x, y+height, x+linebreak, y+height/2);
+
+        // Issue #69
+    	if ( !isEnabled() && isContainedInEnabledState() ) {
+	    	g.setColor( ColorManager.DISABLED_FILLING );
+	    	g.fillPolygon( shape );
+	    	g.setColor( c );
+    	}
+
+    	// hourglass
         g.setColor(ColorManager.AVATAR_SET_TIMER);
         g.drawLine(x+width+hourglassSpace+1, y+1, x+width+hourglassSpace + hourglassWidth+1, y+1);
         g.drawLine(x+width+hourglassSpace+1, y+height+1, x+width+hourglassSpace + hourglassWidth+1, y+height+1);
@@ -173,8 +193,6 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas
 
         //g.drawString("sig()", x+(width-w) / 2, y);
         g.drawString(value, x + (width - w) / 2  + textX, y + textY);
-
-
     }
 
     @Override
@@ -225,20 +243,19 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas
         value = "expire(" + val0 + ")";
 
         return true;
-
     }
 
-
-
-
+    @Override
     public int getType() {
         return TGComponentManager.AVATARSMD_EXPIRE_TIMER;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.AVATARSMD_CONNECTOR;
     }
 
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDLibraryFunctionCall.java b/src/main/java/ui/avatarsmd/AvatarSMDLibraryFunctionCall.java
index 97ee9c8ee5a6e585eb8239de40ec8fd8d91cae89..289727f7299a19725103e6378669b3cd4297d937 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDLibraryFunctionCall.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDLibraryFunctionCall.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarsmd;
 
 import myutil.GraphicLib;
@@ -51,18 +48,23 @@ import ui.util.IconManager;
 import ui.window.JDialogSMDLibraryFunctionCall;
 
 import javax.swing.*;
-import java.awt.*;
-import java.util.LinkedList;
 
+import java.awt.Color;
+import java.awt.Graphics;
+import java.util.LinkedList;
+import java.util.List;
 
 /**
 * @version 1.0 04.18.2016
 * @author Florian LUGOU
 */
-public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComponent implements BasicErrorHighlight {
-    private LinkedList<TAttribute> parameters;
-    private LinkedList<AvatarSignal> signals;
-    private LinkedList<TAttribute> returnAttributes;
+public class AvatarSMDLibraryFunctionCall extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 TGCScalableWithoutInternalComponent*/ implements BasicErrorHighlight {
+    
+	private List<TAttribute> parameters;
+    
+	private List<AvatarSignal> signals;
+    
+	private List<TAttribute> returnAttributes;
 
     private AvatarBDLibraryFunction libraryFunction;
 
@@ -104,8 +106,8 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp
         this.myImageIcon = IconManager.imgic904;
     }
 
+    @Override
     public void internalDrawing(Graphics graph) {
-
         this.value = this.prettyPrint ();
 
         int [] px1 = {this.x, this.x+this.width-AvatarSMDLibraryFunctionCall.linebreak, this.x+this.width, this.x+this.width-AvatarSMDLibraryFunctionCall.linebreak, this.x, this.x+AvatarSMDLibraryFunctionCall.linebreak};
@@ -128,6 +130,13 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp
 
         graph.drawPolygon (px1, py1, 6);
 
+        // Issue #69
+    	if ( !isEnabled() && isContainedInEnabledState() ) {
+    		graph.setColor( ColorManager.DISABLED_FILLING );
+    		graph.fillPolygon( px1, py1, 6  );
+    		graph.setColor( c );
+    	}
+
         graph.drawLine (this.x+this.width/2, this.y, this.x+this.width/2, this.y - AvatarSMDLibraryFunctionCall.lineLength);
         graph.drawLine (this.x+this.width/2, this.y+this.height, this.x+this.width/2, this.y + AvatarSMDLibraryFunctionCall.lineLength + this.height);
 
@@ -149,6 +158,7 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp
             graph.drawString (this.value, this.x + (this.width - stringWidth) / 2 , this.y + (this.height+h)/2);
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (_x < this.x || _x > this.x + this.width || _y > this.y + this.height || _y < this.y)
             return null;
@@ -175,6 +185,7 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp
         return this;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         JDialogSMDLibraryFunctionCall dialog = new JDialogSMDLibraryFunctionCall (
                 this,
@@ -196,27 +207,27 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp
         this.libraryFunction = libraryFunction;
     }
 
-    public LinkedList<TAttribute> getParameters () {
+    public List<TAttribute> getParameters () {
         return this.parameters;
     }
 
-    public void setParameters (LinkedList<TAttribute> parameters) {
+    public void setParameters( List<TAttribute> parameters) {
         this.parameters = parameters;
     }
 
-    public LinkedList<AvatarSignal> getSignals () {
+    public List<AvatarSignal> getSignals () {
         return this.signals;
     }
 
-    public void setSignals (LinkedList<AvatarSignal> signals) {
+    public void setSignals( List<AvatarSignal> signals) {
         this.signals = signals;
     }
 
-    public LinkedList<TAttribute> getReturnAttributes () {
+    public List<TAttribute> getReturnAttributes () {
         return this.returnAttributes;
     }
 
-    public void setReturnAttributes (LinkedList<TAttribute> returnAttributes) {
+    public void setReturnAttributes( List<TAttribute> returnAttributes) {
         this.returnAttributes = returnAttributes;
     }
 
@@ -264,10 +275,12 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp
         return builder.toString ();
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.AVATARSMD_CONNECTOR;
     }
 
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
@@ -426,7 +439,7 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp
         } catch (MalformedModelingException e) {
             throw e;
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
 
         if (this.libraryFunction != null &&
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDParallel.java b/src/main/java/ui/avatarsmd/AvatarSMDParallel.java
deleted file mode 100755
index f36631d091a3d77e5a97cf692f414cb218ee8a05..0000000000000000000000000000000000000000
--- a/src/main/java/ui/avatarsmd/AvatarSMDParallel.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille
- * 
- * ludovic.apvrille AT enst.fr
- * 
- * This software is a computer program whose purpose is to allow the
- * edition of TURTLE analysis, design and deployment diagrams, to
- * allow the generation of RT-LOTOS or Java code from this diagram,
- * and at last to allow the analysis of formal validation traces
- * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP
- * from INRIA Rhone-Alpes.
- * 
- * This software is governed by the CeCILL  license under French law and
- * abiding by the rules of distribution of free software.  You can  use,
- * modify and/ or redistribute the software under the terms of the CeCILL
- * license as circulated by CEA, CNRS and INRIA at the following URL
- * "http://www.cecill.info".
- * 
- * As a counterpart to the access to the source code and  rights to copy,
- * modify and redistribute granted by the license, users are provided only
- * with a limited warranty  and the software's author,  the holder of the
- * economic rights,  and the successive licensors  have only  limited
- * liability.
- * 
- * In this respect, the user's attention is drawn to the risks associated
- * with loading,  using,  modifying and/or developing or reproducing the
- * software by the user in light of its specific status of free software,
- * that may mean  that it is complicated to manipulate,  and  that  also
- * therefore means  that it is reserved for developers  and  experienced
- * professionals having in-depth computer knowledge. Users are therefore
- * encouraged to load and test the software's suitability as regards their
- * requirements in conditions enabling the security of their systems and/or
- * data to be ensured and,  more generally, to use and operate it in the
- * same conditions as regards security.
- * 
- * The fact that you are presently reading this means that you have had
- * knowledge of the CeCILL license and that you accept its terms.
- */
-
-
-
-
-package ui.avatarsmd;
-
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
-
-/**
- * Class AvatarSMDParallel
- * Parallel operator.
- * To be used in Avatar State Machine Diagrams
- * Creation: 13/04/2010
- * @version 1.0 13/04/2010
- * @author Ludovic APVRILLE
- */
-public class AvatarSMDParallel extends AvatarSMDBasicComponent{
-    private int lineLength = 0;
-    private int textX, textY;
-    
-    public AvatarSMDParallel(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
-        super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
-        
-        
-        width = 150;
-        height = 5;
-        
-        textX = width - 10;
-        textY = height - 8;
-        
-        nbConnectingPoint = 10;
-        connectingPoint = new TGConnectingPoint[10];
-        connectingPoint[0] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.167, 0.0);
-        connectingPoint[1] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.333, 0.0);
-        connectingPoint[2] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[3] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.667, 0.0);
-        connectingPoint[4] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.833, 0.0);
-        connectingPoint[5] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.167, 1.0);
-        connectingPoint[6] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.333, 1.0);
-        connectingPoint[7] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.5, 1.0);
-        connectingPoint[8] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.667, 1.0);
-        connectingPoint[9] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.833, 1.0);
-        addTGConnectingPointsCommentCorner();
-        
-        nbInternalTGComponent = 0;
-
-		moveable = true;
-		editable = false;
-		removable = true;
-
-		name = "parallel / synchro";
-		
-		myImageIcon = IconManager.imgic206;
-    }
-    
-    public void internalDrawing(Graphics g) {
-		g.drawRect(x, y, width, height);
-		g.fillRect(x, y, width, height);
-	}
-
-	public TGComponent isOnMe(int x1, int y1) {
-		if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
-			return this;
-		}
-		return null;
-	}
-	
-	public int getType() {
-		return TGComponentManager.AVATARSMD_PARALLEL;
-	}
-	
-	public int getDefaultConnector() {
-      return TGComponentManager.AVATARSMD_CONNECTOR;
-    }
-}
-
-
-
-
-
-
-
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDRandom.java b/src/main/java/ui/avatarsmd/AvatarSMDRandom.java
index 79528c6ccbbef9c1f5d8f958a55f637870fa969a..2b4fce07b79bbefeb1018bcb81454528d3f1928d 100755
--- a/src/main/java/ui/avatarsmd/AvatarSMDRandom.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDRandom.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarsmd;
 
 import myutil.GraphicLib;
@@ -60,7 +57,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 12/07/2010
  * @author Ludovic APVRILLE
  */
-public class AvatarSMDRandom  extends AvatarSMDBasicComponent implements EmbeddedComment, BasicErrorHighlight {
+public class AvatarSMDRandom extends  AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements EmbeddedComment, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -97,15 +94,16 @@ public class AvatarSMDRandom  extends AvatarSMDBasicComponent implements Embedde
         myImageIcon = IconManager.imgic912;
     }
 
-    public void makeValue() {
+    private void makeValue() {
         valueRandom = variable + " = RANDOM" + functionId + "[" + minValue + ", " + maxValue + "]";
     }
 
 	public void setVariable(String v){
 		variable=v;
 	}
-    public void internalDrawing(Graphics g) {
 
+	@Override
+    public void internalDrawing(Graphics g) {
         if (valueRandom.length() == 0) {
             makeValue();
         }
@@ -118,8 +116,9 @@ public class AvatarSMDRandom  extends AvatarSMDBasicComponent implements Embedde
             //updateConnectingPoints();
         }
 
+        Color c = g.getColor();
+
         if (stateOfError > 0)  {
-            Color c = g.getColor();
             switch(stateOfError) {
             case ErrorHighlight.OK:
                 g.setColor(ColorManager.RANDOM);
@@ -132,13 +131,22 @@ public class AvatarSMDRandom  extends AvatarSMDBasicComponent implements Embedde
         }
 
         g.drawRoundRect(x, y, width, height, arc, arc);
-        g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
+
+        // Issue #69
+    	if ( !isEnabled() && isContainedInEnabledState() ) {
+	    	g.setColor( ColorManager.DISABLED_FILLING );
+	    	g.fillRoundRect(x, y, width, height, arc, arc);
+	    	g.setColor( c );
+    	}
+
+    	g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
         g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
         //g.drawLine(x+width, y+height/2, x+width +lineLength, y+height/2);
 
         g.drawString(valueRandom, x + (width - w) / 2 , y + textY);
     }
 
+	@Override
     public boolean editOndoubleClick(JFrame frame) {
         boolean error = false;
         String errors = "";
@@ -194,6 +202,7 @@ public class AvatarSMDRandom  extends AvatarSMDBasicComponent implements Embedde
         return true;
     }
 
+	@Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -226,6 +235,7 @@ public class AvatarSMDRandom  extends AvatarSMDBasicComponent implements Embedde
         return functionId;
     }
 
+	@Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data variable=\"");
@@ -243,18 +253,13 @@ public class AvatarSMDRandom  extends AvatarSMDBasicComponent implements Embedde
 
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{
-        //
         try {
-
             NodeList nli;
             Node n1, n2;
             Element elt;
         //    int k;
             String s;
 
-            //
-            //
-
             for(int i=0; i<nl.getLength(); i++) {
                 n1 = nl.item(i);
                 //
@@ -284,19 +289,18 @@ public class AvatarSMDRandom  extends AvatarSMDBasicComponent implements Embedde
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeValue();
     }
 
-
+	@Override
     public int getType() {
         return TGComponentManager.AVATARSMD_RANDOM;
     }
 
+	@Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
-
-
 }
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java b/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java
index 97637c476049338a64d8c0ad4dda966fccab62ad..b705e2a4c382fc40585864f40aa41471df5dc4d0 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java
@@ -40,8 +40,10 @@ package ui.avatarsmd;
 
 import java.awt.Color;
 import java.awt.Graphics;
+import java.awt.Polygon;
 import java.awt.geom.Line2D;
 import java.util.List;
+import java.util.Map;
 import java.util.Vector;
 import java.util.concurrent.ConcurrentHashMap;
 
@@ -73,7 +75,7 @@ import ui.window.JDialogAvatarSignal;
  * @version 1.0 12/04/2010
  * @author Ludovic APVRILLE
  */
-public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements CheckableAccessibility, LinkedReference, CheckableLatency, BasicErrorHighlight, PartOfInvariant {
+public class AvatarSMDReceiveSignal extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements CheckableAccessibility, LinkedReference, CheckableLatency, BasicErrorHighlight, PartOfInvariant {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -81,14 +83,12 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
     protected int linebreak = 10;
 	protected int textX1 = 2;
    
-	private ConcurrentHashMap<String, String> latencyVals;
-
+	private Map<String, String> latencyVals;
 
 	protected int latencyX=30;
 	protected int latencyY=25;
 	protected int textWidth=10;
 	protected int textHeight=20;
-	
 
 	protected int stateOfError = 0; // Not yet checked
     
@@ -125,7 +125,6 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
     
 	@Override
 	public void internalDrawing(Graphics g) {
-		
         int w  = g.getFontMetrics().stringWidth(value + textX1);
         int w1 = Math.max(minWidth, w + 2 * textX);
         if ((w1 != width) & (!tdp.isScaled())) {
@@ -134,7 +133,6 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
             //updateConnectingPoints();
         }
 		
-		
 		if (stateOfError > 0)  {
 			Color c = g.getColor();
 			switch(stateOfError) {
@@ -173,13 +171,27 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
         g.drawLine(x1, y1, x1+linebreak, y1+height1/2);
         g.drawLine(x1, y1+height1, x1+linebreak, y1+height1/2);
 		g.setColor(c);
+
+		final Polygon shape = new Polygon();
+		shape.addPoint( x, y );
+		shape.addPoint( x + width, y );
+		shape.addPoint( x + width, y + height );
+		shape.addPoint( x, y + height );
+		shape.addPoint( x + linebreak, y + height / 2 );
+		g.drawPolygon( shape );
 		
-        g.drawLine(x, y, x+width, y);
-        g.drawLine(x+width, y, x+width, y+height);
-        g.drawLine(x, y+height, x+width, y+height);
-        g.drawLine(x, y, x+linebreak, y+height/2);
-        g.drawLine(x, y+height, x+linebreak, y+height/2);
+//        g.drawLine(x, y, x+width, y);
+//        g.drawLine(x+width, y, x+width, y+height);
+//        g.drawLine(x, y+height, x+width, y+height);
+//        g.drawLine(x, y, x+linebreak, y+height/2);
+//        g.drawLine(x, y+height, x+linebreak, y+height/2);
 		
+        // Issue #69
+    	if ( !isEnabled() && isContainedInEnabledState() ) {
+	    	g.setColor( ColorManager.DISABLED_FILLING );
+	    	g.fillPolygon( shape );
+	    	g.setColor( c );
+    	}
 		   
         //g.drawString("sig()", x+(width-w) / 2, y);
         g.drawString(value, x + linebreak + textX1, y + textY);
@@ -191,6 +203,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
 				drawLatencyInformation(g);
 			}
 		}
+		
 		if (reference!=null){
 			if (reference instanceof AvatarRDRequirement){
 				AvatarRDRequirement refReq = (AvatarRDRequirement) reference;
@@ -198,7 +211,8 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
 			}
 		}
     }
-	public void drawLatencyInformation(Graphics g){
+	
+	private void drawLatencyInformation(Graphics g){
 		int index=1;
 		for (String s:latencyVals.keySet()){
 			int w  = g.getFontMetrics().stringWidth(s);
@@ -278,9 +292,8 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
 					}
 				}
 				if (reference instanceof TMLADReadChannel){
-				//	
 					TMLADReadChannel rc = (TMLADReadChannel) reference;
-					ConcurrentHashMap<String, String> refLats =rc.getLatencyMap();
+					Map<String, String> refLats =rc.getLatencyMap();
 					//
 					for (String checkpoint:refLats.keySet()){
 						if (s.split("\\-")[1].split(":")[0].equals(checkpoint.split("channel:")[1].split(" ")[0])){
@@ -304,6 +317,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
 		}
 	}
     
+	@Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -316,7 +330,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
         return null;
     }
     
-    public void makeValue() {
+    //public void makeValue() {
         /*boolean first = true;
         value = eventName + "(";
         for(int i=0; i<nParam; i++) {
@@ -332,7 +346,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
         }
         value += ")";*/
         
-    }
+  //  }
     
     public String getSignalName() {
        if (value == null) {
@@ -420,15 +434,17 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
          
     }
     
-
+	@Override
     public int getType() {
         return TGComponentManager.AVATARSMD_RECEIVE_SIGNAL;
     }
     
-     public int getDefaultConnector() {
-      return TGComponentManager.AVATARSMD_CONNECTOR;
+	@Override
+    public int getDefaultConnector() {
+		return TGComponentManager.AVATARSMD_CONNECTOR;
     }
 	
+	@Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java
index a65555c45fd797ff542ecf7cc4cf58f125113892..6eab76979e64f20b527b7d8fa475bd9095d2c9f3 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java
@@ -40,6 +40,7 @@ package ui.avatarsmd;
 
 import java.awt.Color;
 import java.awt.Graphics;
+import java.awt.Polygon;
 import java.awt.geom.Line2D;
 import java.util.List;
 
@@ -67,7 +68,7 @@ import ui.window.JDialogAvatarTimer;
  * @version 1.0 15/07/2010
  * @author Ludovic APVRILLE
  */
-public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements BasicErrorHighlight, PartOfInvariant {
+public class AvatarSMDResetTimer extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements BasicErrorHighlight, PartOfInvariant {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -105,8 +106,8 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi
         myImageIcon = IconManager.imgic904;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
-		
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
         if ((w1 != width) & (!tdp.isScaled())) {
@@ -150,11 +151,26 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi
         g.drawLine(x1+width1-linebreak, y1+height1, x1+width1, y1+height1/2);
 		g.setColor(c);
 		
-		g.drawLine(x, y, x+width-linebreak, y);
-        g.drawLine(x, y+height, x+width-linebreak, y+height);
-        g.drawLine(x, y, x, y+height);
-        g.drawLine(x+width-linebreak, y, x+width, y+height/2);
-        g.drawLine(x+width-linebreak, y+height, x+width, y+height/2);
+		final Polygon shape = new Polygon();
+		shape.addPoint( x, y );
+		shape.addPoint( x + width - linebreak, y );
+		shape.addPoint( x + width, y + height / 2 );
+		shape.addPoint( x + width - linebreak, y + height );
+		shape.addPoint(x, y + height );
+		
+		g.drawPolygon( shape );
+//		g.drawLine(x, y, x+width-linebreak, y);
+//        g.drawLine(x, y+height, x+width-linebreak, y+height);
+//        g.drawLine(x, y, x, y+height);
+//        g.drawLine(x+width-linebreak, y, x+width, y+height/2);
+//        g.drawLine(x+width-linebreak, y+height, x+width, y+height/2);
+
+        // Issue #69
+    	if ( !isEnabled() && isContainedInEnabledState() ) {
+	    	g.setColor( ColorManager.DISABLED_FILLING );
+	    	g.fillPolygon( shape );
+	    	g.setColor( c );
+    	}
 		
 		// hourglass
 		g.setColor(ColorManager.AVATAR_SET_TIMER);
@@ -170,8 +186,6 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi
 		
         //g.drawString("sig()", x+(width-w) / 2, y);
         g.drawString(value, x + (width - w) / 2 , y + textY);
-		
-		
     }
     
     @Override
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java b/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java
index 55fd6ffca7a87bdaea11567e708ca8a9bf6eb834..aefcf54dface93a33001f78b6cf39474a4137f4d 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java
@@ -40,8 +40,10 @@ package ui.avatarsmd;
 
 import java.awt.Color;
 import java.awt.Graphics;
+import java.awt.Polygon;
 import java.awt.geom.Line2D;
 import java.util.List;
+import java.util.Map;
 import java.util.Vector;
 import java.util.concurrent.ConcurrentHashMap;
 
@@ -72,7 +74,7 @@ import ui.window.JDialogAvatarSignal;
    * @version 1.0 12/04/2010
    * @author Ludovic APVRILLE
  */
-public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements CheckableAccessibility, LinkedReference, CheckableLatency, BasicErrorHighlight, PartOfInvariant {
+public class AvatarSMDSendSignal extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements CheckableAccessibility, LinkedReference, CheckableLatency, BasicErrorHighlight, PartOfInvariant {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -127,7 +129,6 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
             width = w1;            //updateConnectingPoints();
         }
 
-
         if (stateOfError > 0)  {
             Color c = g.getColor();
             switch(stateOfError) {
@@ -167,17 +168,33 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
         g.drawLine(x1+width1-linebreak, y1+height1, x1+width1, y1+height1/2);
         g.setColor(c);
 
-        g.drawLine(x, y, x+width-linebreak, y);
-        g.drawLine(x, y+height, x+width-linebreak, y+height);
-        g.drawLine(x, y, x, y+height);
-        g.drawLine(x+width-linebreak, y, x+width, y+height/2);
-        g.drawLine(x+width-linebreak, y+height, x+width, y+height/2);
+        final Polygon shape = new Polygon();
+        shape.addPoint( x, y );
+        shape.addPoint( x + width - linebreak, y );
+        shape.addPoint( x + width, y + height / 2 );
+        shape.addPoint( x + width - linebreak, y + height );
+        shape.addPoint( x, y + height );
+        
+        g.drawPolygon( shape );
+
+        // Issue #69
+    	if ( !isEnabled() && isContainedInEnabledState() ) {
+	    	g.setColor( ColorManager.DISABLED_FILLING );
+	    	g.fillPolygon( shape );
+	    	g.setColor( c );
+    	}
+//        g.drawLine(x, y, x+width-linebreak, y);
+//        g.drawLine(x, y+height, x+width-linebreak, y+height);
+//        g.drawLine(x, y, x, y+height);
+//        g.drawLine(x+width-linebreak, y, x+width, y+height/2);
+//        g.drawLine(x+width-linebreak, y+height, x+width, y+height/2);
 
 
         //g.drawString("sig()", x+(width-w) / 2, y);
         g.drawString(value, x + (width - w) / 2 , y + textY);
 		//g.drawString("Reference " + reference, x-latencyX/2, y+latencyY/2);
-		if (getCheckLatency()){
+		
+        if (getCheckLatency()){
 			ConcurrentHashMap<String, String> latency =tdp.getMGUI().getLatencyVals(getAVATARID());
 			if (latency!=null){
 				latencyVals=latency;
@@ -192,7 +209,7 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
 		}
     }
 
-	public void drawLatencyInformation(Graphics g){
+	private void drawLatencyInformation(Graphics g){
 		int index=1;
 		for (String s:latencyVals.keySet()){
 			int w  = g.getFontMetrics().stringWidth(s);
@@ -274,7 +291,7 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
 				if (reference instanceof TMLADWriteChannel){
 					//	
 					TMLADWriteChannel rc = (TMLADWriteChannel) reference;
-					ConcurrentHashMap<String, String> refLats =rc.getLatencyMap();
+					Map<String, String> refLats =rc.getLatencyMap();
 					//
 					for (String checkpoint:refLats.keySet()){
 						if (s.split("\\-")[1].split(":")[0].equals(checkpoint.split(":")[1].split(" ")[0])){
@@ -292,7 +309,6 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
 				}
 			}
 			
-			
 			g.drawString(latencyVals.get(s), x-latencyX/2, y-latencyY*index/2);
 			g.setColor(c);
 			index++;
@@ -312,23 +328,23 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
         return null;
     }
 
-    public void makeValue() {
-        /*boolean first = true;
-          value = eventName + "(";
-          for(int i=0; i<nParam; i++) {
-          if (params[i].length() > 0) {
-          if (!first) {
-          value += ", " + params[i];
-          } else {
-          first = false;
-          value += params[i];
-          }
-
-          }
-          }
-          value += ")";*/
-
-    }
+//    public void makeValue() {
+//        /*boolean first = true;
+//          value = eventName + "(";
+//          for(int i=0; i<nParam; i++) {
+//          if (params[i].length() > 0) {
+//          if (!first) {
+//          value += ", " + params[i];
+//          } else {
+//          first = false;
+//          value += params[i];
+//          }
+//
+//          }
+//          }
+//          value += ")";*/
+//
+//    }
 
     public String getSignalName() {
         if (value == null) {
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java
index 952f1039cc9a7b8a54e77d55bb4c820ed35f50c1..d5915ffa4f2ec4fd11e375d407685bcede6759a0 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java
@@ -40,6 +40,7 @@ package ui.avatarsmd;
 
 import java.awt.Color;
 import java.awt.Graphics;
+import java.awt.Polygon;
 import java.awt.geom.Line2D;
 import java.util.List;
 
@@ -67,7 +68,7 @@ import ui.window.JDialogAvatarTimer;
  * @version 1.0 15/07/2010
  * @author Ludovic APVRILLE
  */
-public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicErrorHighlight, PartOfInvariant {
+public class AvatarSMDSetTimer extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements BasicErrorHighlight, PartOfInvariant {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -149,14 +150,30 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE
         g.drawLine(x1+width1-linebreak, y1, x1+width1, y1+height1/2);
         g.drawLine(x1+width1-linebreak, y1+height1, x1+width1, y1+height1/2);
 		g.setColor(c);
+
+		final Polygon shape = new Polygon();
+		shape.addPoint( x, y );
+		shape.addPoint( x + width - linebreak, y );
+		shape.addPoint( x + width, y + height / 2 );
+		shape.addPoint( x + width - linebreak, y + height );
+		shape.addPoint(x, y + height );
 		
-		g.drawLine(x, y, x+width-linebreak, y);
-        g.drawLine(x, y+height, x+width-linebreak, y+height);
-        g.drawLine(x, y, x, y+height);
-        g.drawLine(x+width-linebreak, y, x+width, y+height/2);
-        g.drawLine(x+width-linebreak, y+height, x+width, y+height/2);
+		g.drawPolygon( shape );
+//		
+//		g.drawLine(x, y, x+width-linebreak, y);
+//        g.drawLine(x, y+height, x+width-linebreak, y+height);
+//        g.drawLine(x, y, x, y+height);
+//        g.drawLine(x+width-linebreak, y, x+width, y+height/2);
+//        g.drawLine(x+width-linebreak, y+height, x+width, y+height/2);
 		
-		// hourglass
+        // Issue #69
+    	if ( !isEnabled() && isContainedInEnabledState() ) {
+	    	g.setColor( ColorManager.DISABLED_FILLING );
+	    	g.fillPolygon( shape );
+	    	g.setColor( c );
+    	}
+
+    	// hourglass
 		g.setColor(ColorManager.AVATAR_SET_TIMER);
 		g.drawLine(x+width+hourglassSpace+1, y+1, x+width+hourglassSpace + hourglassWidth+1, y+1);
 		g.drawLine(x+width+hourglassSpace+1, y+height+1, x+width+hourglassSpace + hourglassWidth+1, y+height+1);
@@ -168,12 +185,8 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE
 		g.drawLine(x+width+hourglassSpace, y, x+width+hourglassSpace + hourglassWidth, y+height);
 		g.drawLine(x+width+hourglassSpace, y+height, x+width+hourglassSpace + hourglassWidth, y);
 		
-		
-		
         //g.drawString("sig()", x+(width-w) / 2, y);
         g.drawString(value, x + (width - w) / 2 , y + textY);
-		
-		
     }
     
     @Override
@@ -239,18 +252,18 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE
 		return true;
          
     }
-    
-  
-    
 
+	@Override
     public int getType() {
         return TGComponentManager.AVATARSMD_SET_TIMER;
     }
     
-     public int getDefaultConnector() {
-      return TGComponentManager.AVATARSMD_CONNECTOR;
+	@Override
+    public int getDefaultConnector() {
+		return TGComponentManager.AVATARSMD_CONNECTOR;
     }
 	
+	@Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDStartState.java b/src/main/java/ui/avatarsmd/AvatarSMDStartState.java
index a3b25ceca27d64caa1e730925bb8a2b5e9f50327..b815131fe67c80b6c8df60d045fa51279bbe0f27 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDStartState.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDStartState.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarsmd;
 
 import myutil.GraphicLib;
@@ -56,7 +53,8 @@ import java.awt.geom.Line2D;
  * @author Ludovic APVRILLE
  */
 public class AvatarSMDStartState extends AvatarSMDBasicComponent implements EmbeddedComment, PartOfInvariant{
-    private int lineLength = 5;
+    
+	private int lineLength = 5;
     
     public AvatarSMDStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
@@ -79,11 +77,13 @@ public class AvatarSMDStartState extends AvatarSMDBasicComponent implements Embe
         myImageIcon = IconManager.imgic222;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         g.fillOval(x, y, width, height);
         g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -96,12 +96,28 @@ public class AvatarSMDStartState extends AvatarSMDBasicComponent implements Embe
         return null;
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.AVATARSMD_START_STATE;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.AVATARSMD_CONNECTOR;
+    	return TGComponentManager.AVATARSMD_CONNECTOR;
     }
-    
+	
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptBackward( final ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			
+			// Needed to escape containing composite state machine
+			if ( getFather() instanceof AvatarSMDState ) {
+				getFather().acceptBackward( visitor );
+			}
+		}
+	}
 }
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDState.java b/src/main/java/ui/avatarsmd/AvatarSMDState.java
index 790ac83d49be67a6f3ff6ca6227ad4672146a39a..3f3d3415bdbf8e5fffc4f1da49bf038739d9068e 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDState.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDState.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarsmd;
 
 import myutil.Conversion;
@@ -51,11 +48,15 @@ import ui.util.IconManager;
 import ui.window.JDialogAvatarState;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics;
+import java.util.ArrayList;
 import java.util.LinkedList;
+import java.util.List;
 import java.util.Vector;
 
-
 /**
    * Class AvatarSMDState
    * State. To be used in AVATAR State Machine Diagrams
@@ -156,7 +157,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
 
         name = tdp.findAvatarSMDStateName("state");
         setValue(name);
-	name = "State";
+        name = "State";
         oldValue = value;
 
         currentFontSize = maxFontSize;
@@ -190,6 +191,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         mutexStates = null;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         Font f = g.getFont();
         Font fold = f;
@@ -235,18 +237,22 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
 
         }
 
-        //
-
         Color c = g.getColor();
         //g.setColor(ColorManager.AVATAR_STATE);
-        Color avat = ColorManager.AVATAR_STATE;
-        g.setColor(new Color(avat.getRed(), avat.getGreen(), Math.min(255, avat.getBlue() + (getMyDepth() * 10))));
+        
+        // Issue #69
+    	if ( isEnabled() ) {
+            Color avat = ColorManager.AVATAR_STATE;
+    		g.setColor(new Color(avat.getRed(), avat.getGreen(), Math.min(255, avat.getBlue() + (getMyDepth() * 10))));
+    	}
+    	else {
+	    	g.setColor( ColorManager.DISABLED_FILLING );
+    	}
+
         g.fillRoundRect(x, y, width, height, 5, 5);
         g.setColor(c);
         g.drawRoundRect(x, y, width, height, 5, 5);
 
-
-
         // Strings
         int w;
         int h = 0;
@@ -306,7 +312,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         drawSecurityInformation(g);
     }
 
-    public void drawSecurityInformation(Graphics g) {
+    private void drawSecurityInformation(Graphics g) {
         if (securityInformation > 0) {
 
             Color c = g.getColor();
@@ -330,10 +336,9 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
             g.drawRect(x-12, y, 9, 7);
 
         }
-
     }
 
-
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
 
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
@@ -342,13 +347,12 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         return null;
     }
 
-
     public String getStateName() {
         return value;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame, int _x, int _y) {
-
         oldValue = value;
 
         //String text = getName() + ": ";
@@ -357,7 +361,6 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
           null,
           getValue());*/
 
-
         JDialogAvatarState jdas = new JDialogAvatarState(frame, "Setting state parameters", value, entryCode);
        // jdas.setSize(600, 550);
         GraphicLib.centerOnParent(jdas, 600, 550 );
@@ -370,7 +373,6 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
 
         String s = jdas.getStateName();
 
-
         if ((s != null) && (s.length() > 0) && (!s.equals(oldValue))) {
             //boolean b;
             if (!TAttribute.isAValidId(s, false, false)) {
@@ -407,19 +409,19 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         entryCode =  jdas.getEntryCode();
 
         return true;
-
-
     }
 
+    @Override
     public void recalculateSize() {
         width = Math.max(width, value.length()*11);
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.AVATARSMD_STATE;
     }
 
+    @Override
     public boolean acceptSwallowedTGComponent(TGComponent tgc) {
         if (tgc instanceof AvatarSMDBasicComponent) {
             return true;
@@ -429,6 +431,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
 
     }
 
+    @Override
     public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) {
         boolean swallowed = false;
 
@@ -475,6 +478,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         return true;
     }
 
+    @Override
     public void removeSwallowedTGComponent(TGComponent tgc) {
         removeMyInternalComponent(tgc, false);
     }
@@ -514,7 +518,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         return false;
     }
 
-
+    @Override
     public void hasBeenResized() {
         for(int i=0; i<nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof AvatarSMDBasicComponent) {
@@ -531,6 +535,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
 
     }
 
+    @Override
     public void resizeWithFather() {
 
         if ((father != null) && (father instanceof AvatarSMDState)) {
@@ -542,8 +547,8 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         }
     }
 
-    public LinkedList<AvatarSMDState> getStateList() {
-        LinkedList<AvatarSMDState> list = new LinkedList<AvatarSMDState>();
+    public List<AvatarSMDState> getStateList() {
+        List<AvatarSMDState> list = new LinkedList<AvatarSMDState>();
         for(int i=0; i<nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof AvatarSMDState) {
                 list.add((AvatarSMDState)(tgcomponent[i]));
@@ -552,8 +557,8 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         return list;
     }
 
-    public LinkedList<AvatarSMDState> getFullStateList() {
-        LinkedList<AvatarSMDState> list = new LinkedList<AvatarSMDState>();
+    public List<AvatarSMDState> getFullStateList() {
+        List<AvatarSMDState> list = new LinkedList<AvatarSMDState>();
         for(int i=0; i<nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof AvatarSMDState) {
                 list.add((AvatarSMDState)(tgcomponent[i]));
@@ -564,7 +569,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
     }
 
     public boolean hasInternalStateWithName(String name) {
-        LinkedList<AvatarSMDState> list  = getFullStateList();
+        List<AvatarSMDState> list  = getFullStateList();
         for(AvatarSMDState s: list) {
             if (s.getValue().compareTo(name) ==0) {
                 return true;
@@ -573,13 +578,14 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         return false;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.AVATARSMD_CONNECTOR;
     }
 
     public AvatarSMDState checkForStartStateOfCompositeStates() {
         AvatarSMDState tgc;
-        LinkedList<AvatarSMDState> list  = getFullStateList();
+        List<AvatarSMDState> list  = getFullStateList();
         for(AvatarSMDState s: list) {
             tgc = s.checkForStartStateOfCompositeStates();
             if (tgc != null) {
@@ -597,6 +603,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         if (cpt > 1) {
             return this;
         }
+        
         return null;
     }
 
@@ -617,6 +624,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         return s;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
 
@@ -689,10 +697,9 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
 
-
         /*if (tmpGlobalCode.trim().length() == 0) {
           globalCode = null;
           } else {
@@ -704,8 +711,6 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
             entryCode = Conversion.wrapText(tmpEntryCode);
             //TraceManager.addDev("Entry code = " + entryCode);
         }
-
-
     }
 
     /*public boolean hasGlobalCode() {
@@ -774,7 +779,6 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
         return ret;
     }
 
-
     public void resetSecurityInfo() {
         securityInformation = NOT_VERIFIED;
         for(int i=0; i<nbInternalTGComponent; i++) {
@@ -797,8 +801,146 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements
                 ((AvatarSMDState)tgcomponent[i]).setSecurityInfo(_info, _name);
             }
         }
-
     }
 
-
+	/* Issue #69
+	 * (non-Javadoc)
+	 * @see ui.AbstractCDElement#canBeDisabled()
+	 */
+	@Override
+    public boolean canBeDisabled() {
+		if ( getFather() instanceof AvatarSMDState ) {
+			return getFather().isEnabled();
+		}
+		
+    	return true;
+    }
+	
+	private List<AvatarSMDConnector> getContainedConnectors() {
+		final List<AvatarSMDConnector> connectors = new ArrayList<AvatarSMDConnector>();
+		
+    	for ( final TGComponent component : tdp.getComponentList() ) {
+    		if ( component instanceof AvatarSMDConnector ) {
+    			final AvatarSMDConnector smdCon = (AvatarSMDConnector) component;
+    			
+    			if ( smdCon.isContainedBy( this ) ) {
+    				connectors.add( smdCon );
+    			}
+    		}
+    	}
+    	
+    	return connectors;
+	}
+	
+    /**
+     * Issue #69
+     * @param _enabled
+     */
+    @Override
+    public void setEnabled( final boolean _enabled ) {
+    	if ( _enabled ) { 
+        	super.setEnabled( _enabled );
+    	}
+    	
+    	// Enabling for composite states
+    	for ( final TGComponent component : tgcomponent ) {
+    		if ( component.canBeDisabled() ) {
+    			component.setEnabled( _enabled );
+    		}
+    	}
+    	
+    	for ( final AvatarSMDConnector containedConnector : getContainedConnectors() ) {
+    		containedConnector.getAvatarSMDTransitionInfo().setEnabled( _enabled );
+    	}
+
+    	if ( !_enabled ) { 
+        	super.setEnabled( _enabled );
+    	}
+    	
+    	// Enabling of states with the same name
+    	for ( final AvatarSMDState sameState : getSameStates() ) {
+    		sameState.doSetEnabled( _enabled );
+    	}
+    }
+    
+    public List<AvatarSMDState> getSameStates() {
+    	final List<AvatarSMDState> states = new ArrayList<AvatarSMDState>();
+    	
+    	for ( final TGComponent component : tdp.getComponentList() ) {
+    		if ( 	component != this && getValue() != null && component instanceof AvatarSMDState && 
+    				getFather() == component.getFather() && getValue().equals( component.getValue() ) ) {
+    			states.add( (AvatarSMDState) component );
+    		}
+    	}
+    	
+    	return states;
+    }
+    
+    public AvatarSMDStartState getCompositeStartState() {
+		if ( tgcomponent ==  null ) {
+			return null;
+		}
+		
+		for ( final TGComponent subCompo : tgcomponent ) {
+			if ( subCompo instanceof AvatarSMDStartState ) {
+				return (AvatarSMDStartState) subCompo;
+			}
+		}
+
+		return null;
+    }
+	
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.CDElement#acceptForward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptForward( final ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			final AvatarSMDStartState subStartElement = getCompositeStartState();
+			
+			if ( subStartElement != null ) {
+				subStartElement.acceptForward( visitor );
+			}
+			
+			if ( connectingPoint !=  null ) {
+				for ( final TGConnectingPoint point : connectingPoint ) {
+					final TGConnector connector = getConnectorConnectedTo( point );
+					
+					if ( connector != null && point == connector.getTGConnectingPointP1() ) {
+						point.acceptForward( visitor );
+					}
+				}
+			}
+			
+			// Also visit the states with the same name
+			for ( final AvatarSMDState state : getSameStates() ) {
+				state.acceptForward( visitor );
+			}
+		}
+	}
+	
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor)
+     */
+    @Override
+	public void acceptBackward( final ICDElementVisitor visitor ) {
+		if ( visitor.visit( this ) ) {
+			if ( connectingPoint !=  null ) {
+				for ( final TGConnectingPoint point : connectingPoint ) {
+					final TGConnector connector = getConnectorConnectedTo( point );
+					
+					if ( connector != null && point == connector.getTGConnectingPointP2() ) {
+						point.acceptBackward( visitor );
+					}
+				}
+			}
+		}
+		
+		// Also visit the states with the same name
+		for ( final AvatarSMDState state : getSameStates() ) {
+			state.acceptBackward( visitor );
+		}
+	}
 }
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDToolBar.java b/src/main/java/ui/avatarsmd/AvatarSMDToolBar.java
index 356cdb74c871550dc43e93f12bbfe659e404e9e2..e774c907fe4baafaf95335efd483724872be494c 100755
--- a/src/main/java/ui/avatarsmd/AvatarSMDToolBar.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDToolBar.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarsmd;
 
 import ui.MainGUI;
@@ -47,9 +44,6 @@ import ui.TToolBar;
 
 import javax.swing.*;
 
-//import java.awt.*;
-//import java.awt.event.*;
-
 /**
  * Class AvatarSMDToolBar
  * Toolbar associated with AVATAR state Machines
@@ -59,11 +53,11 @@ import javax.swing.*;
  */
 public class AvatarSMDToolBar extends TToolBar {
     
-    
     public AvatarSMDToolBar(MainGUI _mgui) {
         super(_mgui);
     }
     
+    @Override
     protected void setActive(boolean b) {
         mgui.actions[TGUIAction.ASMD_EDIT].setEnabled(b);
         mgui.actions[TGUIAction.UML_NOTE].setEnabled(b);
@@ -75,7 +69,7 @@ public class AvatarSMDToolBar extends TToolBar {
 		mgui.actions[TGUIAction.ASMD_SEND_SIGNAL].setEnabled(b);
         mgui.actions[TGUIAction.ASMD_RECEIVE_SIGNAL].setEnabled(b);
         mgui.actions[TGUIAction.ASMD_LIBRARY_FUNCTION_CALL].setEnabled(b);
-		mgui.actions[TGUIAction.ASMD_PARALLEL].setEnabled(b);
+		//mgui.actions[TGUIAction.ASMD_PARALLEL].setEnabled(b);
 		mgui.actions[TGUIAction.ASMD_STATE].setEnabled(b);
 		mgui.actions[TGUIAction.ASMD_CHOICE].setEnabled(b);
 		mgui.actions[TGUIAction.ASMD_RANDOM].setEnabled(b);
@@ -97,6 +91,7 @@ public class AvatarSMDToolBar extends TToolBar {
 		mgui.updateZoomInfo();
     }
     
+    @Override
     protected void setButtons() {
         JButton button;
         
@@ -111,12 +106,10 @@ public class AvatarSMDToolBar extends TToolBar {
 		button = this.add(mgui.actions[TGUIAction.CONNECTOR_COMMENT]);
         button.addMouseListener(mgui.mouseHandler);
         
-        
         this.addSeparator();
         
 		button = this.add(mgui.actions[TGUIAction.ASMD_CONNECTOR]);
         button.addMouseListener(mgui.mouseHandler);
-		
         
         this.addSeparator();
         
@@ -185,7 +178,6 @@ public class AvatarSMDToolBar extends TToolBar {
 		
 		button = this.add(mgui.actions[TGUIAction.ACT_TOGGLE_AVATAR_ID]);
         button.addMouseListener(mgui.mouseHandler);
-       
     }
 } // Class
 
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java b/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java
index 2b06c17854421475e1f395acda02505c9a1b3264..bf7ff92a96d004e066f8be9cccd29dcfa8eb3bd4 100755
--- a/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java
@@ -36,24 +36,38 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.avatarsmd;
 
-import myutil.Conversion;
-import myutil.GraphicLib;
+import java.awt.Graphics;
+import java.awt.Rectangle;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Vector;
+
+import javax.swing.JFrame;
+
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
-import ui.*;
+
+import myutil.GraphicLib;
+import ui.AvatarMethod;
+import ui.ColorManager;
+import ui.Expression;
+import ui.GTURTLEModeling;
+import ui.MalformedModelingException;
+import ui.RangeExpression;
+import ui.TAttribute;
+import ui.TDiagramPanel;
+import ui.TGCWithoutInternalComponent;
+import ui.TGComponent;
+import ui.TGConnectingPoint;
+import ui.TGConnectingPointComment;
+import ui.TGState;
+import ui.WithAttributes;
 import ui.util.IconManager;
 import ui.window.JDialogAvatarTransition;
 
-import javax.swing.*;
-
-import java.awt.Graphics;
-import java.util.List;
-import java.util.Vector;
-
 /**
  * Class AvatarSMDTransitionInfo
  * Internal component that represents a set of parameter for a transition
@@ -65,19 +79,37 @@ import java.util.Vector;
  */
 public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent implements WithAttributes {
 
+	private static final String NULL_EXPR = "";
+
+	private static final String NULL_GUARD_EXPR = "[ ]";
+
+	static final String DISABLED_GUARD_EXPR = NULL_GUARD_EXPR;
+	
+	static final String DISABLED_DELAY_EXPR = NULL_EXPR;
+
+	static final String DISABLED_PROBABILITY_EXPR = NULL_EXPR;
+
+	static final String DISABLED_ACTION_EXPR = NULL_EXPR;
 //    private static String FILE_INFO = "(user files specified)";
     //   private static String CODE_INFO = "(user code specified)";
 
-    protected String guard;
-    protected String afterMin;
-    protected String afterMax;
-    protected String computeMin;
-    protected String computeMax;
-    protected String probability = "";
-    protected Vector<String> listOfActions;
+	private final Expression guard;
+    
+    private final RangeExpression afterDelay;
+
+    private final RangeExpression computeDelay;
+//    protected String guard;
+//    protected String afterMin;
+//    protected String afterMax;
+//    protected String computeMin;
+//    protected String computeMax;
+    private final Expression probability;
+    
+    private Vector<Expression> listOfActions;
+   // protected Vector<String> listOfActions;
 
-    protected String[] filesToInclude;
-    protected String[] codeToInclude;
+//    protected String[] filesToInclude;
+//    protected String[] codeToInclude;
 
     protected int minWidth = 10;
     protected int minHeight = 15;
@@ -92,13 +124,18 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme
         editable = true;
         removable = false;
 
-        guard = "[ ]";
-        afterMin = "";
-        afterMax = "";
-        computeMin = "";
-        computeMax = "";
-        filesToInclude = null;
-        codeToInclude = null;
+        guard = new Expression( NULL_GUARD_EXPR, NULL_GUARD_EXPR, null );
+        afterDelay = new RangeExpression( NULL_EXPR, NULL_EXPR, NULL_EXPR, "after (%s, %s)", null );
+        computeDelay = new RangeExpression( NULL_EXPR, NULL_EXPR, NULL_EXPR, "computeFor (%s, %s)", null );
+        probability = new Expression( NULL_EXPR, NULL_EXPR, "weight=%s" );
+
+//        guard = "[ ]";
+//        afterMin = "";
+//        afterMax = "";
+//        computeMin = "";
+//        computeMax = "";
+//        filesToInclude = null;
+//        codeToInclude = null;
 
 
         nbConnectingPoint = 4;
@@ -108,129 +145,205 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme
         connectingPoint[2] = new TGConnectingPointComment(this, 0, 0, true, true, 1.0, 0.5);
         connectingPoint[3] = new TGConnectingPointComment(this, 0, 0, true, true, 0.0, 0.5);
 
-        listOfActions = new Vector<String>();
+        listOfActions = new Vector<Expression>();
+        //listOfActions = new Vector<String>();
 
         myImageIcon = IconManager.imgic302;
     }
 
     public Vector<String> getListOfActions() {
-        return listOfActions;
+    	final Vector<String> actions = new Vector<String>( listOfActions.size() );
+    	
+    	for ( final Expression action : listOfActions ) {
+    		actions.add( action.getText() );
+    	}
+    	
+        return actions;
+//        return listOfActions;
     }
-
-    public void setGuard(String s) {
-        guard = s;
+    
+    public void setGuard(String s){
+    	guard.setText( s );
     }
 
     public void setProbability(String s) {
-        probability = s;
+        probability.setText( s );
     }
-
-    public void addAction(String s) {
-        listOfActions.add(s);
+    
+    public void addAction(String s){
+    	listOfActions.add( new Expression( s ) );
+//        listOfActions.add(s);
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         int step = 0;
-        String s;
+      //  String s;
         h = g.getFontMetrics().getHeight();
         for (int j = 0; j < nbConnectingPoint; j++) {
             connectingPoint[j].setCdY(-h + 1);
         }
 
-        ColorManager.setColor(g, getState(), 0);
-        int inc = h;
+//        ColorManager.setColor(g, getState(), 0);
+        // Issue #69
+        final int inc = getExpressionTextHight();
+//        int inc = h;
+
 
         boolean atLeastOneThing = false;
 
-        g.setColor(ColorManager.AVATAR_GUARD);
+        if ( !guard.isNull() ) {
+            atLeastOneThing = true;
 
-        if (tdp.isDrawingMain()) {
-            width = minWidth;
-        }
+            final String formattedExpr = guard.toString();
+        	final int textWidth = g.getFontMetrics().stringWidth( formattedExpr );
+            
+            if (tdp.isDrawingMain()) {
+                width = Math.max( textWidth, width );
+                width = Math.max(minWidth, width);
+            }
 
-        if (guard.length() > 0) {
-            if (guard.replaceAll("\\s+", "").compareTo("[]") != 0) {
-                g.drawString(guard, x, y + step);
-                atLeastOneThing = true;
-                if (tdp.isDrawingMain()) {
-                    width = Math.max(g.getFontMetrics().stringWidth(guard), width);
-                    width = Math.max(minWidth, width);
-                }
-                step += inc;
+            // Issue #69
+            if ( !guard.isEnabled() && getFather().isContainedInEnabledState() ) {
+            	g.setColor( ColorManager.DISABLED_FILLING );
+            	g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 );
             }
+            
+        	g.setColor( guard.isEnabled() ? ColorManager.AVATAR_GUARD : ColorManager.DISABLED );
+            g.drawString( formattedExpr, x, y + step) ;
+
+        	step += inc;
         }
 
-        g.setColor(ColorManager.AVATAR_TIME);
+        if ( !afterDelay.isNull() ) {
+            atLeastOneThing = true;
 
-        if (afterMin.length() > 0) {
-            if (afterMax.length() > 0) {
-                s = "after (" + afterMin + "," + afterMax + ")";
-                g.drawString(s, x, y + step);
-                atLeastOneThing = true;
-                if (tdp.isDrawingMain()) {
-                    width = Math.max(g.getFontMetrics().stringWidth(s), width);
-                    width = Math.max(minWidth, width);
-                }
-                step += inc;
-            } else {
-                s = "after (" + afterMin + ")";
-                g.drawString(s, x, y + step);
-                atLeastOneThing = true;
-                if (tdp.isDrawingMain()) {
-                    width = Math.max(g.getFontMetrics().stringWidth(s), width);
-                    width = Math.max(minWidth, width);
-                }
-                step += inc;
+            final String formattedExpr = afterDelay.toString();
+        	final int textWidth = g.getFontMetrics().stringWidth( formattedExpr );
+            
+            if (tdp.isDrawingMain()) {
+                width = Math.max( textWidth, width );
+                width = Math.max(minWidth, width);
+            }
+
+            // Issue #69
+            if ( !afterDelay.isEnabled() && getFather().isContainedInEnabledState() ) {
+            	g.setColor( ColorManager.DISABLED_FILLING );
+            	g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 );
             }
+
+            g.setColor( afterDelay.isEnabled() ? ColorManager.AVATAR_TIME : ColorManager.DISABLED );
+            g.drawString( formattedExpr, x, y + step );
+            
+            step += inc;
+//            }
+//            else {
+//            	final String s = "after (" + afterMinDelayExp + ")";
+//                
+//            	g.drawString(s, x, y + step);
+//                
+//            	atLeastOneThing = true;
+//                
+//                if (tdp.isDrawingMain()) {
+//                    width = Math.max(g.getFontMetrics().stringWidth(s), width);
+//                    width = Math.max(minWidth, width);
+//                }
+//                
+//                step += inc;
+//            }
         }
 
-        if (computeMin.length() > 0) {
-            if (computeMax.length() > 0) {
-                s = "computeFor (" + computeMin + "," + computeMax + ")";
-                g.drawString(s, x, y + step);
-                atLeastOneThing = true;
-                if (tdp.isDrawingMain()) {
-                    width = Math.max(g.getFontMetrics().stringWidth(s), width);
-                    width = Math.max(minWidth, width);
-                }
-                step += inc;
-            } else {
-                s = "computeFor (" + computeMin + ")";
-                g.drawString(s, x, y + step);
-                atLeastOneThing = true;
-                if (tdp.isDrawingMain()) {
-                    width = Math.max(g.getFontMetrics().stringWidth(s), width);
-                    width = Math.max(minWidth, width);
-                }
-                step += inc;
+        if ( !computeDelay.isNull() ) {
+        	atLeastOneThing = true;
+            
+            final String formattedExpr = computeDelay.toString();
+        	final int textWidth = g.getFontMetrics().stringWidth( formattedExpr );
+
+        	if (tdp.isDrawingMain()) {
+                width = Math.max( textWidth, width );
+                width = Math.max(minWidth, width);
             }
+
+            // Issue #69
+            if ( !computeDelay.isEnabled() && getFather().isContainedInEnabledState() ) {
+            	g.setColor( ColorManager.DISABLED_FILLING );
+            	g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 );
+            }
+
+            g.setColor( computeDelay.isEnabled() ? ColorManager.AVATAR_TIME : ColorManager.DISABLED );
+           	g.drawString( formattedExpr, x, y + step );
+            
+        	step += inc;
         }
 
-        if ((probability != null) && (probability.length() > 0)) {
-            s = "weight=" + probability;
-            g.drawString(s, x, y + step);
-            atLeastOneThing = true;
+        if ( !probability.isNull() ) {
+        	atLeastOneThing = true;
+            final String formattedExpr = probability.toString();
+        	final int textWidth = g.getFontMetrics().stringWidth( formattedExpr );
+            
             if (tdp.isDrawingMain()) {
-                width = Math.max(g.getFontMetrics().stringWidth(s), width);
+                width = Math.max( textWidth, width );
                 width = Math.max(minWidth, width);
             }
-            step += inc;
-        }
 
-        g.setColor(ColorManager.AVATAR_ACTION);
+            // Issue #69
+            if ( !probability.isEnabled() && getFather().isContainedInEnabledState() ) {
+            	g.setColor( ColorManager.DISABLED_FILLING );
+            	g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 );
+            }
+            
+        	g.setColor( probability.isEnabled() ? ColorManager.AVATAR_GUARD : ColorManager.DISABLED );
+            g.drawString( formattedExpr, x, y + step) ;
+
+        	step += inc;
+//            s = "weight=" + probability;
+//            g.drawString(s, x, y + step);
+//            atLeastOneThing = true;
+//            if (tdp.isDrawingMain()) {
+//                width = Math.max(g.getFontMetrics().stringWidth(s), width);
+//                width = Math.max(minWidth, width);
+//            }
+//            step += inc;
+        }
 
-        for (int i = 0; i < listOfActions.size(); i++) {
-            s = listOfActions.get(i);
-            if (s.length() > 0) {
-                g.drawString(s, x, y + step);
-                atLeastOneThing = true;
-                if (tdp.isDrawingMain()) {
-                    width = Math.max(g.getFontMetrics().stringWidth(s), width);
-                    width = Math.max(minWidth, width);
-                }
-                step += inc;
+     //   g.setColor(ColorManager.AVATAR_ACTION);
+
+        for( final Expression action : listOfActions ) {
+        	if ( !action.isNull() ) {
+	        	atLeastOneThing = true;
+	        	
+	        	final String formattedExpr = action.toString();
+	        	final int textWidth = g.getFontMetrics().stringWidth( formattedExpr );
+	            
+	            if (tdp.isDrawingMain()) {
+	                width = Math.max( textWidth, width );
+	                width = Math.max( minWidth, width);
+	            }
+
+	            // Issue #69
+	            if ( !action.isEnabled() && getFather().isContainedInEnabledState() ) {
+	            	g.setColor( ColorManager.DISABLED_FILLING );
+	            	g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 );
+	            }
+                
+	        	g.setColor( action.isEnabled() ? ColorManager.AVATAR_ACTION : ColorManager.DISABLED );
+	        	g.drawString( formattedExpr, x, y + step );
+
+	            step += inc;
             }
         }
+//        for (int i = 0; i < listOfActions.size(); i++) {
+//            s = listOfActions.get(i);
+//            if (s.length() > 0) {
+//                g.drawString(s, x, y + step);
+//                atLeastOneThing = true;
+//                if (tdp.isDrawingMain()) {
+//                    width = Math.max(g.getFontMetrics().stringWidth(s), width);
+//                    width = Math.max(minWidth, width);
+//                }
+//                step += inc;
+//            }
+//        }
 
         /*g.setColor(ColorManager.AVATAR_CODE);
 
@@ -263,13 +376,51 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme
             width = minWidth;
         }
 
-        ColorManager.setColor(g, state, 0);
+        //ColorManager.setColor(g, state, 0);
         if ((getState() == TGState.POINTER_ON_ME) || (getState() == TGState.POINTED) || (getState() == TGState.MOVING)) {
-            g.drawRoundRect(x - 1, y - h + 2, width + 2, height + 2, 5, 5);
+            ColorManager.setColor( g, state, 0, isEnabled() );
+
+            final Rectangle rectangle = new Rectangle( x - 1, y - h + 2, width + 2, height + 2 );
+
+            if ( inc != 0 && isOnMe( tdp.currentX, tdp.currentY ) == this ) {
+            	
+            	// Issue #69: Draw rectangle only around the pointed line
+            	final Expression selExpr = getSelectedExpression();
+            	final int exprWidth;
+            	
+            	if ( selExpr == null ) {
+            		exprWidth = width;
+            	}
+            	else {
+            		exprWidth  = g.getFontMetrics().stringWidth( selExpr.toString() );
+                    ColorManager.setColor( g, state, 0, selExpr.isEnabled() );
+            	}
+            	
+            	final int pointedExpOrder = getPointedExpressionOrder() - 1;
+            	
+            	rectangle.y = y + pointedExpOrder * inc + 2;
+            	rectangle.width = exprWidth + 2;
+            	rectangle.height = inc + 2;
+            }
+
+            g.drawRoundRect( rectangle.x, rectangle.y, rectangle.width, rectangle.height, 5, 5 );
+          //  g.drawRoundRect(x - 1, y - h + 2, width + 2, height + 2, 5, 5);
         }
     }
 
+    private int getExpressionTextHight() {
+    	return h;
+    }
+    
+    private Integer getPointedExpressionOrder() {
+    	if ( getExpressionTextHight() != 0 ) {
+    		return ( tdp.currentY + 10 - y ) / getExpressionTextHight();
+    	}
+    	
+    	return null;
+    }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y - h + 2, width, height)) {
             return this;
@@ -286,7 +437,18 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme
     public boolean editOndoubleClick(JFrame frame) {
         List<TAttribute> attributes = tdp.getMGUI().getAllAttributes();
         List<AvatarMethod> methods = tdp.getMGUI().getAllMethods();
-        JDialogAvatarTransition jdat = new JDialogAvatarTransition(frame, "Setting transition parameters", guard, afterMin, afterMax, computeMin, computeMax, listOfActions, attributes, methods, filesToInclude, codeToInclude, probability);
+        JDialogAvatarTransition jdat = new JDialogAvatarTransition(	frame, 
+																	"Setting transition parameters",
+																	getGuard(),
+																	getAfterMinDelay(),
+																	getAfterMaxDelay(),
+//																	getComputeMinDelay(),
+//																	getComputeMaxDelay(),
+																	listOfActions,
+																	attributes,
+																	methods,
+																	getProbability() );
+        //JDialogAvatarTransition jdat = new JDialogAvatarTransition(frame, "Setting transition parameters", guard, afterMin, afterMax, computeMin, computeMax, listOfActions, attributes, methods, filesToInclude, codeToInclude, probability);
         //  jdat.setSize(600, 550);
         GraphicLib.centerOnParent(jdat, 600, 550);
         jdat.setVisible(true); // blocked until dialog has been closed
@@ -296,84 +458,115 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme
             return false;
         }
 
-        guard = jdat.getGuard().trim();
+        guard.setText( jdat.getGuard().trim() );
 
-        int index = guard.indexOf('[');
+        int index = getGuard().indexOf('[');
         if (index == -1) {
-            guard = "[ " + guard + " ]";
+        	guard.setText( "[ " + guard + " ]" );
         }
 
-        afterMin = jdat.getAfterMin().trim();
-        afterMax = jdat.getAfterMax().trim();
-        computeMin = jdat.getComputeMin().trim();
-        computeMax = jdat.getComputeMax().trim();
-        filesToInclude = jdat.getFilesToInclude();
-        codeToInclude = jdat.getCodeToInclude();
-        probability = jdat.getProbability();
+        afterDelay.getMinExpression().setText( jdat.getAfterMin().trim() );
+        afterDelay.getMaxExpression().setText( jdat.getAfterMax().trim() );
+//        computeDelay.getMinExpression().setText( jdat.getComputeMin().trim() );
+//        computeDelay.getMaxExpression().setText( jdat.getComputeMax().trim() );
+        listOfActions.clear();
+        listOfActions.addAll( jdat.getActions() );
+//        guard = jdat.getGuard().trim();
+//
+//        int index = guard.indexOf('[');
+//        if (index == -1) {
+//            guard = "[ " + guard + " ]";
+//        }
+//
+//        afterMin = jdat.getAfterMin().trim();
+//        afterMax = jdat.getAfterMax().trim();
+//        computeMin = jdat.getComputeMin().trim();
+//        computeMax = jdat.getComputeMax().trim();
+//        filesToInclude = jdat.getFilesToInclude();
+//        codeToInclude = jdat.getCodeToInclude();
+        probability.setText( jdat.getProbability().trim() );
+        
         return true;
     }
+    
+    private String toXML( 	final String tag,
+    						final Expression expression ) {
+    	return "<" + tag + " value=\"" + GTURTLEModeling.transformString( expression.getText() ) + "\" enabled=\"" + expression.isEnabled() + "\"/>" + System.lineSeparator();
+    }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
-        sb.append("<guard value=\"");
-        sb.append(GTURTLEModeling.transformString(guard));
-        sb.append("\" />\n");
-
-        sb.append("<afterMin value=\"");
-        sb.append(GTURTLEModeling.transformString(afterMin));
-        sb.append("\" />\n");
-
-        sb.append("<afterMax value=\"");
-        sb.append(GTURTLEModeling.transformString(afterMax));
-        sb.append("\" />\n");
-
-        sb.append("<computeMin value=\"");
-        sb.append(GTURTLEModeling.transformString(computeMin));
-        sb.append("\" />\n");
-
-        sb.append("<computeMax value=\"");
-        sb.append(GTURTLEModeling.transformString(computeMax));
-        sb.append("\" />\n");
-
-        sb.append("<probability value=\"");
-        sb.append(GTURTLEModeling.transformString(probability));
-        sb.append("\" />\n");
-
-        for (int i = 0; i < listOfActions.size(); i++) {
-            sb.append("<actions value=\"");
-            sb.append(GTURTLEModeling.transformString(listOfActions.get(i)));
-            sb.append("\" />\n");
-        }
-
-        if (filesToInclude != null) {
-            for (int i = 0; i < filesToInclude.length; i++) {
-                sb.append("<filesToIncludeLine value=\"");
-                sb.append(GTURTLEModeling.transformString(filesToInclude[i]));
-                sb.append("\" />\n");
-            }
-        }
-
-        if (codeToInclude != null) {
-            for (int i = 0; i < codeToInclude.length; i++) {
-                sb.append("<codeToIncludeLine value=\"");
-                sb.append(GTURTLEModeling.transformString(codeToInclude[i]));
-                sb.append("\" />\n");
-            }
+        sb.append( toXML( "guard", guard ) );
+        sb.append( toXML( "afterMin", afterDelay.getMinExpression() ) );
+        sb.append( toXML( "afterMax", afterDelay.getMaxExpression() ) );
+        sb.append( toXML( "computeMin", computeDelay.getMinExpression() ) );
+        sb.append( toXML( "computeMax", computeDelay.getMaxExpression() ) );
+        sb.append( toXML( "probability", probability ) );
+//        sb.append("<guard value=\"");
+//        sb.append(GTURTLEModeling.transformString(guard));
+//        sb.append("\" />\n");
+//
+//        sb.append("<afterMin value=\"");
+//        sb.append(GTURTLEModeling.transformString(afterMin));
+//        sb.append("\" />\n");
+//
+//        sb.append("<afterMax value=\"");
+//        sb.append(GTURTLEModeling.transformString(afterMax));
+//        sb.append("\" />\n");
+//
+//        sb.append("<computeMin value=\"");
+//        sb.append(GTURTLEModeling.transformString(computeMin));
+//        sb.append("\" />\n");
+//
+//        sb.append("<computeMax value=\"");
+//        sb.append(GTURTLEModeling.transformString(computeMax));
+//        sb.append("\" />\n");
+
+//        sb.append("<probability value=\"");
+//        sb.append(GTURTLEModeling.transformString(probability));
+//        sb.append("\" />\n");
+
+        for( final Expression action : listOfActions ) {
+        	sb.append( toXML( "actions", action )  );
         }
+//
+//        for (int i = 0; i < listOfActions.size(); i++) {
+//            sb.append("<actions value=\"");
+//            sb.append(GTURTLEModeling.transformString(listOfActions.get(i)));
+//            sb.append("\" />\n");
+//        }
+//
+//        if (filesToInclude != null) {
+//            for (int i = 0; i < filesToInclude.length; i++) {
+//                sb.append("<filesToIncludeLine value=\"");
+//                sb.append(GTURTLEModeling.transformString(filesToInclude[i]));
+//                sb.append("\" />\n");
+//            }
+//        }
+//
+//        if (codeToInclude != null) {
+//            for (int i = 0; i < codeToInclude.length; i++) {
+//                sb.append("<codeToIncludeLine value=\"");
+//                sb.append(GTURTLEModeling.transformString(codeToInclude[i]));
+//                sb.append("\" />\n");
+//            }
+//        }
 
         sb.append("</extraparam>\n");
+        
         return new String(sb);
     }
 
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException {
         //
-        String tmpFilesToInclude = "";
-        String tmpCodeToInclude = "";
+//        String tmpFilesToInclude = "";
+//        String tmpCodeToInclude = "";
 
         try {
-            listOfActions = new Vector<String>();
-
+            listOfActions = new Vector<Expression>();
+//            listOfActions = new Vector<String>();
             NodeList nli;
             Node n1, n2;
             Element elt;
@@ -393,43 +586,100 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme
                             if (elt.getTagName().equals("guard")) {
                                 s = elt.getAttribute("value");
                                 if (s != null) {
-                                    guard = s;
+                                	guard.setText( s );
+
+                                    // Issue #69 loading enabling parameters
+                                    s = elt.getAttribute("enabled");
+                                    
+                                    if ( s != null && !s.isEmpty() ) {
+                                        guard.setEnabled( Boolean.parseBoolean( s ) );
+                                    }
+//                                    guard = s;
                                 }
                             }
                             if (elt.getTagName().equals("afterMin")) {
                                 s = elt.getAttribute("value");
                                 if (s != null) {
-                                    afterMin = s;
+                                    afterDelay.getMinExpression().setText( s );
+
+                                    // Issue #69 loading enabling parameters
+                                    s = elt.getAttribute( "enabled" );
+                                    
+                                    if ( s != null && !s.isEmpty() ) {
+                                    	afterDelay.getMinExpression().setEnabled( Boolean.parseBoolean( s ) );
+                                    }
+//                                    afterMin = s;
                                 }
                             }
                             if (elt.getTagName().equals("afterMax")) {
                                 s = elt.getAttribute("value");
                                 if (s != null) {
-                                    afterMax = s;
+                                    afterDelay.getMaxExpression().setText( s );
+
+                                    // Issue #69 loading enabling parameters
+                                    s = elt.getAttribute("enabled");
+                                    
+                                    if ( s != null && !s.isEmpty() ) {
+                                    	afterDelay.getMaxExpression().setEnabled( Boolean.parseBoolean( s ) );
+                                    }
+//                                    afterMax = s;
                                 }
                             }
                             if (elt.getTagName().equals("computeMin")) {
                                 s = elt.getAttribute("value");
                                 if (s != null) {
-                                    computeMin = s;
+                                    computeDelay.getMinExpression().setText( s );
+
+                                    // Issue #69 loading enabling parameters
+                                    s = elt.getAttribute("enabled");
+                                    
+                                    if ( s != null && !s.isEmpty() ) {
+                                    	computeDelay.getMinExpression().setEnabled( Boolean.parseBoolean( s ) );
+                                    }
+                                    //computeMin = s;
                                 }
                             }
                             if (elt.getTagName().equals("computeMax")) {
                                 s = elt.getAttribute("value");
                                 if (s != null) {
-                                    computeMax = s;
+                                    computeDelay.getMaxExpression().setText( s );
+
+                                    // Issue #69 loading enabling parameters
+                                    s = elt.getAttribute("enabled");
+                                    
+                                    if ( s != null && !s.isEmpty() ) {
+                                    	computeDelay.getMaxExpression().setEnabled( Boolean.parseBoolean( s ) );
+                                    }
+                                    //computeMax = s;
                                 }
                             }
                             if (elt.getTagName().equals("probability")) {
                                 s = elt.getAttribute("value");
                                 if (s != null) {
-                                    probability = s;
+                                	probability.setText( s );
+
+                                    // Issue #69 loading enabling parameters
+                                    s = elt.getAttribute("enabled");
+                                    
+                                    if ( s != null && !s.isEmpty() ) {
+                                    	probability.setEnabled( Boolean.parseBoolean( s ) );
+                                    }
+//                                    probability = s;
                                 }
                             }
                             if (elt.getTagName().equals("actions")) {
                                 s = elt.getAttribute("value");
                                 if (s != null) {
-                                    listOfActions.add(s);
+                                	final Expression action = new Expression( s );
+                                    listOfActions.add( action );
+
+                                    // Issue #69 loading enabling parameters
+                                    s = elt.getAttribute("enabled");
+                                    
+                                    if ( s != null && !s.isEmpty() ) {
+                                    	action.setEnabled( Boolean.parseBoolean( s ) );
+                                    }
+                                    //listOfActions.add(s);
                                 }
                             }
 
@@ -456,100 +706,306 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
-        }
-
-
-        if (tmpFilesToInclude.trim().length() == 0) {
-            filesToInclude = null;
-        } else {
-            filesToInclude = Conversion.wrapText(tmpFilesToInclude);
-        }
-        if (tmpCodeToInclude.trim().length() == 0) {
-            codeToInclude = null;
-        } else {
-            codeToInclude = Conversion.wrapText(tmpCodeToInclude);
+            throw new MalformedModelingException( e );
         }
+//
+//
+//        if (tmpFilesToInclude.trim().length() == 0) {
+//            filesToInclude = null;
+//        } else {
+//            filesToInclude = Conversion.wrapText(tmpFilesToInclude);
+//        }
+//        if (tmpCodeToInclude.trim().length() == 0) {
+//            codeToInclude = null;
+//        } else {
+//            codeToInclude = Conversion.wrapText(tmpCodeToInclude);
+//        }
     }
 
     public String getGuard() {
-        return guard;
+        return guard.getText();
+//        return guard;
+    }
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    public String getEffectiveGuard() {
+    	return guard.getEffectiveExpression( DISABLED_GUARD_EXPR );
     }
 
     public String getAfterMinDelay() {
-        return afterMin;
+        return afterDelay.getMinExpression().getText();
+//        return afterMin;
+    }
+
+    /**
+     * Issue #69
+     * @return
+     */
+    public String getEffectiveAfterMinDelay() {
+        return afterDelay.getMinExpression().getEffectiveExpression( DISABLED_DELAY_EXPR );
     }
 
     public String getAfterMaxDelay() {
-        return afterMax;
+        return afterDelay.getMaxExpression().getText();
+        //return afterMax;
+    }
+
+    /**
+     * Issue #69
+     * @return
+     */
+    public String getEffectiveAfterMaxDelay() {
+        return afterDelay.getMaxExpression().getEffectiveExpression( DISABLED_DELAY_EXPR );
     }
 
     public String getComputeMinDelay() {
-        return computeMin;
+        return computeDelay.getMinExpression().getText();
+        //return computeMin;
     }
 
-    public String getComputeMaxDelay() {
-        return computeMax;
+    /**
+     * Issue #69
+     * @return
+     */
+    public String getEffectiveComputeMinDelay() {
+        return computeDelay.getMinExpression().getEffectiveExpression( DISABLED_DELAY_EXPR );
     }
 
-    public String getProbability() {
-        return probability;
+    public String getComputeMaxDelay() {
+        return computeDelay.getMaxExpression().getText();
+        //return computeMax;
     }
 
-    public void setTimes(String minDelay, String maxDelay, String minCompute, String maxCompute) {
-        computeMin = minCompute;
-        computeMax = maxCompute;
-        afterMin = minDelay;
-        afterMax = maxDelay;
+    /**
+     * Issue #69
+     * @return
+     */
+    public String getEffectiveComputeMaxDelay() {
+        return computeDelay.getMaxExpression().getEffectiveExpression( DISABLED_DELAY_EXPR );
     }
 
-    public Vector<String> getActions() {
-        return listOfActions;
+    public String getProbability() {
+        return probability.getText();
     }
 
-    public boolean hasFilesToInclude() {
-        return ((filesToInclude != null) && (filesToInclude.length > 0));
+    public String getEffectiveProbability() {
+        return probability.getEffectiveExpression( DISABLED_PROBABILITY_EXPR );
     }
 
-    public boolean hasCodeToInclude() {
-        return ((codeToInclude != null) && (codeToInclude.length > 0));
+    public void setTimes(String minDelay, String maxDelay, String minCompute, String maxCompute) {
+		computeDelay.getMinExpression().setText( minCompute );
+		computeDelay.getMaxExpression().setText( maxCompute );
+		afterDelay.getMinExpression().setText( minDelay );
+		afterDelay.getMaxExpression().setText(maxDelay );
+//        computeMin = minCompute;
+//        computeMax = maxCompute;
+//        afterMin = minDelay;
+//        afterMax = maxDelay;
     }
 
-    public String getFilesToInclude() {
-        if (filesToInclude == null) {
-            return null;
-        }
-        String ret = "";
-        for (int i = 0; i < filesToInclude.length; i++) {
-            ret += filesToInclude[i] + "\n";
-        }
-        return ret;
+    public Vector<String> getActions() {
+    	final Vector<String> actionExpressions = new Vector<String>( listOfActions.size() );
+    	
+    	for ( final Expression action : listOfActions ) {
+    		actionExpressions.add( action.getText() ); 
+    	}
+    	
+    	return actionExpressions;
+//        return listOfActions;
     }
 
-    public String getCodeToInclude() {
-        if (codeToInclude == null) {
-            return null;
-        }
-        String ret = "";
-        for (int i = 0; i < codeToInclude.length; i++) {
-            ret += codeToInclude[i] + "\n";
-        }
-        return ret;
+    /**
+     * Issue #69
+     * @return
+     */
+    public Vector<String> getEffectiveActions() {
+    	final Vector<String> actionExpressions = new Vector<String>( listOfActions.size() );
+    	
+    	for ( final Expression action : listOfActions ) {
+    		actionExpressions.add( action.getEffectiveExpression( DISABLED_ACTION_EXPR ) ); 
+    	}
+    	
+    	return actionExpressions;
     }
+//
+//    public boolean hasFilesToInclude() {
+//        return ((filesToInclude != null) && (filesToInclude.length > 0));
+//    }
+//
+//    public boolean hasCodeToInclude() {
+//        return ((codeToInclude != null) && (codeToInclude.length > 0));
+//    }
+//
+//    public String getFilesToInclude() {
+//        if (filesToInclude == null) {
+//            return null;
+//        }
+//        String ret = "";
+//        for (int i = 0; i < filesToInclude.length; i++) {
+//            ret += filesToInclude[i] + "\n";
+//        }
+//        return ret;
+//    }
+//
+//    public String getCodeToInclude() {
+//        if (codeToInclude == null) {
+//            return null;
+//        }
+//        String ret = "";
+//        for (int i = 0; i < codeToInclude.length; i++) {
+//            ret += codeToInclude[i] + "\n";
+//        }
+//        return ret;
+//    }
 
     public String getAttributes() {
         String attr = "";
-        if (guard.length() > 0)
+        if ( !guard.isNull())
             attr += " guard: " + getGuard();
-        if (afterMin.length() > 0 || afterMax.length()>0)
-            attr += " delay: [" + afterMin + "," + afterMax + "] ";
-        if (probability.length() > 0)
-            attr += " weight:" + probability;
+        if (!afterDelay.isNull() )
+            attr += " delay: [" + afterDelay.getMinExpression().getText() + "," + afterDelay.getMaxExpression().getText() + "] ";
+        if ( !probability.isNull() )
+            attr += " weight:" + getProbability();
 
-        for(String s: listOfActions)
-            attr += " / " + s;
+        for(final Expression action : listOfActions) {
+            attr += " / " + action.getText();
+        }
 
         return attr;
+    }
+    
+    @Override
+    public AvatarSMDConnector getFather() {
+    	return (AvatarSMDConnector) super.getFather();
+    }
+
+    @Override
+    public void setFather( final TGComponent _father ) {
+    	if ( _father != null && !( _father instanceof AvatarSMDConnector ) ) {
+    		throw new IllegalArgumentException( "Father should be an instance of '" + AvatarSMDConnector.class.getName() + "'." );
+    	}
+    	
+    	super.setFather( _father );
+    }
 
+	/* Issue #69
+	 * (non-Javadoc)
+	 * @see ui.AbstractCDElement#canBeDisabled()
+	 */
+	@Override
+    public boolean canBeDisabled() {
+		final AvatarSMDConnector transitionCon = getFather();
+		
+		if ( transitionCon == null ) {
+			return false;
+		}
+		
+    	return transitionCon.canBeDisabledContainer();
     }
+	
+	@Override
+	public void setEnabled( final boolean enabled ) {
+		final Expression selExpr = getSelectedExpression();
+		
+		if ( selExpr == null ) {
+			guard.setEnabled( enabled );
+			afterDelay.setEnabled( enabled );
+			computeDelay.setEnabled( enabled );
+			probability.setEnabled( enabled );
+			
+			for ( final Expression actionExpr : listOfActions ) {
+				actionExpr.setEnabled( enabled );
+			}
+		}
+		else {
+			selExpr.setEnabled( enabled );
+		}
+	}
+	
+	@Override
+	public boolean isEnabled() {
+		return isEnabledCheckNull( false ); 
+	}
+	
+	public boolean isEnabledNotNull() {
+		return isEnabledCheckNull( true );
+	}
+	
+	private boolean isEnabledCheckNull( final boolean checkNull ) {
+		
+		// Used by the UI to toggle enabled
+		final Expression selExpr = getSelectedExpression();
+	
+		if ( selExpr != null ) {
+			return selExpr.isEnabled();
+		}
+
+		for ( final Expression actExpr : listOfActions ) {
+			if ( actExpr.isEnabled() ) {
+				return true;
+			}
+		}
+		
+		return 	( guard.isEnabled() && ( !checkNull || !guard.isNull() ) ) ||
+				( afterDelay.isEnabled() && ( !checkNull || !afterDelay.isNull() ) ) ||
+				( computeDelay.isEnabled() && ( !checkNull || !computeDelay.isNull() ) ) ||
+				( probability.isEnabled() && ( !checkNull || !probability.isNull() ) );
+	}
+	
+	public boolean isNull() {
+		for ( final Expression actExpr : listOfActions ) {
+			if ( !actExpr.isNull() ) {
+				return false;
+			}
+		}
+		
+		return guard.isNull() && afterDelay.isNull() && computeDelay.isNull() && probability.isNull();
+	}
+	
+	private List<Expression> getNonNullExpressions() {
+		final List<Expression> expressions = new ArrayList<Expression>();
+		
+		if ( !guard.isNull() ) {
+			expressions.add( guard );
+		}
+
+		if ( !afterDelay.isNull() ) {
+			expressions.add( afterDelay );
+		}
+
+		if ( !computeDelay.isNull() ) {
+			expressions.add( computeDelay );
+		}
+
+		if ( !probability.isNull() ) {
+			expressions.add( probability );
+		}
+
+		for ( final Expression expr : listOfActions ) {
+			if ( !expr.isNull() ) {
+				expressions.add( expr );
+			}
+		}
+		
+		return expressions;
+	}
+	
+	private Expression getSelectedExpression() {
+		final Integer selectedExpressionIndex = getPointedExpressionOrder();
+		
+		if ( selectedExpressionIndex == null || selectedExpressionIndex < 0 ) {
+			return null;
+		}
+		
+		final List<Expression> expressions = getNonNullExpressions();
+		
+		if ( selectedExpressionIndex >= expressions.size() ) {
+			return null;
+		}
+			
+		return expressions.get( selectedExpressionIndex );
+	}
 }
diff --git a/src/main/java/ui/avatarsmd/EnablingAvatarSMDConnectorVisitor.java b/src/main/java/ui/avatarsmd/EnablingAvatarSMDConnectorVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..a528ab7029f01f90d1edc9b217ef059f3e3bb630
--- /dev/null
+++ b/src/main/java/ui/avatarsmd/EnablingAvatarSMDConnectorVisitor.java
@@ -0,0 +1,31 @@
+package ui.avatarsmd;
+
+import ui.CDElement;
+import ui.TrackingCDElementVisitor;
+
+public class EnablingAvatarSMDConnectorVisitor extends TrackingCDElementVisitor {
+	
+	private final boolean enabled;
+	
+	public EnablingAvatarSMDConnectorVisitor( final boolean enabled ) {
+		super();
+		
+		this.enabled = enabled;
+	}
+
+	@Override
+	public boolean visit( final CDElement element ) {
+		if ( !super.visit( element ) ) {
+			return false;
+		}
+
+		if ( element instanceof AvatarSMDConnector ) {
+			( (AvatarSMDConnector) element ).getAvatarSMDTransitionInfo().setEnabled( enabled );
+		}
+		else if ( element.canBeDisabled() ) {
+			element.setEnabled( enabled );
+		}
+		
+		return true;
+	}
+}
diff --git a/src/main/java/ui/avatarsmd/FindAvatarSMDComponentsToBeTranslatedVisitor.java b/src/main/java/ui/avatarsmd/FindAvatarSMDComponentsToBeTranslatedVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..7a1877ad55238b4f8846ebfe463f2d2b2dc2c49c
--- /dev/null
+++ b/src/main/java/ui/avatarsmd/FindAvatarSMDComponentsToBeTranslatedVisitor.java
@@ -0,0 +1,105 @@
+package ui.avatarsmd;
+
+import java.util.LinkedHashSet;
+import java.util.Set;
+
+import ui.CDElement;
+import ui.TGComponent;
+import ui.TGConnector;
+import ui.TrackingCDElementVisitor;
+
+public class FindAvatarSMDComponentsToBeTranslatedVisitor extends TrackingCDElementVisitor {
+
+	private final Set<TGComponent> componentsToBeTranslated;
+	
+	private final Set<TGConnector> prunedConnectors;
+	
+	public FindAvatarSMDComponentsToBeTranslatedVisitor() {
+		componentsToBeTranslated = new LinkedHashSet<TGComponent>();
+		prunedConnectors = new LinkedHashSet<TGConnector>();
+	}
+
+	@Override
+	public boolean visit( final CDElement element ) {
+		if ( !super.visit( element ) ) {
+			return false;
+		}
+		
+		if ( element instanceof TGComponent && !( element instanceof TGConnector ) ) {
+			final TGComponent component = (TGComponent) element;
+			
+			if ( shouldBeTranslated( component ) ) {
+				componentsToBeTranslated.add( (TGComponent) element );
+			}
+		}
+		
+		return true;
+	}
+
+	public Set<TGComponent> getComponentsToBeTranslated() {
+		return componentsToBeTranslated;
+	}
+    
+    private boolean shouldBeTranslated( final TGComponent diagramCompo ) {
+    	
+    	// Do not translate components contained in disabled components (e.g. composite state machines)
+    	if ( diagramCompo.getFather() != null && !diagramCompo.getFather().isEnabled() ) {
+    		return false;
+    	}
+
+    	if ( diagramCompo.isEnabled() ) {
+    		return true;
+    	}
+    	
+    	// We don't know if the target component can accept more than one input connections so we keep the node
+    	if ( diagramCompo.getInputConnectors().size() > 1 ) {
+    		return true;
+    	}
+    	
+    	// We don't know if the source component can accept more than one output connections so we keep the node
+    	if ( diagramCompo.getOutputConnectors().size() > 1 ) {
+    		return true;
+    	}
+    	
+    	final AvatarSMDConnector inputConnector = (AvatarSMDConnector) diagramCompo.getInputConnectors().get( 0 );
+    	final TGComponent previousCompo = (TGComponent) inputConnector.getTGConnectingPointP1().getFather();
+    	
+    	// The previous component in the graph is not translated so we don't know if the new input edge will be 
+    	// null or enabled so we translate the component
+    	if ( !componentsToBeTranslated.contains( previousCompo ) ) {
+    		return true;
+    	}
+    	
+    	final AvatarSMDTransitionInfo inputTransInfo = inputConnector.getAvatarSMDTransitionInfo();
+    	
+    	// The input transition is null or disabled so the component does not need to be translated and the transition
+    	// can be merged with the output transition
+    	if ( inputTransInfo.isNull() || !inputTransInfo.isEnabledNotNull() ) {
+    		prunedConnectors.add( inputConnector );
+    		
+    		return false;
+    	}
+    	
+    	if ( diagramCompo.getOutputConnectors().isEmpty() ) {
+    		return true;
+    	}
+    	
+    	final AvatarSMDConnector outputConnector = (AvatarSMDConnector) diagramCompo.getOutputConnectors().get( 0 );
+
+    	final AvatarSMDTransitionInfo outputTransInfo = outputConnector.getAvatarSMDTransitionInfo();
+    	
+    	// The output transition is null or disabled so the component does not need to be translated and the transition
+    	// can be merged with the input transition
+    	if ( outputTransInfo.isNull() || !inputTransInfo.isEnabledNotNull() ) {
+    		prunedConnectors.add( outputConnector );
+
+    		return false;
+    	}
+    	
+    	return true;
+    }
+
+	public Set<TGConnector> getPrunedConnectors() {
+		return prunedConnectors;
+	}
+}
diff --git a/src/main/java/ui/avatarsmd/FindNextEnabledAvatarSMDConnectingPointVisitor.java b/src/main/java/ui/avatarsmd/FindNextEnabledAvatarSMDConnectingPointVisitor.java
new file mode 100644
index 0000000000000000000000000000000000000000..004dd4746d65faf915b16bc1404d8617ea151911
--- /dev/null
+++ b/src/main/java/ui/avatarsmd/FindNextEnabledAvatarSMDConnectingPointVisitor.java
@@ -0,0 +1,43 @@
+package ui.avatarsmd;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import ui.CDElement;
+import ui.FindNextEnabledConnectingPointVisitor;
+import ui.TGComponent;
+import ui.TGConnector;
+
+public class FindNextEnabledAvatarSMDConnectingPointVisitor extends FindNextEnabledConnectingPointVisitor {
+	
+	private final Set<TGComponent> componentsToBeTranslated;
+
+	public FindNextEnabledAvatarSMDConnectingPointVisitor( 	final Set<TGConnector> disabledConnectors,
+															final Set<TGComponent> componentsToBeTranslated ) {
+		super( disabledConnectors );
+		
+		this.componentsToBeTranslated = new HashSet<TGComponent>();
+		this.componentsToBeTranslated.addAll( componentsToBeTranslated );
+	}
+	
+	@Override
+	protected boolean pruneConnector( final TGConnector connector ) {
+		final AvatarSMDConnector smdCon = (AvatarSMDConnector) connector;
+		
+		final AvatarSMDState containingState = smdCon.getContainingState();
+    	
+		// Do not translate connectors that connect two component contained in a disabled state machine
+    	if ( containingState != null && !containingState.isEnabled() ) {
+    		return true;
+    	}
+
+    	final AvatarSMDTransitionInfo transInfo = smdCon.getAvatarSMDTransitionInfo();
+
+		return !transInfo.isEnabledNotNull() || transInfo.isNull();
+	}
+	
+	@Override
+	protected boolean pruneElement( final CDElement diagramElement ) {
+		return !componentsToBeTranslated.contains( diagramElement );
+	}
+}
diff --git a/src/main/java/ui/ftd/FTDFault.java b/src/main/java/ui/ftd/FTDFault.java
index e14ba3352c50b5d268175d7a2998aa1a24393dff..f4862392ae7491656f6c2fe9e1914f8feb1ce1d6 100644
--- a/src/main/java/ui/ftd/FTDFault.java
+++ b/src/main/java/ui/ftd/FTDFault.java
@@ -36,12 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ftd;
 
-
 import myutil.GraphicLib;
 import myutil.TraceManager;
 import org.w3c.dom.Element;
@@ -54,11 +50,6 @@ import ui.window.JDialogFault;
 import javax.swing.*;
 import java.awt.*;
 
-
-//import org.w3c.dom.*;
-//import org.xml.sax.*;
-//import javax.xml.parsers.*;
-
 /**
  * Class FTDFault
  * Panel used for drawing fault trees
@@ -67,7 +58,7 @@ import java.awt.*;
  * @author Ludovic APVRILLE
  */
 
-public class FTDFault extends TGCScalableWithInternalComponent implements SwallowedTGComponent, WithAttributes, CheckableAccessibility, CanBeDisabled {
+public class FTDFault extends TGCScalableWithInternalComponent implements SwallowedTGComponent, WithAttributes, CheckableAccessibility/*, Issue #69 CanBeDisabled*/ {
     public static double DEFAULT_PROBABILITY = 0.5;
 
     private int textY1 = 3;
@@ -139,6 +130,7 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
         myImageIcon = IconManager.imgic702;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         String ster;
         if (isRootFault) {
@@ -183,7 +175,11 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
                 g.setColor(ColorManager.FTD_FAULT);
             }
         } else {
-            g.setColor(ColorManager.FTD_FAULT_DISABLED);
+    		// Issue #69: Disabled color now managed in TGComponent / ColorManager
+	    	// For filled shapes ensure background color is white so that text is
+	    	// readable
+	    	g.setColor( ColorManager.DISABLED_FILLING );
+            //g.setColor(ColorManager.FTD_FAULT_DISABLED);
         }
 
         g.fill3DRect(x+1, y+1, width-1, height-1, true);
@@ -234,25 +230,22 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
                 }
             }
 
-            if (!isEnabled()) {
-                String val = "disabled";
-                w = g.getFontMetrics().stringWidth(val);
-                //int h =  currentFontSize + (int)(textY1 * tdp.getZoom());
-                g.setFont(f.deriveFont(Font.ITALIC));
-                g.drawString(val, x + (width - w - 5), y + height - 2);
-            }
-
-
-
+            // Issue #69
+//            if (!isEnabled()) {
+//                String val = "disabled";
+//                w = g.getFontMetrics().stringWidth(val);
+//                //int h =  currentFontSize + (int)(textY1 * tdp.getZoom());
+//                g.setFont(f.deriveFont(Font.ITALIC));
+//                g.drawString(val, x + (width - w - 5), y + height - 2);
+//            }
         } else {
             TraceManager.addDev("-------------------------------------------------- Cannot display text of attack");
         }
 
         g.setFont(fold);
-
     }
 
-    public void setValue(String val, Graphics g) {
+    private void setValue(String val, Graphics g) {
         oldValue = value;
         String ster;
         if (isRootFault) {
@@ -278,12 +271,10 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
             resizeWithFather();
         }
 
-
         g.setFont(f0);
-
-        //
     }
 
+    @Override
     public void resizeWithFather() {
         if ((father != null) && (father instanceof FTDBlock)) {
             //
@@ -293,7 +284,7 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
         }
     }
 
-
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String tmp;
         boolean error = false;
@@ -328,8 +319,6 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
             probability = new Double(dialog.getProbability()).doubleValue();
         }
 
-
-
         isRootFault = dialog.isRootFault();
 
         if (error) {
@@ -342,18 +331,20 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
         return !error;
     }
 
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
-
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
         }
         return null;
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.FTD_FAULT;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<info description=\"" + description);
@@ -361,14 +352,13 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
         sb.append("\" probability=\"" + probability);
         sb.append("\" />\n");
         sb.append("</extraparam>\n");
+
         return new String(sb);
     }
 
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{
-        //
         try {
-
             NodeList nli;
             Node n1, n2;
             Element elt;
@@ -418,11 +408,10 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
     }
 
-
     public double getProbability() {
         return probability;
     }
@@ -445,7 +434,6 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
         return s;
     }
 
-
     public boolean isRootFault() {
         return isRootFault;
     }
@@ -456,6 +444,13 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo
         setCdRectangle(tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY());
 
     }
-
-
+    
+    /**
+     * Issue #69
+     * @return
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	return true;
+    }
 }
diff --git a/src/main/java/ui/ncdd/NCDiagramPanel.java b/src/main/java/ui/ncdd/NCDiagramPanel.java
index 87f1f197fcf1e938392137896550f04341f55a66..19a5228ee27f6be872053612dab0b551aac9f27f 100755
--- a/src/main/java/ui/ncdd/NCDiagramPanel.java
+++ b/src/main/java/ui/ncdd/NCDiagramPanel.java
@@ -36,20 +36,22 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ncdd;
 
-
-import org.w3c.dom.Element;
-import ui.*;
-
 import java.util.ArrayList;
-import java.util.Iterator;
 import java.util.LinkedList;
+import java.util.List;
 import java.util.ListIterator;
 
+import org.w3c.dom.Element;
+
+import ui.MainGUI;
+import ui.TDPWithAttributes;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGConnectingPoint;
+import ui.TToolBar;
+
 /**
  * Class NCDiagramPanel
  * Panel for drawing an NC diagram
@@ -66,6 +68,7 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
         addMouseMotionListener(tdmm);*/
 	}
 
+	@Override
 	public boolean actionOnDoubleClick(TGComponent tgc) {
 		//
         /*if (tgc instanceof TCDTClass) {
@@ -86,6 +89,7 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return false;
 	}
 
+	@Override
 	public boolean actionOnAdd(TGComponent tgc) {
         /*if (tgc instanceof TCDTClass) {
             TCDTClass tgcc = (TCDTClass)(tgc);
@@ -96,6 +100,7 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return false;
 	}
 
+	@Override
 	public boolean actionOnRemove(TGComponent tgc) {
         /*if (tgc instanceof TCDTClass) {
             TCDTClass tgcc = (TCDTClass)(tgc);
@@ -106,6 +111,7 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return false;
 	}
 
+	@Override
 	public boolean actionOnValueChanged(TGComponent tgc) {
         /*if (tgc instanceof TCDTClass) {
             return actionOnDoubleClick(tgc);
@@ -113,26 +119,32 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return false;
 	}
 
+	@Override
 	public String getXMLHead() {
 		return "<NCDiagramPanel name=\"" + name + "\"" + sizeParam() + displayParam() + " >";
 	}
 
+	@Override
 	public String getXMLTail() {
 		return "</NCDiagramPanel>";
 	}
 
+	@Override
 	public String getXMLSelectedHead() {
 		return "<NCDiagramPanelCopy name=\"" + name + "\" xSel=\"" + xSel + "\" ySel=\"" + ySel + "\" widthSel=\"" + widthSel + "\" heightSel=\"" + heightSel + "\" >";
 	}
 
+	@Override
 	public String getXMLSelectedTail() {
 		return "</NCDiagramPanelCopy>";
 	}
 
+	@Override
 	public String getXMLCloneHead() {
 		return "<NCDiagramPanelCopy name=\"" + name + "\" xSel=\"" + 0 + "\" ySel=\"" + 0 + "\" widthSel=\"" + 0 + "\" heightSel=\"" + 0 + "\" >";
 	}
 
+	@Override
 	public String getXMLCloneTail() {
 		return "</NCDiagramPanelCopy>";
 	}
@@ -177,8 +189,8 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
         return true;
     }*/
 
-	public LinkedList<TGComponent> getListOfNodes() {
-		LinkedList<TGComponent> ll = new LinkedList<>();
+	public List<TGComponent> getListOfNodes() {
+		List<TGComponent> ll = new LinkedList<>();
 
 		for (TGComponent tgc : componentList) {
 			if (tgc instanceof NCEqNode) {
@@ -194,8 +206,8 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return ll;
 	}
 
-	public LinkedList<NCEqNode> getListOfEqNode() {
-		LinkedList<NCEqNode> ll = new LinkedList<>();
+	public List<NCEqNode> getListOfEqNode() {
+		List<NCEqNode> ll = new LinkedList<>();
 
 		for (TGComponent tgc : this.componentList) {
 			if (tgc instanceof NCEqNode) {
@@ -218,8 +230,8 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return null;
 	}
 
-	public LinkedList<NCSwitchNode> getListOfSwitchNode() {
-		LinkedList<NCSwitchNode> ll = new LinkedList<>();
+	public List<NCSwitchNode> getListOfSwitchNode() {
+		List<NCSwitchNode> ll = new LinkedList<>();
 		for (TGComponent tgc : this.componentList) {
 			if (tgc instanceof NCSwitchNode) {
 				ll.add((NCSwitchNode) tgc);
@@ -229,8 +241,8 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return ll;
 	}
 
-	public LinkedList<NCConnectorNode> getListOfLinks() {
-		LinkedList<NCConnectorNode> ll = new LinkedList<>();
+	public List<NCConnectorNode> getListOfLinks() {
+		List<NCConnectorNode> ll = new LinkedList<>();
 		for (TGComponent tgc : this.componentList) {
 			if (tgc instanceof NCConnectorNode) {
 				ll.add((NCConnectorNode) tgc);
@@ -240,15 +252,15 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return ll;
 	}
 
-	public ArrayList<String> getInterfaces(NCSwitchNode sw) {
-		ListIterator iterator = getListOfLinks().listIterator();
+	public List<String> getInterfaces(NCSwitchNode sw) {
+		ListIterator<NCConnectorNode> iterator = getListOfLinks().listIterator();
 		NCConnectorNode lk;
 		TGConnectingPoint p;
 
-		ArrayList<String> list = new ArrayList<String>();
+		List<String> list = new ArrayList<String>();
 
 		while (iterator.hasNext()) {
-			lk = (NCConnectorNode) (iterator.next());
+			lk = iterator.next();
 			p = lk.getTGConnectingPointP1();
 			if (sw.belongsToMe(p)) {
 				list.add(lk.getInterfaceName());
@@ -263,10 +275,10 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return list;
 	}
 
-	public ArrayList<NCRoute> getAllRoutesFor(NCSwitchNode sw, NCTrafficArtifact arti) {
-		ArrayList<NCRoute> list = sw.getRoutesList();
+	public List<NCRoute> getAllRoutesFor(NCSwitchNode sw, NCTrafficArtifact arti) {
+		List<NCRoute> list = sw.getRoutesList();
 
-		ArrayList<NCRoute> ret = new ArrayList<NCRoute>();
+		List<NCRoute> ret = new ArrayList<NCRoute>();
 
 		for (NCRoute route : list) {
 			if (route.traffic.equals(arti.getValue())) {
@@ -277,15 +289,15 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return ret;
 	}
 
-	public ArrayList<NCSwitchNode> getSwitchesOfEq(NCEqNode eq) {
-		ListIterator iterator = getListOfLinks().listIterator();
+	public List<NCSwitchNode> getSwitchesOfEq(NCEqNode eq) {
+		ListIterator<NCConnectorNode> iterator = getListOfLinks().listIterator();
 		NCConnectorNode lk;
 		TGConnectingPoint p;
 
 		ArrayList<NCSwitchNode> list = new ArrayList<NCSwitchNode>();
 
 		while (iterator.hasNext()) {
-			lk = (NCConnectorNode) (iterator.next());
+			lk = iterator.next();
 			p = lk.getTGConnectingPointP1();
 			if (eq.belongsToMe(p)) {
 				list.add((NCSwitchNode) (getComponentToWhichBelongs(lk.getTGConnectingPointP2())));
@@ -300,15 +312,15 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return list;
 	}
 
-	public ArrayList<NCConnectorNode> getConnectorOfEq(NCEqNode eq) {
-		ListIterator iterator = getListOfLinks().listIterator();
+	public List<NCConnectorNode> getConnectorOfEq(NCEqNode eq) {
+		ListIterator<NCConnectorNode> iterator = getListOfLinks().listIterator();
 		NCConnectorNode lk;
 		TGConnectingPoint p;
 
-		ArrayList<NCConnectorNode> list = new ArrayList<NCConnectorNode>();
+		List<NCConnectorNode> list = new ArrayList<NCConnectorNode>();
 
 		while (iterator.hasNext()) {
-			lk = (NCConnectorNode) (iterator.next());
+			lk = iterator.next();
 			p = lk.getTGConnectingPointP1();
 			if (eq.belongsToMe(p)) {
 				list.add(lk);
@@ -323,14 +335,14 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 		return list;
 	}
 
-	public ArrayList<NCTrafficArtifact> getTrafficArtifacts() {
-		ListIterator iterator = getListOfEqNode().listIterator();
+	public List<NCTrafficArtifact> getTrafficArtifacts() {
+		ListIterator<NCEqNode> iterator = getListOfEqNode().listIterator();
 		NCEqNode eq;
 
-		ArrayList<NCTrafficArtifact> list = new ArrayList<NCTrafficArtifact>();
+		List<NCTrafficArtifact> list = new ArrayList<NCTrafficArtifact>();
 
 		while (iterator.hasNext()) {
-			eq = (NCEqNode) (iterator.next());
+			eq = iterator.next();
 			eq.addAllTrafficArtifacts(list);
 		}
 
@@ -338,11 +350,11 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 	}
 
 	public NCEqNode getNCEqNodeOf(NCTrafficArtifact arti) {
-		ListIterator iterator = getListOfEqNode().listIterator();
+		ListIterator<NCEqNode> iterator = getListOfEqNode().listIterator();
 		NCEqNode eq;
 
 		while (iterator.hasNext()) {
-			eq = (NCEqNode) (iterator.next());
+			eq = iterator.next();
 			if (eq.hasTraffic(arti)) {
 				return eq;
 			}
@@ -352,14 +364,14 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 
 	}
 
-	public ArrayList<String> getTraffics() {
-		ListIterator iterator = getListOfEqNode().listIterator();
+	public List<String> getTraffics() {
+		ListIterator<NCEqNode> iterator = getListOfEqNode().listIterator();
 		NCEqNode eq;
 
-		ArrayList<String> list = new ArrayList<String>();
+		List<String> list = new ArrayList<String>();
 
 		while (iterator.hasNext()) {
-			eq = (NCEqNode) (iterator.next());
+			eq = iterator.next();
 			eq.addAllTraffics(list);
 		}
 
@@ -399,7 +411,6 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes {
 	}
 
 	public NCConnectorNode getLinkByName(String name) {
-
 		for (TGComponent tgc : this.componentList) {
 			if (tgc instanceof NCConnectorNode) {
 				NCConnectorNode link = (NCConnectorNode) tgc;
diff --git a/src/main/java/ui/ncdd/NCEqNode.java b/src/main/java/ui/ncdd/NCEqNode.java
index a92bfe543b96f483b8bdc444bc28ebab7022388d..563cde58463f45053563da8f32ae44610e99dd0e 100755
--- a/src/main/java/ui/ncdd/NCEqNode.java
+++ b/src/main/java/ui/ncdd/NCEqNode.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ncdd;
 
 import myutil.GraphicLib;
@@ -47,8 +44,13 @@ import ui.util.IconManager;
 import ui.window.JDialogNCEqNode;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics;
+import java.awt.Polygon;
 import java.util.ArrayList;
+import java.util.List;
 import java.util.Vector;
 
 
@@ -113,6 +115,7 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo
         myImageIcon = IconManager.imgic700;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		Color c = g.getColor();
 		g.draw3DRect(x, y, width, height, true);
@@ -146,6 +149,7 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo
 		g.drawImage(IconManager.imgic1100.getImage(), x + width - 20, y + 4, null);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         
         Polygon pol = new Polygon();
@@ -179,6 +183,7 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo
 		return type;
 	}
 	
+    @Override
 	public boolean editOndoubleClick(JFrame frame) {
 	//
         String oldName = name;
@@ -225,16 +230,18 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo
         return true;
     }
     
-    
+    @Override
     public int getType() {
         return TGComponentManager.NCDD_EQNODE;
     }
 	
+    @Override
 	public boolean acceptSwallowedTGComponent(TGComponent tgc) {
         return tgc instanceof NCTrafficArtifact;
 
     }
     
+    @Override
     public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) {
    
         if (tgc instanceof NCTrafficArtifact) {
@@ -251,11 +258,11 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo
        
     }
     
+    @Override
     public void removeSwallowedTGComponent(TGComponent tgc) {
         removeInternalComponent(tgc);
     }
     
-    
     public Vector<NCTrafficArtifact> getArtifactList() {
         Vector<NCTrafficArtifact> v = new Vector<NCTrafficArtifact> ();
         for(int i=0; i<nbInternalTGComponent; i++) {
@@ -266,13 +273,13 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo
         return v;
     }
 	
-	public void addAllTraffics(ArrayList<String> list) {
+	public void addAllTraffics( List<String> list) {
 		for(int i=0; i<nbInternalTGComponent; i++) {
            list.add(tgcomponent[i].getValue());
         }
 	}
 	
-	public void addAllTrafficArtifacts(ArrayList<NCTrafficArtifact> list) {
+	public void addAllTrafficArtifacts( List<NCTrafficArtifact> list) {
 		for(int i=0; i<nbInternalTGComponent; i++) {
            list.add((NCTrafficArtifact)(tgcomponent[i]));
         }
@@ -296,14 +303,13 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo
         
     }
     
- 
-    
+    @Override
    	public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_NODE_NC;
       }
 	 
-	  public String getAttributes() {
-		  String attr = "Type: ";
+    public String getAttributes() {
+		String attr = "Type: ";
 		if (type == 0) {
 			attr += "Standard\n";
 		} else {
@@ -316,8 +322,7 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo
 			pol = "SP";
 		}
 		attr += "Scheduling policy = " + pol + "\n";
-		return attr;
 		
+		return attr;
 	}
-    
 }
diff --git a/src/main/java/ui/ncdd/NCRouteArtifact.java b/src/main/java/ui/ncdd/NCRouteArtifact.java
index 5254257b7a49d03a6880b0fbe2154233745bc629..3f5e3c2bfe8b6c177bc9382b1e7109af235afb50 100755
--- a/src/main/java/ui/ncdd/NCRouteArtifact.java
+++ b/src/main/java/ui/ncdd/NCRouteArtifact.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.ncdd;
 
 import myutil.GraphicLib;
@@ -50,8 +47,11 @@ import ui.util.IconManager;
 import ui.window.JDialogNCRoute;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Graphics;
 import java.util.ArrayList;
+import java.util.List;
 import java.util.Vector;
 
 /**
@@ -95,8 +95,8 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal
 		myImageIcon = IconManager.imgic702;
 	}
 
+	@Override
 	public void internalDrawing(Graphics g) {
-
 		if (oldValue.compareTo(value) != 0) {
 			setValue(value, g);
 		}
@@ -117,10 +117,9 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal
 		g.drawLine(x+width-space-cran, y+space+cran, x + width-space, y+space+cran);
 
 		g.drawString(value, x + textX , y + textY);
-
 	}
 
-	public void setValue(String val, Graphics g) {
+	private void setValue(String val, Graphics g) {
 		oldValue = value;
 		int w  = g.getFontMetrics().stringWidth(value);
 		int w1 = Math.max(minWidth, w + 2 * textX + fileX + space);
@@ -130,9 +129,9 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal
 			width = w1;
 			resizeWithFather();
 		}
-		//
 	}
 
+	@Override
 	public void resizeWithFather() {
 		if ((father != null) && ((father instanceof NCEqNode) || (father instanceof NCSwitchNode))) {
 			//
@@ -142,15 +141,16 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal
 		}
 	}
 
+	@Override
 	public boolean editOndoubleClick(JFrame frame) {
 		String tmp;
 		boolean error = false;
 
 		Vector<NCRoute> vroutes = new Vector<NCRoute>(routes);
 
-		ArrayList<String> inputInterfaces = ((NCDiagramPanel)tdp).getInterfaces((NCSwitchNode)(getFather()));
-		ArrayList<String> traffics = ((NCDiagramPanel)tdp).getTraffics();
-		ArrayList<String> outputInterfaces = new ArrayList<>(inputInterfaces);
+		List<String> inputInterfaces = ((NCDiagramPanel)tdp).getInterfaces((NCSwitchNode)(getFather()));
+		List<String> traffics = ((NCDiagramPanel)tdp).getTraffics();
+		List<String> outputInterfaces = new ArrayList<>(inputInterfaces);
 
 		JDialogNCRoute dialog = new JDialogNCRoute(frame, "Setting route attributes", value, vroutes, inputInterfaces, traffics, outputInterfaces);
 		//	dialog.setSize(900, 500);
@@ -196,6 +196,7 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal
 
 	}
 
+	@Override
 	public TGComponent isOnMe(int _x, int _y) {
 		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
 			return this;
@@ -203,10 +204,12 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal
 		return null;
 	}
 
+	@Override
 	public int getType() {
 		return TGComponentManager.NCDD_ROUTE_ARTIFACT;
 	}
 
+	@Override
 	protected String translateExtraParam() {
 		StringBuffer sb = new StringBuffer("<extraparam>\n");
 		for(NCRoute route: routes) {
@@ -265,7 +268,7 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal
 		//makeFullValue();
 	}
 
-	public java.util.List<NCRoute> getRoutes() {
+	public List<NCRoute> getRoutes() {
 		return routes;
 	}
 
diff --git a/src/main/java/ui/tmlad/TGConnectingPointTMLAD.java b/src/main/java/ui/tmlad/TGConnectingPointTMLAD.java
index a1f5ab090278a65ba89fe4397722fe2ea02150b9..a397a102bd7980d1f1f2be480f381e377249fe64 100755
--- a/src/main/java/ui/tmlad/TGConnectingPointTMLAD.java
+++ b/src/main/java/ui/tmlad/TGConnectingPointTMLAD.java
@@ -36,16 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
- 
 package ui.tmlad;
 
-//import java.awt.*;
-
 import ui.CDElement;
 import ui.TGComponentManager;
-import ui.TGConnectingPointWidthHeight;
+import ui.ad.TGConnectingPointAD;
 
 /**
  * Class TGConnectingPointTMLAD
@@ -54,21 +49,14 @@ import ui.TGConnectingPointWidthHeight;
  * @version 1.0 28/10/2005
  * @author Ludovic APVRILLE
  */
-public class TGConnectingPointTMLAD extends  TGConnectingPointWidthHeight{
+public class TGConnectingPointTMLAD extends TGConnectingPointAD /* Issue #69TGConnectingPoint*/ {
 
 	public TGConnectingPointTMLAD(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) {
 		super(_container, _x, _y, _in, _out, _w, _h);
 	}
 
+	@Override
 	public boolean isCompatibleWith(int type) {
         return type == TGComponentManager.CONNECTOR_TMLAD;
     }
-       
 }
-
-
-
-
-    
-
-
diff --git a/src/main/java/ui/tmlad/TGConnectorTMLAD.java b/src/main/java/ui/tmlad/TGConnectorTMLAD.java
index c7943dd2e9293f4c44041a3306b7578016c8178c..35955d3d254f9431278c572aff4451a787b45746 100755
--- a/src/main/java/ui/tmlad/TGConnectorTMLAD.java
+++ b/src/main/java/ui/tmlad/TGConnectorTMLAD.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADConnector;
 import ui.util.IconManager;
 
 import java.awt.*;
@@ -56,8 +54,9 @@ import java.util.Vector;
  * @version 1.0 30/09/2004
  * @author Ludovic APVRILLE
  */
-public  class TGConnectorTMLAD extends TGConnector {
-    protected int arrowLength = 10;
+public  class TGConnectorTMLAD extends TADConnector /* Issue #69 TGConnector*/ {
+    
+	protected int arrowLength = 10;
     
     public TGConnectorTMLAD(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) {
         super(_x, _y,  _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint);
@@ -65,6 +64,7 @@ public  class TGConnectorTMLAD extends TGConnector {
         myImageIcon = IconManager.imgic202;
     }
     
+    @Override
     protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
         if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) {
             g.drawLine(x1, y1, x2, y2);
@@ -73,14 +73,8 @@ public  class TGConnectorTMLAD extends TGConnector {
         }
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.CONNECTOR_TMLAD;
     }
 }
-
-
-
-
-
-
-
diff --git a/src/main/java/ui/tmlad/TMLADActionState.java b/src/main/java/ui/tmlad/TMLADActionState.java
index 75d464612c7a1a151e895f1d2d015f0b4b515c7f..a216f7d0454b47ce6a819814f67940bcfe3a7503 100755
--- a/src/main/java/ui/tmlad/TMLADActionState.java
+++ b/src/main/java/ui/tmlad/TMLADActionState.java
@@ -36,17 +36,25 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
+import java.awt.Color;
+import java.awt.Graphics;
 
-import java.awt.*;
-import java.awt.geom.Line2D;
+import ui.AllowedBreakpoint;
+import ui.BasicErrorHighlight;
+import ui.CheckableAccessibility;
+import ui.CheckableLatency;
+import ui.ColorManager;
+import ui.EmbeddedComment;
+import ui.ErrorHighlight;
+import ui.PostJavaCode;
+import ui.PreJavaCode;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADActionState;
 
 /**
  * Class TMLADActionState
@@ -55,36 +63,45 @@ import java.awt.geom.Line2D;
  * @version 1.0 21/11/2005
  * @author Ludovic APVRILLE
  */
-public class TMLADActionState extends TGCOneLineText implements PreJavaCode, PostJavaCode, CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
-    protected int lineLength = 5;
-    protected int textX =  5;
-    protected int textY =  15;
-    protected int arc = 5;
-	
-	protected int stateOfError = 0; // Not yet checked
+public class TMLADActionState extends TADActionState/* Issue #69 TGCOneLineText */implements PreJavaCode, PostJavaCode, CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+//    protected int lineLength = 5;
+//    protected int textX =  5;
+//    protected int textY =  15;
+//    protected int arc = 5;
+//	
+//	protected int stateOfError = 0; // Not yet checked
     
     public TMLADActionState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
-        
-        width = 30;
-        height = 20;
-        minWidth = 30;
-        
-        nbConnectingPoint = 2;
-        connectingPoint = new TGConnectingPoint[2];
-        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0);
-        
-        moveable = true;
-        editable = true;
-        removable = true;
-        
-        value = "action";
-        name = "action state";
-        
-        myImageIcon = IconManager.imgic204;
+//        
+//        width = 30;
+//        height = 20;
+//        minWidth = 30;
+//        
+//        nbConnectingPoint = 2;
+//        connectingPoint = new TGConnectingPoint[2];
+//        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+//        connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0);
+//        
+//        moveable = true;
+//        editable = true;
+//        removable = true;
+//        
+//        value = "action";
+//        name = "action state";
+//        
+//        myImageIcon = IconManager.imgic204;
     }
     
+    @Override
+    protected void createConnectingPoints() {
+    	nbConnectingPoint = 2;
+    	connectingPoint = new TGConnectingPoint[ nbConnectingPoint ];
+    	connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+    	connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0);
+    }
+
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -94,9 +111,9 @@ public class TMLADActionState extends TGCOneLineText implements PreJavaCode, Pos
             //updateConnectingPoints();
         }
 		
-		if (stateOfError > 0)  {
+		if (stateAction > 0)  {
 			Color c = g.getColor();
-			switch(stateOfError) {
+			switch(stateAction) {
 			case ErrorHighlight.OK:
 				g.setColor(ColorManager.ATTRIBUTE_BOX_ACTION);
 				break;
@@ -112,25 +129,25 @@ public class TMLADActionState extends TGCOneLineText implements PreJavaCode, Pos
         g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
         
         g.drawString(value, x + (width - w) / 2 , y + textY);
-		
-    }
-    
-    public TGComponent isOnMe(int _x, int _y) {
-        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-            return this;
-        }
-        
-        if ((int)(Line2D.ptSegDistSq(x +width/2, y- lineLength,  x+width/2, y + lineLength + height, _x, _y)) < distanceSelected) {
-			return this;	
-		}
-        
-        return null;
     }
     
-    public String getAction() {
-        return value;
-    }
+//    public TGComponent isOnMe(int _x, int _y) {
+//        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//            return this;
+//        }
+//        
+//        if ((int)(Line2D.ptSegDistSq(x +width/2, y- lineLength,  x+width/2, y + lineLength + height, _x, _y)) < distanceSelected) {
+//			return this;	
+//		}
+//        
+//        return null;
+//    }
+//    
+//    public String getAction() {
+//        return value;
+//    }
     
+    @Override
     public String getAction(int cpt) {
         if (cpt <0) {
             return value;
@@ -156,17 +173,17 @@ public class TMLADActionState extends TGCOneLineText implements PreJavaCode, Pos
         return ret; 
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_ACTION_STATE;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
 	
-	public void setStateAction(int _stateAction) {
-		stateOfError = _stateAction;
-	}
-    
-    
+//	public void setStateAction(int _stateAction) {
+//		stateOfError = _stateAction;
+//	}
 }
diff --git a/src/main/java/ui/tmlad/TMLADChoice.java b/src/main/java/ui/tmlad/TMLADChoice.java
index 6d054ed994d909f352f682fb856cdb00912c18fc..c2f1175b4bf8fe8966880b691ae749a43b9cfcce 100755
--- a/src/main/java/ui/tmlad/TMLADChoice.java
+++ b/src/main/java/ui/tmlad/TMLADChoice.java
@@ -36,17 +36,16 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
-import java.awt.geom.Line2D;
+import ui.AllowedBreakpoint;
+import ui.BasicErrorHighlight;
+import ui.EmbeddedComment;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADChoice;
 
 /**
  * Class TMLADChoice
@@ -55,13 +54,13 @@ import java.awt.geom.Line2D;
  * @version 1.0 21/11/2005
  * @author Ludovic APVRILLE
  */
-public class TMLADChoice extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
-    private int lineLength = 10;
-    private int lineOutLength = 25;
-    private int textX1, textY1, textX2, textY2, textX3, textY3;
-    
-    protected int stateOfError = 0; // Not yet checked
-    public final static int NOT_VERIFIED = 0;
+public class TMLADChoice extends TADChoice /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+//    private int lineLength = 10;
+//    private int lineOutLength = 25;
+//    private int textX1, textY1, textX2, textY2, textX3, textY3;
+//    
+//    protected int stateOfError = 0; // Not yet checked
+//    public final static int NOT_VERIFIED = 0;
     public final static int REACHABLE = 1;
     public final static int NOT_REACHABLE = 2;
 
@@ -70,150 +69,161 @@ public class TMLADChoice extends TGCWithInternalComponent implements EmbeddedCom
     public TMLADChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
         
-        width = 30;
-        height = 30;
-        textX1 = -lineOutLength;
-        textY1 = height/2 - 5;
-        textX2 = width + 5;
-        textY2 = height/2 - 5;
-        textX3 = width /2 + 5;
-        textY3 = height + 15;
-        
-        nbConnectingPoint = 4;
-        connectingPoint = new TGConnectingPoint[nbConnectingPoint];
-        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[1] = new TGConnectingPointTMLAD(this, -lineOutLength, 0, false, true, 0.0, 0.5);
-        connectingPoint[2] = new TGConnectingPointTMLAD(this, lineOutLength, 0, false, true, 1.0, 0.5);
-        connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineOutLength,  false, true, 0.5, 1.0);
-        
-        nbInternalTGComponent = 3;
-        tgcomponent = new TGComponent[nbInternalTGComponent];
-        
-        TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 1");
-        tgcomponent[0] = tgc;
-        
-        tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 2");
-        tgcomponent[1] = tgc;
-        
-        tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 3");
-        tgcomponent[2] = tgc;
-        
-        moveable = true;
-        editable = false;
-        removable = true;
-        
-        name = "choice";
-        
-        myImageIcon = IconManager.imgic208;
-    }
-    
-    public void internalDrawing(Graphics g) {
-		if (stateOfError > 0)  {
-			Color c = g.getColor();
-			switch(stateOfError) {
-			case ErrorHighlight.OK:
-				g.setColor(ColorManager.CHOICE);
-				break;
-			default:
-				g.setColor(ColorManager.UNKNOWN_BOX_ACTION);
-			}
-			// Making the polygon
-			int [] px1 = {x+(width/2), x+width+2, x + (width/2), x};
-			int [] py1 = {y, y + height/2, y+height+2, y+height/2};
-			g.fillPolygon(px1, py1, 4);
-			g.setColor(c);
-		}
-		
-        g.drawLine(x+(width/2), y, x+width, y + height/2);
-        g.drawLine(x, y + height / 2, x+width/2, y + height);
-        g.drawLine(x + width/2, y, x, y + height/2);
-        g.drawLine(x + width, y + height/2, x + width/2, y + height);
-        
-        g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
-        g.drawLine(x, y + height/2, x-lineOutLength, y + height/2);
-        g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2);
-        g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength);
-    }
-    
-    public TGComponent isOnOnlyMe(int _x, int _y) {
-        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-            return this;
-        }
-        
-        if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) {
-			return this;	
-		}
-		
-		if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
-			return this;
-		}
-		
-		if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
-			return this;
-		}
-		
-		if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) {
-			return this;
-		}
-        
-        return null;
-    }
-    
-    public String getGuard(int i) {
-        if ((i>=0) && (i<nbInternalTGComponent)) {
-            return tgcomponent[i].getValue();
-        }
-        return "";
+//        width = 30;
+//        height = 30;
+//        textX1 = -lineOutLength;
+//        textY1 = height/2 - 5;
+//        textX2 = width + 5;
+//        textY2 = height/2 - 5;
+//        textX3 = width /2 + 5;
+//        textY3 = height + 15;
+//        
+//        nbConnectingPoint = 4;
+//        connectingPoint = new TGConnectingPoint[nbConnectingPoint];
+//        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+//        connectingPoint[1] = new TGConnectingPointTMLAD(this, -lineOutLength, 0, false, true, 0.0, 0.5);
+//        connectingPoint[2] = new TGConnectingPointTMLAD(this, lineOutLength, 0, false, true, 1.0, 0.5);
+//        connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineOutLength,  false, true, 0.5, 1.0);
+//        
+//        nbInternalTGComponent = 3;
+//        tgcomponent = new TGComponent[nbInternalTGComponent];
+//        
+//        TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 1");
+//        tgcomponent[0] = tgc;
+//        
+//        tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 2");
+//        tgcomponent[1] = tgc;
+//        
+//        tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 3");
+//        tgcomponent[2] = tgc;
+//        
+//        moveable = true;
+//        editable = false;
+//        removable = true;
+//        
+//        name = "choice";
+//        
+//        myImageIcon = IconManager.imgic208;
     }
-    public void drawSecurityInformation(Graphics g) {
-        if (securityInformation > 0) {
-
-            Color c = g.getColor();
-            Color c1;
-            switch(securityInformation) {
-            case REACHABLE:
-                c1 = Color.green;
-                break;
-            case NOT_REACHABLE:
-                c1 = Color.red;
-                break;
-            default:
-                return;
-            }
-
-            GraphicLib.arrowWithLine(g, 1, 0, 10, x-30, y+4, x-15, y+4, true);
-            g.drawOval(x-11, y-3, 7, 9);
-            g.setColor(c1);
-            g.fillRect(x-12, y, 9, 7);
-            g.setColor(c);
-            g.drawRect(x-12, y, 9, 7);
-
-        }
 
+    @Override
+    protected void createConnectingPoints() {
+    	nbConnectingPoint = 4;
+    	connectingPoint = new TGConnectingPoint[nbConnectingPoint];
+    	connectingPoint[ 0 ] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+    	connectingPoint[ 1 ] = new TGConnectingPointTMLAD(this, -lineOutLength, 0, false, true, 0.0, 0.5);
+    	connectingPoint[ 2 ] = new TGConnectingPointTMLAD(this, lineOutLength, 0, false, true, 1.0, 0.5);
+    	connectingPoint[ 3 ] = new TGConnectingPointTMLAD(this, 0, lineOutLength,  false, true, 0.5, 1.0);
     }
     
-    public void setGuard(String guard, int i) {
-         if ((i>=0) && (i<nbInternalTGComponent)) {
-            tgcomponent[i].setValue(guard);
-         }
-    }
+//    public void internalDrawing(Graphics g) {
+//		if (stateOfError > 0)  {
+//			Color c = g.getColor();
+//			switch(stateOfError) {
+//			case ErrorHighlight.OK:
+//				g.setColor(ColorManager.CHOICE);
+//				break;
+//			default:
+//				g.setColor(ColorManager.UNKNOWN_BOX_ACTION);
+//			}
+//			// Making the polygon
+//			int [] px1 = {x+(width/2), x+width+2, x + (width/2), x};
+//			int [] py1 = {y, y + height/2, y+height+2, y+height/2};
+//			g.fillPolygon(px1, py1, 4);
+//			g.setColor(c);
+//		}
+//		
+//        g.drawLine(x+(width/2), y, x+width, y + height/2);
+//        g.drawLine(x, y + height / 2, x+width/2, y + height);
+//        g.drawLine(x + width/2, y, x, y + height/2);
+//        g.drawLine(x + width, y + height/2, x + width/2, y + height);
+//        
+//        g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
+//        g.drawLine(x, y + height/2, x-lineOutLength, y + height/2);
+//        g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2);
+//        g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength);
+//    }
+//    
+//    public TGComponent isOnOnlyMe(int _x, int _y) {
+//        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//            return this;
+//        }
+//        
+//        if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) {
+//			return this;	
+//		}
+//		
+//		if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
+//			return this;
+//		}
+//		
+//		if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
+//			return this;
+//		}
+//		
+//		if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) {
+//			return this;
+//		}
+//        
+//        return null;
+//    }
+    
+//    public String getGuard(int i) {
+//        if ((i>=0) && (i<nbInternalTGComponent)) {
+//            return tgcomponent[i].getValue();
+//        }
+//        return "";
+//    }
+//    public void drawSecurityInformation(Graphics g) {
+//        if (securityInformation > 0) {
+//
+//            Color c = g.getColor();
+//            Color c1;
+//            switch(securityInformation) {
+//            case REACHABLE:
+//                c1 = Color.green;
+//                break;
+//            case NOT_REACHABLE:
+//                c1 = Color.red;
+//                break;
+//            default:
+//                return;
+//            }
+//
+//            GraphicLib.arrowWithLine(g, 1, 0, 10, x-30, y+4, x-15, y+4, true);
+//            g.drawOval(x-11, y-3, 7, 9);
+//            g.setColor(c1);
+//            g.fillRect(x-12, y, 9, 7);
+//            g.setColor(c);
+//            g.drawRect(x-12, y, 9, 7);
+//
+//        }
+//
+//    }
+//    
+//    public void setGuard(String guard, int i) {
+//         if ((i>=0) && (i<nbInternalTGComponent)) {
+//            tgcomponent[i].setValue(guard);
+//         }
+//    }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_CHOICE;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
-	
-	public void setStateAction(int _stateAction) {
-		stateOfError = _stateAction;
-	}
-    
+//	
+//	public void setStateAction(int _stateAction) {
+//		stateOfError = _stateAction;
+//	}
 }
diff --git a/src/main/java/ui/tmlad/TMLADDecrypt.java b/src/main/java/ui/tmlad/TMLADDecrypt.java
index 5c75a5f9554e6f2c88027b57d71a585fe8b57b29..09c37ac7b23a6c6bd2dd073b906f32bce059de58 100755
--- a/src/main/java/ui/tmlad/TMLADDecrypt.java
+++ b/src/main/java/ui/tmlad/TMLADDecrypt.java
@@ -44,6 +44,7 @@ import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import ui.*;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 import ui.window.JDialogMultiString;
 
@@ -60,7 +61,7 @@ import java.util.ArrayList;
  * @author Ludovic APVRILLE
  * @version 1.0 21/11/2005
  */
-public class TMLADDecrypt extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADDecrypt extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     private int lineLength = 5;
     //    private int textX, textY;
     private int ilength = 20;
@@ -92,6 +93,7 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde
         myImageIcon = IconManager.imgic214;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         if (stateOfError > 0) {
             Color c = g.getColor();
@@ -131,6 +133,7 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde
         g.drawString("sec:" + securityContext, x + 3 * width / 2, y + height / 2);
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String[] labels = new String[1];
         String[] values = new String[1];
@@ -151,9 +154,9 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde
         }
 
         return false;
-
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -170,6 +173,7 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde
         return null;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data secPattern=\"");
@@ -190,9 +194,6 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde
 //            int k;
 //            String s;
 
-            //
-            //
-
             for (int i = 0; i < nl.getLength(); i++) {
                 n1 = nl.item(i);
                 //
@@ -213,20 +214,22 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_DECRYPT;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLAD;
     }
 
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
 }
-
diff --git a/src/main/java/ui/tmlad/TMLADDelay.java b/src/main/java/ui/tmlad/TMLADDelay.java
index fd017298059b4340999d9ad8f812843638defaf0..4a936c36df55a6a06b11f688590fb97b034b2eca 100755
--- a/src/main/java/ui/tmlad/TMLADDelay.java
+++ b/src/main/java/ui/tmlad/TMLADDelay.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADComponentWithSubcomponents;
 import ui.util.IconManager;
 
 import java.awt.*;
@@ -55,11 +53,11 @@ import java.awt.geom.Line2D;
  * @version 1.0 10/11/2008
  * @author Ludovic APVRILLE
  */
-public class TMLADDelay extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADDelay extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     private int lineLength = 5;
     private int textX, textY;
-    private int ilength = 10;
-    private int lineLength1 = 2;
+//    private int ilength = 10;
+//    private int lineLength1 = 2;
 	
 	protected int stateOfError = 0; // Not yet checked
     
@@ -97,6 +95,7 @@ public class TMLADDelay extends TGCWithInternalComponent implements EmbeddedComm
         myImageIcon = IconManager.imgic214;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		if (stateOfError > 0)  {
 			Color c = g.getColor();
@@ -116,6 +115,7 @@ public class TMLADDelay extends TGCWithInternalComponent implements EmbeddedComm
         g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -140,17 +140,18 @@ public class TMLADDelay extends TGCWithInternalComponent implements EmbeddedComm
 		return ((TGCTimeDelay)tgcomponent[0]).getUnit();
 	}
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_DELAY;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
-    
 }
-
diff --git a/src/main/java/ui/tmlad/TMLADDelayInterval.java b/src/main/java/ui/tmlad/TMLADDelayInterval.java
index f7bb0e9277b593d72406f83cf2cc8102f504f46b..d7234a843973ff198f44154178de647737fcf1da 100755
--- a/src/main/java/ui/tmlad/TMLADDelayInterval.java
+++ b/src/main/java/ui/tmlad/TMLADDelayInterval.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADComponentWithSubcomponents;
 import ui.util.IconManager;
 
 import java.awt.*;
@@ -55,11 +53,11 @@ import java.awt.geom.Line2D;
 * @version 1.0 10/11/2008
 * @author Ludovic APVRILLE
  */
-public class TMLADDelayInterval extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADDelayInterval extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     private int lineLength = 5;
 	private int textX, textY;
-    private int ilength = 10;
-    private int lineLength1 = 2;
+//    private int ilength = 10;
+//    private int lineLength1 = 2;
 	private int incrementY = 3;
     private int segment = 4;
 	
@@ -99,8 +97,8 @@ public class TMLADDelayInterval extends TGCWithInternalComponent implements Embe
         myImageIcon = IconManager.imgic214;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
-		
 		if (stateOfError > 0)  {
 			Color c = g.getColor();
 			switch(stateOfError) {
@@ -130,6 +128,7 @@ public class TMLADDelayInterval extends TGCWithInternalComponent implements Embe
         }
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -158,10 +157,12 @@ public class TMLADDelayInterval extends TGCWithInternalComponent implements Embe
         ((TGCTimeDelay)(tgcomponent[0])).setMaxDelay(val);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_INTERVAL_DELAY;
     }
     
+    @Override
     public int getDefaultConnector() {
 		return TGComponentManager.CONNECTOR_TMLAD;
     }
@@ -170,8 +171,8 @@ public class TMLADDelayInterval extends TGCWithInternalComponent implements Embe
 		return ((TGCTimeDelay)tgcomponent[0]).getUnit();
 	}
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
-    
 }
diff --git a/src/main/java/ui/tmlad/TMLADEncrypt.java b/src/main/java/ui/tmlad/TMLADEncrypt.java
index 11ecb9a3809b83e37eac778954fbbea9b4afff1d..f3fac8dc34d48549623c0e285519c9390824ec0a 100755
--- a/src/main/java/ui/tmlad/TMLADEncrypt.java
+++ b/src/main/java/ui/tmlad/TMLADEncrypt.java
@@ -44,6 +44,7 @@ import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import ui.*;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 import ui.window.JDialogCryptographicConfiguration;
 
@@ -59,7 +60,7 @@ import java.awt.geom.Line2D;
  * @author Ludovic APVRILLE
  * @version 1.0 21/11/2005
  */
-public class TMLADEncrypt extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADEncrypt extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     private int lineLength = 5;
     //  private int textX, textY;
     private int ex = 5;
@@ -101,6 +102,7 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde
         myImageIcon = IconManager.imgic214;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         if (stateOfError > 0) {
             Color c = g.getColor();
@@ -181,8 +183,8 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde
         g.drawImage(IconManager.imgic7000.getImage(), x - 22, y + height / 2, null);
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
-
         //JDialogTwoString jdts = new JDialogTwoString(frame, "Setting channel's properties", "Channel name", channelName, "Nb of samples", nbOfSamples);]
         String[] values = new String[]{securityContext, type, message_overhead, encTime, size, nonce, formula, decTime, key, algorithm};
         String[] nonces = tdp.getMGUI().getAllNonce();
@@ -209,6 +211,7 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde
         return false;
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -225,6 +228,7 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde
         return null;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data secContext=\"");
@@ -252,18 +256,13 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde
 
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException {
-        //
         try {
-
             NodeList nli;
             Node n1, n2;
             Element elt;
             //    int k;
             //     String s;
 
-            //
-            //
-
             for (int i = 0; i < nl.getLength(); i++) {
                 n1 = nl.item(i);
                 //
@@ -292,20 +291,22 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_ENCRYPT;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLAD;
     }
 
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
 }
-
diff --git a/src/main/java/ui/tmlad/TMLADExecC.java b/src/main/java/ui/tmlad/TMLADExecC.java
index e8df888ce212a9761a0063c8e4552d6ded723c7d..c7be2687dd657920ed6b6ac0e6c01318711eb433 100755
--- a/src/main/java/ui/tmlad/TMLADExecC.java
+++ b/src/main/java/ui/tmlad/TMLADExecC.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADComponentWithSubcomponents;
 import ui.util.IconManager;
 
 import java.awt.*;
@@ -55,7 +53,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 21/05/2008
  * @author Ludovic APVRILLE
  */
-public class TMLADExecC extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADExecC extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     private int lineLength = 5;
     private int textX, textY;
     private int ilength = 10;
@@ -93,6 +91,7 @@ public class TMLADExecC extends TGCWithInternalComponent implements EmbeddedComm
         myImageIcon = IconManager.imgic214;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		if (stateOfError > 0)  {
 			Color c = g.getColor();
@@ -114,6 +113,7 @@ public class TMLADExecC extends TGCWithInternalComponent implements EmbeddedComm
         g.drawLine(x + (width/2) - lineLength1, y+(height-ilength)/2, x + (width/2)- lineLength1, y+(height+ilength)/2);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -134,17 +134,18 @@ public class TMLADExecC extends TGCWithInternalComponent implements EmbeddedComm
         tgcomponent[0].setValue(value);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_EXECC;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
-    
 }
-
diff --git a/src/main/java/ui/tmlad/TMLADExecCInterval.java b/src/main/java/ui/tmlad/TMLADExecCInterval.java
index 3ba864c72349c86ccff8559eb0a0144fadc007e8..bf07c7eafebfad4b5f9e7dbb541b9cb3b648fae4 100755
--- a/src/main/java/ui/tmlad/TMLADExecCInterval.java
+++ b/src/main/java/ui/tmlad/TMLADExecCInterval.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADComponentWithSubcomponents;
 import ui.util.IconManager;
 
 import java.awt.*;
@@ -55,7 +53,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 21/05/2008
  * @author Ludovic APVRILLE
  */
-public class TMLADExecCInterval extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADExecCInterval extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     private int lineLength = 5;
     private int textX, textY;
     private int ilength = 10;
@@ -93,6 +91,7 @@ public class TMLADExecCInterval extends TGCWithInternalComponent implements Embe
         myImageIcon = IconManager.imgic214;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		if (stateOfError > 0)  {
 			Color c = g.getColor();
@@ -114,6 +113,7 @@ public class TMLADExecCInterval extends TGCWithInternalComponent implements Embe
         g.drawLine(x + (width/2) - lineLength1, y+(height-ilength)/2, x + (width/2) - lineLength1, y+(height+ilength)/2);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -142,14 +142,17 @@ public class TMLADExecCInterval extends TGCWithInternalComponent implements Embe
         ((TGCTimeInterval)(tgcomponent[0])).setMaxDelay(val);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_EXECC_INTERVAL;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
     
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
diff --git a/src/main/java/ui/tmlad/TMLADExecI.java b/src/main/java/ui/tmlad/TMLADExecI.java
index cac0941253553a4a66a28e5f02be97ca969f8d42..024b0c57605c721713c0afe1e10b36e62a3dc7f5 100755
--- a/src/main/java/ui/tmlad/TMLADExecI.java
+++ b/src/main/java/ui/tmlad/TMLADExecI.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADComponentWithSubcomponents;
 import ui.util.IconManager;
 
 import java.awt.*;
@@ -55,7 +53,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 21/11/2005
  * @author Ludovic APVRILLE
  */
-public class TMLADExecI extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, CheckableLatency, BasicErrorHighlight {
+public class TMLADExecI extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, CheckableLatency, BasicErrorHighlight {
     private int lineLength = 5;
     private int textX, textY;
     private int ilength = 10;
@@ -93,6 +91,7 @@ public class TMLADExecI extends TGCWithInternalComponent implements EmbeddedComm
         myImageIcon = IconManager.imgic214;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		if (stateOfError > 0)  {
 			Color c = g.getColor();
@@ -114,6 +113,7 @@ public class TMLADExecI extends TGCWithInternalComponent implements EmbeddedComm
         g.drawLine(x + (width/2), y+(height-ilength)/2, x + (width/2), y+(height+ilength)/2);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -134,16 +134,18 @@ public class TMLADExecI extends TGCWithInternalComponent implements EmbeddedComm
         tgcomponent[0].setValue(value);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_EXECI;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
     
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
 }
-
diff --git a/src/main/java/ui/tmlad/TMLADExecIInterval.java b/src/main/java/ui/tmlad/TMLADExecIInterval.java
index 585478caeca499e4637deffb7518be25b0b6afcd..49c6b1546867e49a1c55c881509aec503ff0ddd9 100755
--- a/src/main/java/ui/tmlad/TMLADExecIInterval.java
+++ b/src/main/java/ui/tmlad/TMLADExecIInterval.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADComponentWithSubcomponents;
 import ui.util.IconManager;
 
 import java.awt.*;
@@ -55,7 +53,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 02/12/2005
  * @author Ludovic APVRILLE
  */
-public class TMLADExecIInterval extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADExecIInterval extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent */ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     private int lineLength = 5;
     private int textX, textY;
     private int ilength = 10;
@@ -93,6 +91,7 @@ public class TMLADExecIInterval extends TGCWithInternalComponent implements Embe
         myImageIcon = IconManager.imgic214;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		if (stateOfError > 0)  {
 			Color c = g.getColor();
@@ -114,6 +113,7 @@ public class TMLADExecIInterval extends TGCWithInternalComponent implements Embe
         g.drawLine(x + (width/2), y+(height-ilength)/2, x + (width/2), y+(height+ilength)/2);
     }
     
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -142,16 +142,18 @@ public class TMLADExecIInterval extends TGCWithInternalComponent implements Embe
         ((TGCTimeInterval)(tgcomponent[0])).setMaxDelay(val);
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_EXECI_INTERVAL;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
-    
 }
diff --git a/src/main/java/ui/tmlad/TMLADForEverLoop.java b/src/main/java/ui/tmlad/TMLADForEverLoop.java
index 58cb33eb2e3adaf9e5b44f74782ab5115df4894b..a59a009886c6c686b298f12d51eb4b02e1b3ff7d 100755
--- a/src/main/java/ui/tmlad/TMLADForEverLoop.java
+++ b/src/main/java/ui/tmlad/TMLADForEverLoop.java
@@ -36,17 +36,21 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
+import java.awt.Color;
+import java.awt.Graphics;
 
-import java.awt.*;
-import java.awt.geom.Line2D;
+import ui.AllowedBreakpoint;
+import ui.BasicErrorHighlight;
+import ui.ColorManager;
+import ui.EmbeddedComment;
+import ui.ErrorHighlight;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADForLoop;
 
 /**
  * Class TMLADForEverLoop
@@ -55,41 +59,39 @@ import java.awt.geom.Line2D;
  * @version 1.0 19/11/2008
  * @author Ludovic APVRILLE
  */
-public class TMLADForEverLoop extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
-    protected int lineLength = 5;
-    protected int textX =  5;
-    protected int textY =  15;
-    protected int arc = 5;
-	
-	protected int stateOfError = 0; // Not yet checked
+public class TMLADForEverLoop extends TADForLoop /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+//    protected int lineLength = 5;
+//    protected int textX =  5;
+//    protected int textY =  15;
+//    protected int arc = 5;
+//	
+//	protected int stateOfError = 0; // Not yet checked
     
     public TMLADForEverLoop(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
         
-        width = 30;
-        height = 20;
-        minWidth = 30;
+//        width = 30;
+//        height = 20;
+//        minWidth = 30;
         
         nbConnectingPoint = 2;
         connectingPoint = new TGConnectingPoint[2];
-        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop
+        connectingPoint[ INDEX_ENTER_LOOP ] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+        connectingPoint[ INDEX_INSIDE_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop
         //connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp
         
-        moveable = true;
-        editable = true;
-        removable = true;
+//        moveable = true;
+//        editable = true;
+//        removable = true;
         
 		value = "Loop for ever";
         name = "for ever loop";
         
-        myImageIcon = IconManager.imgic912;
+       // myImageIcon = IconManager.imgic912;
     }
 	
-    
+    @Override
     public void internalDrawing(Graphics g) {
-		
-	
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
         if ((w1 != width) & (!tdp.isScaled())) {
@@ -142,32 +144,33 @@ public class TMLADForEverLoop extends TGCWithoutInternalComponent implements Emb
         return false;
     }*/
     
-    public TGComponent isOnMe(int _x, int _y) {
-        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-            return this;
-        }
-        
-        if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) {
-			return this;	
-		}
-		
-		if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) {
-			return this;	
-		}
-        
-        return null;
-    }
-    
+//    public TGComponent isOnMe(int _x, int _y) {
+//        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//            return this;
+//        }
+//        
+//        if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) {
+//			return this;	
+//		}
+//		
+//		if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) {
+//			return this;	
+//		}
+//        
+//        return null;
+//    }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_FOR_EVER_LOOP;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
-	
-    public void setStateAction(int _stateAction) {
-		stateOfError = _stateAction;
-	}
+//	
+//    public void setStateAction(int _stateAction) {
+//		stateOfError = _stateAction;
+//	}
 }
diff --git a/src/main/java/ui/tmlad/TMLADForLoop.java b/src/main/java/ui/tmlad/TMLADForLoop.java
index c214fd743cc6d7e5e576502a4401cf5e3e220306..75e89fcb6ccc172803358b7d42af2e7dedad1763 100755
--- a/src/main/java/ui/tmlad/TMLADForLoop.java
+++ b/src/main/java/ui/tmlad/TMLADForLoop.java
@@ -36,22 +36,31 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
+package ui.tmlad;
 
+import java.awt.Color;
+import java.awt.Graphics;
 
+import javax.swing.JFrame;
 
-package ui.tmlad;
-
-import myutil.GraphicLib;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
-import ui.*;
-import ui.util.IconManager;
-import ui.window.JDialogMultiString;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.geom.Line2D;
+import myutil.GraphicLib;
+import ui.AllowedBreakpoint;
+import ui.BasicErrorHighlight;
+import ui.ColorManager;
+import ui.EmbeddedComment;
+import ui.ErrorHighlight;
+import ui.GTURTLEModeling;
+import ui.MalformedModelingException;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADForLoop;
+import ui.window.JDialogMultiString;
 
 /**
  * Class TMLADForLoop
@@ -60,47 +69,48 @@ import java.awt.geom.Line2D;
  * @version 1.0 21/11/2005
  * @author Ludovic APVRILLE
  */
-public class TMLADForLoop extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
-
-    private final static String IN_LOOP = "inside loop";
-    private final static String EXIT_LOOP = "exit loop";
+public class TMLADForLoop extends TADForLoop /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
 
-    
-    protected int lineLength = 5;
-    protected int textX =  5;
-    protected int textY =  15;
-    protected int arc = 5;
+//    private final static String IN_LOOP = "inside loop";
+//    private final static String EXIT_LOOP = "exit loop";
+//
+//    
+//    protected int lineLength = 5;
+//    protected int textX =  5;
+//    protected int textY =  15;
+//    protected int arc = 5;
 
     protected String init = "i=0";
     protected String condition = "i<5";
     protected String increment = "i = i+1";
 
-    protected int stateOfError = 0; // Not yet checked
+  //  protected int stateOfError = 0; // Not yet checked
 
     public TMLADForLoop(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
-        width = 30;
-        height = 20;
-        minWidth = 30;
+//        width = 30;
+//        height = 20;
+//        minWidth = 30;
 
         nbConnectingPoint = 3;
         connectingPoint = new TGConnectingPoint[3];
-        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop
-        connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp
-
-        moveable = true;
-        editable = true;
-        removable = true;
+        connectingPoint[ INDEX_ENTER_LOOP ] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+        connectingPoint[ INDEX_INSIDE_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop
+        connectingPoint[ INDEX_EXIT_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp
+//
+//        moveable = true;
+//        editable = true;
+//        removable = true;
 
         makeValue();
 
         name = "for loop";
 
-        myImageIcon = IconManager.imgic912;
+      //  myImageIcon = IconManager.imgic912;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -110,7 +120,7 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde
             //updateConnectingPoints();
         }
 
-        if (stateOfError > 0)  {
+        if ( isEnabled() && stateOfError > 0 )  {
             Color c = g.getColor();
             switch(stateOfError) {
             case ErrorHighlight.OK:
@@ -130,13 +140,13 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde
 
         g.drawString(value, x + (width - w) / 2 , y + textY);
 
-	// Info on loops
-	g.drawString(IN_LOOP, x+width+2, y+height/2);
-	//int wTmp =  g.getFontMetrics().stringWidth(EXIT_LOOP);
-	g.drawString(EXIT_LOOP, x+width/2+2, y+height+10);
-	
+		// Info on loops
+		g.drawString(IN_LOOP, x+width+2, y+height/2);
+		//int wTmp =  g.getFontMetrics().stringWidth(EXIT_LOOP);
+		g.drawString(EXIT_LOOP, x+width/2+2, y+height+10);
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String [] labels = new String[3];
         String [] values = new String[3];
@@ -163,26 +173,25 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde
         }
 
         return false;
-
-    }
-
-    public TGComponent isOnMe(int _x, int _y) {
-        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-            return this;
-        }
-
-        if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        return null;
     }
 
-    public void makeValue() {
+//    public TGComponent isOnMe(int _x, int _y) {
+//        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//            return this;
+//        }
+//
+//        if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        return null;
+//    }
+
+    private void makeValue() {
         value = "for(" + init + ";" + condition + ";" + increment + ")";
     }
 
@@ -202,6 +211,7 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde
         return increment;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data init=\"");
@@ -219,16 +229,12 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{
         //
         try {
-
             NodeList nli;
             Node n1, n2;
             Element elt;
 //            int k;
 //            String s;
 
-            //
-            //
-
             for(int i=0; i<nl.getLength(); i++) {
                 n1 = nl.item(i);
                 //
@@ -251,23 +257,22 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeValue();
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_FOR_LOOP;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLAD;
     }
-
-    public void setStateAction(int _stateAction) {
-        stateOfError = _stateAction;
-    }
-
-
+//
+//    public void setStateAction(int _stateAction) {
+//        stateOfError = _stateAction;
+//    }
 }
diff --git a/src/main/java/ui/tmlad/TMLADForStaticLoop.java b/src/main/java/ui/tmlad/TMLADForStaticLoop.java
index 1c85ff268f29ce7f136ba3de759bdffcab9fdc49..5f38637077528baa1aec8360ebf6aaf79672fcc0 100755
--- a/src/main/java/ui/tmlad/TMLADForStaticLoop.java
+++ b/src/main/java/ui/tmlad/TMLADForStaticLoop.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADForLoop;
 import ui.util.IconManager;
 
 import javax.swing.*;
@@ -56,50 +54,51 @@ import java.awt.geom.Line2D;
  * @version 1.0 21/11/2005
  * @author Ludovic APVRILLE
  */
-public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
-    private final static String IN_LOOP = "inside loop";
-    private final static String EXIT_LOOP = "exit loop";
-
-    protected int lineLength = 5;
-    protected int textX =  5;
-    protected int textY =  15;
-    protected int arc = 5;
+public class TMLADForStaticLoop extends TADForLoop /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+//    private final static String IN_LOOP = "inside loop";
+//    private final static String EXIT_LOOP = "exit loop";
+//
+//    protected int lineLength = 5;
+//    protected int textX =  5;
+//    protected int textY =  15;
+//    protected int arc = 5;
     protected String valueLoop = "";
 
-    protected int stateOfError = 0; // Not yet checked
+    //protected int stateOfError = 0; // Not yet checked
 
     public TMLADForStaticLoop(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
-        width = 30;
-        height = 20;
-        minWidth = 30;
+//        width = 30;
+//        height = 20;
+//        minWidth = 30;
 
         nbConnectingPoint = 3;
         connectingPoint = new TGConnectingPoint[3];
-        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop
-        connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp
+        connectingPoint[ INDEX_ENTER_LOOP ] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+        connectingPoint[ INDEX_INSIDE_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop
+        connectingPoint[ INDEX_EXIT_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp
 
-        moveable = true;
-        editable = true;
-        removable = true;
+//        moveable = true;
+//        editable = true;
+//        removable = true;
 
         value = "10";
         name = "for loop";
 
-        myImageIcon = IconManager.imgic912;
+//        myImageIcon = IconManager.imgic912;
     }
 
-    public void makeValueLoop() {
+    private void makeValueLoop() {
         valueLoop = "Loop " + value + " times";
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
-
         if (valueLoop.length() == 0) {
             makeValueLoop();
         }
+
         int w  = g.getFontMetrics().stringWidth(valueLoop);
         int w1 = Math.max(minWidth, w + 2 * textX);
         if ((w1 != width) & (!tdp.isScaled())) {
@@ -134,6 +133,7 @@ public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements E
 	
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String text = "Static for loop : ";
         String s = (String)JOptionPane.showInputDialog(frame, text,
@@ -145,8 +145,6 @@ public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements E
             s = s.trim();
         }
 
-        //
-
         if ((s != null) && (s.length() > 0) && (s.matches("\\d*"))) {
             setValue(s);
             makeValueLoop();
@@ -157,6 +155,7 @@ public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements E
         return false;
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -173,16 +172,17 @@ public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements E
         return null;
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_FOR_STATIC_LOOP;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLAD;
     }
-
-    public void setStateAction(int _stateAction) {
-        stateOfError = _stateAction;
-    }
+//
+//    public void setStateAction(int _stateAction) {
+//        stateOfError = _stateAction;
+//    }
 }
diff --git a/src/main/java/ui/tmlad/TMLADNotifiedEvent.java b/src/main/java/ui/tmlad/TMLADNotifiedEvent.java
index c48a8ba84807206ab4fe9f10ec21b9400bb21719..174ae7f50293825ebb3c860cc224936ad96626a7 100755
--- a/src/main/java/ui/tmlad/TMLADNotifiedEvent.java
+++ b/src/main/java/ui/tmlad/TMLADNotifiedEvent.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
@@ -46,6 +43,7 @@ import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import ui.*;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 import ui.window.JDialogMultiString;
 
@@ -60,7 +58,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 27/10/2006
  * @author Ludovic APVRILLE
  */
-public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADNotifiedEvent extends TADComponentWithoutSubcomponents/* Issue #69TGCWithoutInternalComponent */ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -94,6 +92,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E
         myImageIcon = IconManager.imgic904;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 3 * textX);
@@ -147,6 +146,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E
         g.drawString(value, x + linebreak + textX1, y + textY);
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -159,7 +159,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E
         return null;
     }
     
-    public void makeValue() {
+    private void makeValue() {
         value = result + "=?" + eventName + "()";
     }
     
@@ -180,6 +180,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E
         return value;
     }
     
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String [] labels = new String[2];
         String [] values = new String[2];
@@ -205,6 +206,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E
          
     }
     
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data eventName=\"");
@@ -218,18 +220,13 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E
     
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{
-        //
         try {
-            
             NodeList nli;
             Node n1, n2;
             Element elt;
 //            int k;
 //            String s;
             
-            //
-            //
-            
             for(int i=0; i<nl.getLength(); i++) {
                 n1 = nl.item(i);
                 //
@@ -251,23 +248,22 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E
             }
             
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeValue();
     }
     
-
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_NOTIFIED_EVENT;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
 	
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
-    
-    
 }
diff --git a/src/main/java/ui/tmlad/TMLADRandom.java b/src/main/java/ui/tmlad/TMLADRandom.java
index 50879302ac79cdb469c0bc0b4f15f81fb558ae1c..45e41fe525452fe78f1469450f236f90cb7ad5ec 100755
--- a/src/main/java/ui/tmlad/TMLADRandom.java
+++ b/src/main/java/ui/tmlad/TMLADRandom.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
@@ -46,6 +43,7 @@ import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import ui.*;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 import ui.window.JDialogTMLADRandom;
 
@@ -60,7 +58,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 10/06/2008
  * @author Ludovic APVRILLE
  */
-public class TMLADRandom extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADRandom extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent */implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -97,12 +95,12 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded
         myImageIcon = IconManager.imgic912;
     }
 	
-	public void makeValue() {
+	private void makeValue() {
 		valueRandom = variable + " = RANDOM" + functionId + "(" + minValue + ", " + maxValue + ")";
 	}
     
+	@Override
     public void internalDrawing(Graphics g) {
-		
 		if (valueRandom.length() == 0) {
 			makeValue();
 		}
@@ -136,6 +134,7 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded
         g.drawString(valueRandom, x + (width - w) / 2 , y + textY);
     }
 	
+	@Override
 	public boolean editOndoubleClick(JFrame frame) {
         boolean error = false;
 		String errors = "";
@@ -191,6 +190,7 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded
         return true;
     }
     
+	@Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -223,6 +223,7 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded
 		return functionId;
 	}
 	
+	@Override
 	protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data variable=\"");
@@ -240,18 +241,13 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded
     
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{
-        //
         try {
-            
             NodeList nli;
             Node n1, n2;
             Element elt;
          //   int k;
             String s;
             
-            //
-            //
-            
             for(int i=0; i<nl.getLength(); i++) {
                 n1 = nl.item(i);
                 //
@@ -281,23 +277,23 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded
             }
             
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeValue();
     }
     
-    
+	@Override
     public int getType() {
         return TGComponentManager.TMLAD_RANDOM;
     }
     
+	@Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+		return TGComponentManager.CONNECTOR_TMLAD;
     }
 	
+	@Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
-	
-    
 }
diff --git a/src/main/java/ui/tmlad/TMLADReadChannel.java b/src/main/java/ui/tmlad/TMLADReadChannel.java
index 97b2a4358cde48b05e00ece0fbda06432b9d9e4d..0e4ec24024cbc7581e7e30876891dc4e86e2189f 100755
--- a/src/main/java/ui/tmlad/TMLADReadChannel.java
+++ b/src/main/java/ui/tmlad/TMLADReadChannel.java
@@ -36,26 +36,41 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.tmlad;
 
-import myutil.GraphicLib;
+import java.awt.Color;
+import java.awt.Graphics;
+import java.awt.geom.Line2D;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+import javax.swing.JFrame;
+
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
-import ui.*;
+
+import myutil.GraphicLib;
+import ui.AllowedBreakpoint;
+import ui.BasicErrorHighlight;
+import ui.CheckableAccessibility;
+import ui.CheckableLatency;
+import ui.ColorManager;
+import ui.EmbeddedComment;
+import ui.ErrorHighlight;
+import ui.LinkedReference;
+import ui.MalformedModelingException;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
-import ui.window.JDialogMultiString;
-import myutil.*;
 import ui.window.JDialogMultiStringAndTabs;
 import ui.window.TabInfo;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.geom.Line2D;
-import java.util.ArrayList;
-import java.util.concurrent.ConcurrentHashMap;
-
 /**
  * Class TMLADReadChannel
  * Action of writing data in channel
@@ -64,8 +79,8 @@ import java.util.concurrent.ConcurrentHashMap;
  * @author Ludovic APVRILLE
  * @version 1.0 21/11/2005
  */
-public class TMLADReadChannel extends TGCWithoutInternalComponent implements CheckableAccessibility, LinkedReference, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
-    private ConcurrentHashMap<String, String> latencyVals;
+public class TMLADReadChannel extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements CheckableAccessibility, LinkedReference, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+    private Map<String, String> latencyVals;
     protected int lineLength = 5;
     protected int textX = 5;
     protected int textX0 = 2;
@@ -117,17 +132,17 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         myImageIcon = IconManager.imgic906;
         latencyVals = new ConcurrentHashMap<String, String>();
         //latencyVals.put("sendChannel: sensorData", "3");
-
     }
 
 	/*public void addLatency(String name, String num){
         latencyVals.put(name,num);
 	}*/
 
-    public ConcurrentHashMap<String, String> getLatencyMap() {
+    public Map<String, String> getLatencyMap() {
         return latencyVals;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         int w = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -201,7 +216,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         }
     }
 
-    public void drawLatencyInformation(Graphics g) {
+    private void drawLatencyInformation(Graphics g) {
         int index = 1;
         for (String s : latencyVals.keySet()) {
             int w = g.getFontMetrics().stringWidth(s);
@@ -213,9 +228,8 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         }
     }
 
-    public void drawReachabilityInformation(Graphics g) {
+    private void drawReachabilityInformation(Graphics g) {
         if (reachabilityInformation > 0) {
-
             Color c = g.getColor();
             Color c1;
             switch (reachabilityInformation) {
@@ -242,6 +256,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         }
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -270,6 +285,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         return value;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         TabInfo tab1 = new TabInfo("Name and samples");
         String[] labels = new String[2];
@@ -280,7 +296,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         values[1] = nbOfSamples;
         tab1.labels=labels;
         tab1.values =  values;
-        ArrayList<String[]> help = new ArrayList<String[]>();
+        List<String[]> help = new ArrayList<String[]>();
         String[] allInChannels = tdp.getMGUI().getAllInChannels();
         if (isAttacker) {
             allInChannels = tdp.getMGUI().getAllCompInChannels();
@@ -307,7 +323,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         tab2.values =  values;
         tab2.help = help;
 
-        ArrayList<TabInfo> tabs = new ArrayList<>();
+        List<TabInfo> tabs = new ArrayList<>();
         tabs.add(tab1);
         tabs.add(tab2);
 
@@ -328,8 +344,6 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         }
 
         return false;
-
-
     }
 
     public void setSamples(String sp) {
@@ -337,6 +351,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         makeValue();
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data channelName=\"");
@@ -388,12 +403,11 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeValue();
     }
 
-
     public String getSecurityContext() {
         return securityContext;
     }
@@ -406,18 +420,22 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         return isAttacker;
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_READ_CHANNEL;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLAD;
     }
 
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
-	public boolean getEncForm(){
+
+    public boolean getEncForm(){
 		return isEncForm;
 	}
 		
@@ -430,5 +448,4 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che
         channelName = s;
         makeValue();
     }
-
 }
diff --git a/src/main/java/ui/tmlad/TMLADReadRequestArg.java b/src/main/java/ui/tmlad/TMLADReadRequestArg.java
index f6d1b240b784acb2a6fcfe28c49eda9b9eb4b66c..89a6fd960122b7adea9cf65d68f1c0ddcbc10132 100755
--- a/src/main/java/ui/tmlad/TMLADReadRequestArg.java
+++ b/src/main/java/ui/tmlad/TMLADReadRequestArg.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
@@ -46,6 +43,7 @@ import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import ui.*;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 import ui.window.JDialogMultiString;
 
@@ -60,7 +58,7 @@ import java.awt.geom.Line2D;
 * @version 1.0 11/02/201
 * @author Ludovic APVRILLE
  */
-public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADReadRequestArg extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -152,8 +150,8 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements
 		return value;
 	}
 	
+	@Override
 	public void internalDrawing(Graphics g) {
-		
 		if (value.length() == 0) {
 			makeValue();
 		}
@@ -189,6 +187,7 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements
 		g.drawString(value, x + (width - w) / 2 , y + textY);
 	}
 	
+	@Override
 	public boolean editOndoubleClick(JFrame frame) {
 		String [] labels = new String[nParam];
 		String [] values = new String[nParam];
@@ -214,6 +213,7 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements
 		
 	}
 	
+	@Override
 	public TGComponent isOnMe(int _x, int _y) {
 		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
 			return this;
@@ -255,9 +255,6 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements
 			int k;
 			String s;
 			
-			//
-			//
-			
 			for(int i=0; i<nl.getLength(); i++) {
 				n1 = nl.item(i);
 				//
@@ -287,18 +284,18 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements
 		makeValue();
 	}
 	
-	
+	@Override
 	public int getType() {
 		return TGComponentManager.TMLAD_READ_REQUEST_ARG;
 	}
 	
+	@Override
 	public int getDefaultConnector() {
 		return TGComponentManager.CONNECTOR_TMLAD;
 	}
 	
+	@Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
-	
-	
 }
diff --git a/src/main/java/ui/tmlad/TMLADSelectEvt.java b/src/main/java/ui/tmlad/TMLADSelectEvt.java
index 8e48f75f1e2476b26b19eb1a9bd66df30b3ecfa9..693b65b5838544a27d216404b4c2d65f3c4afb4e 100755
--- a/src/main/java/ui/tmlad/TMLADSelectEvt.java
+++ b/src/main/java/ui/tmlad/TMLADSelectEvt.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 
 import java.awt.*;
@@ -55,7 +53,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 06/04/2007
  * @author Ludovic APVRILLE
  */
-public class TMLADSelectEvt extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADSelectEvt extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     private int lineLength = 10;
     private int lineOutLength = 25;
     //private int textX1, textY1, textX2, textY2, textX3, textY3;
@@ -96,8 +94,8 @@ public class TMLADSelectEvt extends TGCWithoutInternalComponent implements Embed
         myImageIcon = IconManager.imgic208;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
-		
 		if (stateOfError > 0)  {
 			Color c = g.getColor();
 			switch(stateOfError) {
@@ -126,9 +124,9 @@ public class TMLADSelectEvt extends TGCWithoutInternalComponent implements Embed
         
         //g.drawString("select", x, y + height/2 - 5);
         g.drawString("evt", x+7, y + height/2 + 3);
-
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -153,15 +151,27 @@ public class TMLADSelectEvt extends TGCWithoutInternalComponent implements Embed
         return null;
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_SELECT_EVT;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
     
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}	
+    
+    /* Issue #69
+     * (non-Javadoc)
+     * @see ui.AbstractCDElement#canBeDisabled()
+     */
+    @Override
+    public boolean canBeDisabled() {
+    	return false;
+    }
 }
diff --git a/src/main/java/ui/tmlad/TMLADSendEvent.java b/src/main/java/ui/tmlad/TMLADSendEvent.java
index 3d73447ce45756e2490add2cb573139b46e6159a..9715bc12867b78b620b0a303d7daba12a4c615b3 100755
--- a/src/main/java/ui/tmlad/TMLADSendEvent.java
+++ b/src/main/java/ui/tmlad/TMLADSendEvent.java
@@ -36,22 +36,37 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.tmlad;
 
-import myutil.GraphicLib;
+import java.awt.Color;
+import java.awt.Graphics;
+import java.awt.geom.Line2D;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.swing.JFrame;
+
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
-import ui.*;
+
+import myutil.GraphicLib;
+import ui.AllowedBreakpoint;
+import ui.BasicErrorHighlight;
+import ui.CheckableAccessibility;
+import ui.CheckableLatency;
+import ui.ColorManager;
+import ui.EmbeddedComment;
+import ui.ErrorHighlight;
+import ui.MalformedModelingException;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 import ui.window.JDialogMultiString;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.geom.Line2D;
-import java.util.ArrayList;
-
 /**
  * Class TMLADSendEvent
  * Action of sending an event
@@ -60,7 +75,7 @@ import java.util.ArrayList;
  * @author Ludovic APVRILLE
  * @version 1.0 21/11/2005
  */
-public class TMLADSendEvent extends TGCWithoutInternalComponent implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADSendEvent extends TADComponentWithoutSubcomponents implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX = 5;
     protected int textY = 15;
@@ -106,8 +121,8 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check
         myImageIcon = IconManager.imgic904;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
-
         int w = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
         if ((w1 != width) & (!tdp.isScaled())) {
@@ -116,7 +131,8 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check
         }
 
 
-        if (stateOfError > 0) {
+        // Issue #69
+        if ( isEnabled() && stateOfError > 0) {
             Color c = g.getColor();
             switch (stateOfError) {
                 case ErrorHighlight.OK:
@@ -147,7 +163,12 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check
         int y1 = y + 1;
         int height1 = height;
         int width1 = width;
-        g.setColor(ColorManager.TML_PORT_EVENT);
+        
+        // Issue #69
+        if ( isEnabled() ) {
+        	g.setColor(ColorManager.TML_PORT_EVENT);
+        }
+        
         g.drawLine(x1, y1, x1 + width1 - linebreak, y1);
         g.drawLine(x1, y1 + height1, x1 + width1 - linebreak, y1 + height1);
         g.drawLine(x1, y1, x1, y1 + height1);
@@ -166,10 +187,9 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check
         g.drawString(value, x + (width - w) / 2, y + textY);
 
         drawReachabilityInformation(g);
-
     }
 
-    public void drawReachabilityInformation(Graphics g) {
+    private void drawReachabilityInformation(Graphics g) {
         if (reachabilityInformation > 0) {
 
             Color c = g.getColor();
@@ -194,6 +214,7 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check
         }
     }
 
+   // @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -206,7 +227,7 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check
         return null;
     }
 
-    public void makeValue() {
+    private void makeValue() {
         boolean first = true;
         value = eventName + "(";
         for (int i = 0; i < nParam; i++) {
@@ -269,6 +290,7 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check
         return value;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String[] labels = new String[nParam + 1];
         String[] values = new String[nParam + 1];
@@ -278,7 +300,8 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check
             labels[i + 1] = "Param #" + (i + 1);
             values[i + 1] = params[i];
         }
-        ArrayList<String[]> help = new ArrayList<String[]>();
+        
+        List<String[]> help = new ArrayList<String[]>();
         String[] allOutEvents = tdp.getMGUI().getAllOutEvents();
         help.add(allOutEvents);
 
diff --git a/src/main/java/ui/tmlad/TMLADSendRequest.java b/src/main/java/ui/tmlad/TMLADSendRequest.java
index 4d1a9033b76c54d5b05152561d59b2068f56f1a5..8bb62a0d90b6f78aca0583f55df0d55ce4de5240 100755
--- a/src/main/java/ui/tmlad/TMLADSendRequest.java
+++ b/src/main/java/ui/tmlad/TMLADSendRequest.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
@@ -46,13 +43,17 @@ import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import ui.*;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 import ui.window.JDialogMultiString;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Graphics;
 import java.awt.geom.Line2D;
 import java.util.ArrayList;
+import java.util.List;
 
 /**
    * Class TMLADSendRequest
@@ -61,7 +62,7 @@ import java.util.ArrayList;
    * @version 1.0 18/11/2005
    * @author Ludovic APVRILLE
  */
-public class TMLADSendRequest extends TGCWithoutInternalComponent implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADSendRequest extends TADComponentWithoutSubcomponents/* Issue #69TGCWithoutInternalComponent*/ implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -107,6 +108,7 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che
         myImageIcon = IconManager.imgic902;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -157,11 +159,11 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che
         g.drawString("req", x+(width-w) / 2, y);
         g.drawString(value, x + (width - w) / 2 , y + textY);
 
-	drawReachabilityInformation(g);
+        drawReachabilityInformation(g);
     }
-    public void drawReachabilityInformation(Graphics g) {
+    
+    private void drawReachabilityInformation(Graphics g) {
         if (reachabilityInformation > 0) {
-
             Color c = g.getColor();
             Color c1;
             switch(reachabilityInformation) {
@@ -181,9 +183,10 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che
             g.fillRect(x-12, y-7, 9, 7);
             g.setColor(c);
             g.drawRect(x-12, y-7, 9, 7);
-
         }
     }
+
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -218,7 +221,6 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che
         return requestName;
     }
 
-
 	public void setRequestName(String name){
 		requestName = name;
 		makeValue();
@@ -263,6 +265,7 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che
         return value;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String [] labels = new String[nParam + 1];
         String [] values = new String[nParam + 1];
@@ -273,9 +276,9 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che
             values[i+1] = params[i];
         }
 
-	ArrayList<String []> help = new ArrayList<String []>();
-	String[] allOutRequests = tdp.getMGUI().getAllOutRequests();
-	help.add(allOutRequests);
+        List<String []> help = new ArrayList<String []>();
+        String[] allOutRequests = tdp.getMGUI().getAllOutRequests();
+        help.add(allOutRequests);
 
         JDialogMultiString jdms = new JDialogMultiString(frame, "Setting request's properties", nParam+1, labels, values, help);
     //    jdms.setSize(350, 300);
@@ -293,9 +296,9 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che
         }
 
         return false;
-
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data requestName=\"");
@@ -326,9 +329,6 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che
             int k;
             String s;
 
-            //
-            //
-
             for(int i=0; i<nl.getLength(); i++) {
                 n1 = nl.item(i);
                 //
@@ -354,22 +354,23 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeValue();
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_SEND_REQUEST;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLAD;
     }
 
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
-
 }
diff --git a/src/main/java/ui/tmlad/TMLADSequence.java b/src/main/java/ui/tmlad/TMLADSequence.java
index ce9d380867124519c4ba27305b237ea9205896ef..c29c9d814cfccf780f8bfe8d908b9a5b1c6cdb34 100755
--- a/src/main/java/ui/tmlad/TMLADSequence.java
+++ b/src/main/java/ui/tmlad/TMLADSequence.java
@@ -36,16 +36,15 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
+import ui.AllowedBreakpoint;
+import ui.EmbeddedComment;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADSequence;
 
 /**
  * Class TMLADSequence
@@ -54,66 +53,71 @@ import java.awt.*;
  * @version 1.0 13/03/2006
  * @author Ludovic APVRILLE
  */
-public class TMLADSequence extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint {
-    private int lineLength = 0;
-  private int textX, textY;
+public class TMLADSequence extends TADSequence /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint {
+   // private int lineLength = 0;
+    //private int textX, textY;
 
 	public TMLADSequence(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
 		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 		
-		
-		width = 150;
-		height = 5;
-                
-    textX = width - 6;
-		textY = height + 2;
-		
+//		width = 150;
+//		height = 5;
+//                
+//		textX = width - 6;
+//		textY = height + 2;
+//		
+//		nbConnectingPoint = 6;
+//		connectingPoint = new TGConnectingPoint[6];
+//		connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+//		connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0);
+//		connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.333, 1.0);
+//		connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0);
+//		connectingPoint[4] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.667, 1.0);
+//		connectingPoint[5] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.833, 1.0);
+//
+//		nbInternalTGComponent = 1;
+//		tgcomponent = new TGComponent[nbInternalTGComponent];
+//
+//		TGCOneLineText tgc = new TGCOneLineText(x+textX + 10, y+textY, textX +10 , textX + 10 , textY, textY, true, this, _tdp);
+//		tgc.setValue(">>");
+//		tgc.setName("Sequence");
+//    tgc.setEditable(false);
+//                
+//		tgcomponent[0] = tgc;
+//
+//		moveable = true;
+//		editable = false;
+//		removable = true;
+//
+//		name = "sequence";
+//		
+//		myImageIcon = IconManager.imgic206;
+	}
+
+	@Override
+	protected void createConnectingPoints() {
 		nbConnectingPoint = 6;
 		connectingPoint = new TGConnectingPoint[6];
 		connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-    connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0);
+		connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0);
 		connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.333, 1.0);
 		connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0);
 		connectingPoint[4] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.667, 1.0);
 		connectingPoint[5] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.833, 1.0);
-
-		nbInternalTGComponent = 1;
-		tgcomponent = new TGComponent[nbInternalTGComponent];
-
-		TGCOneLineText tgc = new TGCOneLineText(x+textX + 10, y+textY, textX +10 , textX + 10 , textY, textY, true, this, _tdp);
-		tgc.setValue(">>");
-		tgc.setName("Sequence");
-    tgc.setEditable(false);
-                
-		tgcomponent[0] = tgc;
-
-		moveable = true;
-		editable = false;
-		removable = true;
-
-		name = "sequence";
-		
-		myImageIcon = IconManager.imgic206;
 	}
     
-    public void internalDrawing(Graphics g) {
-		g.drawRect(x, y, width, height);
-		g.fillRect(x, y, width, height);
-	}
+//    public void internalDrawing(Graphics g) {
+//		g.drawRect(x, y, width, height);
+//		g.fillRect(x, y, width, height);
+//	}
 
-	public TGComponent isOnOnlyMe(int x1, int y1) {
-		if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
-			return this;
-		}
-		return null;
-	}
-	
+	@Override
     public int getType() {
         return TGComponentManager.TMLAD_SEQUENCE;
     }
     
+	@Override
     public int getDefaultConnector() {
       return TGComponentManager.CONNECTOR_TMLAD;
     }  
-    
 }
diff --git a/src/main/java/ui/tmlad/TMLADStartState.java b/src/main/java/ui/tmlad/TMLADStartState.java
index 5e0e06b9d56462d653809e1960fbac4a2925ab0e..0fa07b1319dba0045d4045d4c243ef2490af8de7 100755
--- a/src/main/java/ui/tmlad/TMLADStartState.java
+++ b/src/main/java/ui/tmlad/TMLADStartState.java
@@ -36,17 +36,14 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
-import java.awt.geom.Line2D;
+import ui.EmbeddedComment;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADStartState;
 
 /**
  * Class TMLADStartState
@@ -55,53 +52,61 @@ import java.awt.geom.Line2D;
  * @version 1.0 28/10/2005
  * @author Ludovic APVRILLE
  */
-public class TMLADStartState extends TGCWithoutInternalComponent implements EmbeddedComment{
+public class TMLADStartState extends TADStartState /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment{
     private int lineLength = 5;
     
     public TMLADStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
-        
-        width = 15;
-        height = 15;
-        
+//        
+//        width = 15;
+//        height = 15;
+//        
+//        nbConnectingPoint = 1;
+//        connectingPoint = new TGConnectingPoint[1];
+//        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0);
+//        
+//        nbInternalTGComponent = 0;
+//        
+//        moveable = true;
+//        editable = false;
+//        removable = true;
+//        
+//        name = "start state";
+//        
+//        myImageIcon = IconManager.imgic222;
+    }
+
+    @Override
+    protected void createConnectingPoints() {
         nbConnectingPoint = 1;
         connectingPoint = new TGConnectingPoint[1];
         connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0);
-        
-        nbInternalTGComponent = 0;
-        
-        moveable = true;
-        editable = false;
-        removable = true;
-        
-        name = "start state";
-        
-        myImageIcon = IconManager.imgic222;
     }
     
-    public void internalDrawing(Graphics g) {
-        g.fillOval(x, y, width, height);
-        g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
-    }
-    
-    public TGComponent isOnMe(int _x, int _y) {
-        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-            return this;
-        }
-        
-        if ((int)(Line2D.ptSegDistSq(x+(width/2), y+height, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) {
-			return this;	
-		}
-        
-        return null;
-    }
+//    public void internalDrawing(Graphics g) {
+//        g.fillOval(x, y, width, height);
+//        g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
+//    }
+//    
+//    public TGComponent isOnMe(int _x, int _y) {
+//        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//            return this;
+//        }
+//        
+//        if ((int)(Line2D.ptSegDistSq(x+(width/2), y+height, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) {
+//			return this;	
+//		}
+//        
+//        return null;
+//    }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_START_STATE;
     }
     
+    @Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
-    
 }
diff --git a/src/main/java/ui/tmlad/TMLADStopState.java b/src/main/java/ui/tmlad/TMLADStopState.java
index 09cecbfca23954a0274e3342da25fa99ae0a53ac..516a2dcddad5fd7669d777b45092a8461bbfeceb 100755
--- a/src/main/java/ui/tmlad/TMLADStopState.java
+++ b/src/main/java/ui/tmlad/TMLADStopState.java
@@ -36,16 +36,15 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
+import ui.AllowedBreakpoint;
+import ui.EmbeddedComment;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADStopState;
 
 /**
  * Class TMLADStopState
@@ -54,59 +53,59 @@ import java.awt.*;
  * @version 1.0 28/10/2005
  * @author Ludovic APVRILLE
  */
-public class TMLADStopState extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint {
-    private int internalCircleSize = 16;
-    private int lineLength = 5;
+public class TMLADStopState extends TADStopState /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint {
+//    private int internalCircleSize = 16;
+//    private int lineLength = 5;
     
     public TMLADStopState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
-        
-        width = 20;
-        height = 20;
-        
-        nbConnectingPoint = 1;
-        connectingPoint = new TGConnectingPoint[1];
-        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, - lineLength, true, false, 0.5, 0.0);
-        
-        nbInternalTGComponent = 0;
-        
-        moveable = true;
-        editable = false;
-        removable = true;
-        
-        name = "stop state";
-        
-        myImageIcon = IconManager.imgic210;
+//        
+//        width = 20;
+//        height = 20;
+//        
+//        nbConnectingPoint = 1;
+//        connectingPoint = new TGConnectingPoint[1];
+//        connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, - lineLength, true, false, 0.5, 0.0);
+//        
+//        nbInternalTGComponent = 0;
+//        
+//        moveable = true;
+//        editable = false;
+//        removable = true;
+//        
+//        name = "stop state";
+//        
+//        myImageIcon = IconManager.imgic210;
     }
     
-    public void internalDrawing(Graphics g) {
-        ColorManager.setColor(g, state, 0);
-        g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize);
-        g.drawOval(x, y, width, height);
-        g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
-    }
-    
-    
-    public TGComponent isOnMe(int _x, int _y) {
-        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-            return this;
-        }
-        return null;
+    @Override
+	protected void createConnectingPoints() {
+      nbConnectingPoint = 1;
+      connectingPoint = new TGConnectingPoint[1];
+      connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, - lineLength, true, false, 0.5, 0.0);
     }
+//    public void internalDrawing(Graphics g) {
+//        ColorManager.setColor(g, state, 0);
+//        g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize);
+//        g.drawOval(x, y, width, height);
+//        g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
+//    }
+//    
+//    
+//    public TGComponent isOnMe(int _x, int _y) {
+//        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//            return this;
+//        }
+//        return null;
+//    }
     
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_STOP_STATE;
     }
 	
+    @Override
 	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+    	return TGComponentManager.CONNECTOR_TMLAD;
     }
-    
 }
-
-
-
-
-
-
-
diff --git a/src/main/java/ui/tmlad/TMLADUnorderedSequence.java b/src/main/java/ui/tmlad/TMLADUnorderedSequence.java
index aca4f9bd327004739889f7edde30fc4a75646250..0df1f8d927889b4f42d3fbfa40adae92cadd6289 100755
--- a/src/main/java/ui/tmlad/TMLADUnorderedSequence.java
+++ b/src/main/java/ui/tmlad/TMLADUnorderedSequence.java
@@ -36,16 +36,15 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
+import ui.AllowedBreakpoint;
+import ui.EmbeddedComment;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADSequence;
 
 /**
  * Class TMLADUnorderedSequence
@@ -54,66 +53,77 @@ import java.awt.*;
  * @version 1.0 07/07/2010
  * @author Ludovic APVRILLE
  */
-public class TMLADUnorderedSequence extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint {
-    private int lineLength = 0;
-  private int textX, textY;
+public class TMLADUnorderedSequence extends TADSequence/* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint {
+//    private int lineLength = 0;
+//  private int textX, textY;
 
 	public TMLADUnorderedSequence(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
 		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 		
-		
-		width = 150;
-		height = 5;
-                
-    textX = width - 6;
-		textY = height + 2;
-		
+//		width = 150;
+//		height = 5;
+//                
+//    textX = width - 6;
+//		textY = height + 2;
+//		
+//		nbConnectingPoint = 6;
+//		connectingPoint = new TGConnectingPoint[6];
+//		connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
+//    connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0);
+//		connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.333, 1.0);
+//		connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0);
+//		connectingPoint[4] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.667, 1.0);
+//		connectingPoint[5] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.833, 1.0);
+//
+//		nbInternalTGComponent = 1;
+//		tgcomponent = new TGComponent[nbInternalTGComponent];
+//
+//		TGCOneLineText tgc = new TGCOneLineText(x+textX + 10, y+textY, textX +10 , textX + 10 , textY, textY, true, this, _tdp);
+//		tgc.setValue("<>");
+//		tgc.setName("Random sequence");
+//		tgc.setEditable(false);
+//                
+//		tgcomponent[0] = tgc;
+//
+//		moveable = true;
+//		editable = false;
+//		removable = true;
+//
+//		name = "random sequence";
+//		
+//		myImageIcon = IconManager.imgic206;
+	}
+    
+	@Override
+    protected void createConnectingPoints() {
 		nbConnectingPoint = 6;
 		connectingPoint = new TGConnectingPoint[6];
 		connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0);
-    connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0);
+		connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0);
 		connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.333, 1.0);
 		connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0);
 		connectingPoint[4] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.667, 1.0);
 		connectingPoint[5] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.833, 1.0);
-
-		nbInternalTGComponent = 1;
-		tgcomponent = new TGComponent[nbInternalTGComponent];
-
-		TGCOneLineText tgc = new TGCOneLineText(x+textX + 10, y+textY, textX +10 , textX + 10 , textY, textY, true, this, _tdp);
-		tgc.setValue("<>");
-		tgc.setName("Random sequence");
-		tgc.setEditable(false);
-                
-		tgcomponent[0] = tgc;
-
-		moveable = true;
-		editable = false;
-		removable = true;
-
-		name = "random sequence";
-		
-		myImageIcon = IconManager.imgic206;
-	}
-    
-    public void internalDrawing(Graphics g) {
-		g.drawRect(x, y, width, height);
-		g.fillRect(x, y, width, height);
 	}
+//    public void internalDrawing(Graphics g) {
+//		g.drawRect(x, y, width, height);
+//		g.fillRect(x, y, width, height);
+//	}
 
-	public TGComponent isOnOnlyMe(int x1, int y1) {
-		if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
-			return this;
-		}
-		return null;
-	}
+//	public TGComponent isOnOnlyMe(int x1, int y1) {
+//		if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
+//			return this;
+//		}
+//		return null;
+//	}
 	
+	@Override
     public int getType() {
         return TGComponentManager.TMLAD_UNORDERED_SEQUENCE;
     }
     
+	@Override
     public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLAD;
+		return TGComponentManager.CONNECTOR_TMLAD;
     }  
-    
 }
diff --git a/src/main/java/ui/tmlad/TMLADWaitEvent.java b/src/main/java/ui/tmlad/TMLADWaitEvent.java
index 91da01c21690508513f8276d4b1e27da9fac00d7..ae17151b2df4d2d5f186a09c4251719384ba35a8 100755
--- a/src/main/java/ui/tmlad/TMLADWaitEvent.java
+++ b/src/main/java/ui/tmlad/TMLADWaitEvent.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlad;
 
 import myutil.GraphicLib;
@@ -46,13 +43,17 @@ import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import ui.*;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 import ui.window.JDialogMultiString;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Graphics;
 import java.awt.geom.Line2D;
 import java.util.ArrayList;
+import java.util.List;
 
 /**
    * Class TMLADWaitEvent
@@ -61,7 +62,7 @@ import java.util.ArrayList;
    * @version 1.0 21/11/2005
    * @author Ludovic APVRILLE
  */
-public class TMLADWaitEvent extends TGCWithoutInternalComponent implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADWaitEvent extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -107,6 +108,7 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
         myImageIcon = IconManager.imgic904;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -116,7 +118,8 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
             //updateConnectingPoints();
         }
 
-        if (stateOfError > 0)  {
+        // Issue #69
+        if ( isEnabled() && stateOfError > 0)  {
             Color c = g.getColor();
             switch(stateOfError) {
             case ErrorHighlight.OK:
@@ -141,7 +144,12 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
         int y1 = y + 1;
         int height1 = height;
         int width1 = width;
-        g.setColor(ColorManager.TML_PORT_EVENT);
+        
+        // Issue #69
+        if ( isEnabled() ) {
+        	g.setColor(ColorManager.TML_PORT_EVENT);
+        }
+
         g.drawLine(x1, y1, x1+width1, y1);
         g.drawLine(x1+width1, y1, x1+width1, y1+height1);
         g.drawLine(x1, y1+height1, x1+width1, y1+height1);
@@ -158,12 +166,12 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
         g.drawString("evt", x+(width-w) / 2, y);
         g.drawString(value, x + linebreak + textX1, y + textY);
 
-	drawReachabilityInformation(g);
-
+        drawReachabilityInformation(g);
     }
-    public void drawReachabilityInformation(Graphics g) {
-        if (reachabilityInformation > 0) {
 
+    private void drawReachabilityInformation(Graphics g) {
+    	// Issue #69
+        if ( isEnabled() && reachabilityInformation > 0 ) {
             Color c = g.getColor();
             Color c1;
             switch(reachabilityInformation) {
@@ -186,6 +194,8 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
 
         }
     }
+    
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -216,8 +226,6 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
 
     }
 
-	
-
     public String getEventName() {
         return eventName;
     }
@@ -268,6 +276,7 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
         return value;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String [] labels = new String[nParam + 1];
         String [] values = new String[nParam + 1];
@@ -278,9 +287,9 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
             values[i+1] = params[i];
         }
 
-	ArrayList<String []> help = new ArrayList<String []>();
-	String[] allInEvents = tdp.getMGUI().getAllInEvents();
-	help.add(allInEvents);
+        List<String []> help = new ArrayList<String []>();
+        String[] allInEvents = tdp.getMGUI().getAllInEvents();
+        help.add(allInEvents);
 
         JDialogMultiString jdms = new JDialogMultiString(frame, "Setting event's properties", nParam+1, labels, values, help);
       //  jdms.setSize(450, 300);
@@ -301,6 +310,7 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
 
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data eventName=\"");
@@ -359,22 +369,23 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeValue();
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_WAIT_EVENT;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLAD;
     }
 
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
-
 }
diff --git a/src/main/java/ui/tmlad/TMLADWriteChannel.java b/src/main/java/ui/tmlad/TMLADWriteChannel.java
index 3eb3ca19ac03d308891229890dce37ff025d1af7..f38f4dedba2a5f34977fa37aef4c0b706938c9b3 100755
--- a/src/main/java/ui/tmlad/TMLADWriteChannel.java
+++ b/src/main/java/ui/tmlad/TMLADWriteChannel.java
@@ -36,26 +36,42 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.tmlad;
 
-import myutil.Conversion;
-import myutil.GraphicLib;
+import java.awt.Color;
+import java.awt.Graphics;
+import java.awt.geom.Line2D;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+import javax.swing.JFrame;
+
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
-import ui.*;
+
+import myutil.Conversion;
+import myutil.GraphicLib;
+import ui.AllowedBreakpoint;
+import ui.BasicErrorHighlight;
+import ui.CheckableAccessibility;
+import ui.CheckableLatency;
+import ui.ColorManager;
+import ui.EmbeddedComment;
+import ui.ErrorHighlight;
+import ui.LinkedReference;
+import ui.MalformedModelingException;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
-import ui.window.JDialogMultiString;
 import ui.window.JDialogMultiStringAndTabs;
 import ui.window.TabInfo;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.geom.Line2D;
-import java.util.ArrayList;
-import java.util.concurrent.ConcurrentHashMap;
-
 /**
  * Class TMLADWriteChannel
  * Action of writting data in channel
@@ -64,7 +80,7 @@ import java.util.concurrent.ConcurrentHashMap;
  * @author Ludovic APVRILLE
  * @version 1.0 17/11/2005
  */
-public class TMLADWriteChannel extends TGCWithoutInternalComponent implements CheckableAccessibility, LinkedReference, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
+public class TMLADWriteChannel extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements CheckableAccessibility, LinkedReference, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight {
     protected int lineLength = 5;
     protected int textX = 5;
     protected int textY = 15;
@@ -72,15 +88,13 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
     protected int linebreak = 10;
     protected int decSec = 4;
 
-
-    private ConcurrentHashMap<String, String> latencyVals;
+    private Map<String, String> latencyVals;
 
     protected int latencyX = 30;
     protected int latencyY = 25;
     protected int textWidth = 10;
     protected int textHeight = 20;
 
-
     protected String channelName = "ch";
     protected String nbOfSamples = "1";
     protected String securityContext = "";
@@ -120,10 +134,11 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
         latencyVals = new ConcurrentHashMap<String, String>();
     }
 
-    public ConcurrentHashMap<String, String> getLatencyMap() {
+    public Map<String, String> getLatencyMap() {
         return latencyVals;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         int w = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -197,7 +212,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
         drawReachabilityInformation(g);
     }
 
-    public void drawLatencyInformation(Graphics g) {
+    private void drawLatencyInformation(Graphics g) {
         int index = 1;
         for (String s : latencyVals.keySet()) {
             int w = g.getFontMetrics().stringWidth(s);
@@ -209,12 +224,11 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
         }
     }
 
-
     public void addLatency(String name, String num) {
         latencyVals.put(name, num);
     }
 
-    public void drawReachabilityInformation(Graphics g) {
+    private void drawReachabilityInformation(Graphics g) {
         if (reachabilityInformation > 0) {
 
             Color c = g.getColor();
@@ -243,6 +257,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
         }
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -282,6 +297,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
         return value;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         TabInfo tab1 = new TabInfo("Name and samples");
         String[] labels = new String[2];
@@ -295,7 +311,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
         values[2] = securityContext;
 		labels[3] = "Attacker?";
 		values[3] = isAttacker ? "Yes" : "No"; */
-        ArrayList<String []> help = new ArrayList<String []>();
+        List<String []> help = new ArrayList<String []>();
 		String[] allOutChannels = tdp.getMGUI().getAllOutChannels();
 		if (isAttacker){
 			allOutChannels =tdp.getMGUI().getAllCompOutChannels();
@@ -328,7 +344,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
         tab2.values =  values;
         tab2.help = help;
 
-        ArrayList<TabInfo> tabs = new ArrayList<>();
+        List<TabInfo> tabs = new ArrayList<>();
         tabs.add(tab1);
         tabs.add(tab2);
 
@@ -347,15 +363,13 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
             isEncForm = jdmsat.getString(1, 2).equals("Yes");
             makeValue();
             
-
-            
             return true;
         }
 
         return false;
-
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data channelName=\"");
@@ -375,16 +389,11 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
 
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException {
-        //
         try {
-
             NodeList nli;
             Node n1, n2;
             Element elt;
 
-            //
-            //
-
             for (int i = 0; i < nl.getLength(); i++) {
                 n1 = nl.item(i);
                 //
@@ -413,16 +422,17 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeValue();
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.TMLAD_WRITE_CHANNEL;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLAD;
     }
@@ -449,7 +459,6 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
         securityContext = sc;
     }
 
-
     public boolean isAttacker() {
         return isAttacker;
     }
@@ -463,8 +472,8 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch
 		isEncForm=encForm;
 	}
 
+    @Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
-
 }
diff --git a/src/main/java/ui/tmlcompd/TMLCCompositeComponent.java b/src/main/java/ui/tmlcompd/TMLCCompositeComponent.java
index 3358c81e3fd67605a8efadd60431fffbc13650d4..8c54b5663383e769bdb0e04106f94de0835e5910 100755
--- a/src/main/java/ui/tmlcompd/TMLCCompositeComponent.java
+++ b/src/main/java/ui/tmlcompd/TMLCCompositeComponent.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlcompd;
 
 import myutil.GraphicLib;
@@ -49,8 +46,12 @@ import ui.*;
 import ui.util.IconManager;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics;
 import java.util.ArrayList;
+import java.util.List;
 import java.util.ListIterator;
 
 /**
@@ -111,6 +112,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
         myImageIcon = IconManager.imgic1200;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
 		int w;
 		int c;
@@ -158,7 +160,6 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 			currentFontSize = maxCurrentFontSize;
 
             displayText = currentFontSize >= minFontSize;
-			
 		}
 		
 		// Zoom is assumed to be computed
@@ -191,6 +192,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		}
     }
 	
+    @Override
 	public void rescale(double scaleFactor){
 		dtextX = (textX + dtextX) / oldScaleFactor * scaleFactor;
 		textX = (int)(dtextX);
@@ -199,6 +201,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		super.rescale(scaleFactor);
 	}
     
+    @Override
     public TGComponent isOnOnlyMe(int _x, int _y) {
 		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -206,7 +209,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
         return null;
     }
 
-    
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String s = (String)JOptionPane.showInputDialog(frame, "Name:", "Setting component name",
 		JOptionPane.PLAIN_MESSAGE, IconManager.imgic100,
@@ -233,25 +236,27 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
         return false;
     }
 	
-    
+    @Override
     public int getType() {
         return TGComponentManager.TMLCTD_CCOMPONENT;
     }
 	
+    @Override
 	public void wasSwallowed() {
 		myColor = null;
 	}
 	
+    @Override
 	public void wasUnswallowed() {
 		myColor = null;
 		setFather(null);
 		TDiagramPanel tdp = getTDiagramPanel();
 		setCdRectangle(tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY());
-			
 	}
 	
+    @Override
 	public boolean acceptSwallowedTGComponent(TGComponent tgc) {
-		 if (tgc instanceof TMLCCompositeComponent) {
+		if (tgc instanceof TMLCCompositeComponent) {
             return true;
         }
 		
@@ -268,9 +273,9 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
         }
 
         return tgc instanceof TMLCCompositePort;
-
     }
     
+    @Override
     public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) {
 		boolean swallowed = false;
 		
@@ -332,6 +337,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		return true;
     }
     
+    @Override
     public void removeSwallowedTGComponent(TGComponent tgc) {
 		//
 		if (tgc instanceof TMLCCompositePort) {
@@ -360,8 +366,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		 }
     }
     
-    
-    
+    @Override
     public void hasBeenResized() {
 		rescaled = true;
         for(int i=0; i<nbInternalTGComponent; i++) {
@@ -387,6 +392,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		}
     }
 	
+    @Override
 	public void resizeWithFather() {
         if ((father != null) && ((father instanceof TMLCCompositeComponent) ||(father instanceof TMLCPrimitiveComponent))) {
 			// Too large to fit in the father? -> resize it!
@@ -397,8 +403,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
         }
     }
 	
-	public java.util.List<TMLCPrimitiveComponent> getAllPrimitiveComponents() {
-		ArrayList<TMLCPrimitiveComponent> ll = new ArrayList<TMLCPrimitiveComponent>();
+	public List<TMLCPrimitiveComponent> getAllPrimitiveComponents() {
+		List<TMLCPrimitiveComponent> ll = new ArrayList<TMLCPrimitiveComponent>();
 		for(int i=0; i<nbInternalTGComponent; i++) {
 			if (tgcomponent[i] instanceof TMLCCompositeComponent) {
 				ll.addAll(((TMLCCompositeComponent)tgcomponent[i]).getAllPrimitiveComponents());
@@ -415,8 +421,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		return ll;
 	}
 	
-	public ArrayList<TMLCRecordComponent> getAllRecordComponents() {
-		ArrayList<TMLCRecordComponent> ll = new ArrayList<TMLCRecordComponent>();
+	public List<TMLCRecordComponent> getAllRecordComponents() {
+		List<TMLCRecordComponent> ll = new ArrayList<TMLCRecordComponent>();
 		for(int i=0; i<nbInternalTGComponent; i++) {
 			if (tgcomponent[i] instanceof TMLCCompositeComponent) {
 				ll.addAll(((TMLCCompositeComponent)tgcomponent[i]).getAllRecordComponents());
@@ -433,7 +439,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		return ll;
 	}
 	
-	public void getAllCompositeComponents(ArrayList<String> list, String _name) {
+	public void getAllCompositeComponents( List<String> list, String _name) {
 		String s;
 		TMLCCompositeComponent tmlcc;
 		for(int i=0; i<nbInternalTGComponent; i++) {
@@ -446,8 +452,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		}
 	}
 	
-	public ArrayList<TMLCCompositePort> getAllInternalCompositePorts() {
-		ArrayList<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>();
+	public List<TMLCCompositePort> getAllInternalCompositePorts() {
+		List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>();
 		for(int i=0; i<nbInternalTGComponent; i++) {
 			if (tgcomponent[i] instanceof TMLCCompositeComponent) {
 				list.addAll(((TMLCCompositeComponent)tgcomponent[i]).getAllInternalCompositePorts());
@@ -463,8 +469,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		return list;
 	}
 	
-	public ArrayList<TMLCCompositePort> getAllReferencedCompositePorts() {
-		ArrayList<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>();
+	public List<TMLCCompositePort> getAllReferencedCompositePorts() {
+		List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>();
 		for(int i=0; i<nbInternalTGComponent; i++) {
 			if (tgcomponent[i] instanceof TMLCCompositeComponent) {
 				list.addAll(((TMLCCompositeComponent)tgcomponent[i]).getAllReferencedCompositePorts());
@@ -477,8 +483,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		return list;
 	}
 	
-	public ArrayList<TMLCCompositePort> getFirstLevelCompositePorts() {
-		ArrayList<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>();
+	public List<TMLCCompositePort> getFirstLevelCompositePorts() {
+		List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>();
 		for(int i=0; i<nbInternalTGComponent; i++) {
 			if (tgcomponent[i] instanceof TMLCCompositePort) {
 				list.add((TMLCCompositePort)(tgcomponent[i]));
@@ -488,8 +494,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		return list;
 	}
 	
-	public ArrayList<TMLCPrimitivePort> getAllInternalPrimitivePorts() {
-		ArrayList<TMLCPrimitivePort> list = new ArrayList<TMLCPrimitivePort>();
+	public List<TMLCPrimitivePort> getAllInternalPrimitivePorts() {
+		List<TMLCPrimitivePort> list = new ArrayList<TMLCPrimitivePort>();
 		for(int i=0; i<nbInternalTGComponent; i++) {
 			
 			if (tgcomponent[i] instanceof TMLCCompositeComponent) {
@@ -540,6 +546,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		return null;
 	}
 	
+    @Override
 	public void setInternalsHidden(boolean hide) {
 		hiddeni = hide;
 		for(int i=0; i<nbInternalTGComponent; i++) {
@@ -553,20 +560,22 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		}
 	}
 	
+    @Override
 	public boolean areInternalsHidden() {
 		return hiddeni;
 	}
-	
-	public void drawInternalComponentsWhenHidden(Graphics g) {
-		//
-		for(int i=0; i<nbInternalTGComponent; i++) {
-			if (tgcomponent[i] instanceof TMLCCompositePort) {
-				//ColorManager.setColor(g, tgcomponent[i].getState(), 0);
-				tgcomponent[i].draw(g);
-			}
-		}
-	}
+//	
+//	private void drawInternalComponentsWhenHidden(Graphics g) {
+//		//
+//		for(int i=0; i<nbInternalTGComponent; i++) {
+//			if (tgcomponent[i] instanceof TMLCCompositePort) {
+//				//ColorManager.setColor(g, tgcomponent[i].getState(), 0);
+//				tgcomponent[i].draw(g);
+//			}
+//		}
+//	}
     
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<info hiddeni=\"" + hiddeni + "\" "); 
@@ -577,9 +586,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
     
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{
-        //
         try {
-            
             NodeList nli;
             Node n1, n2;
             Element elt;
@@ -607,10 +614,11 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
             }
             
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
     }
 	
+    @Override
 	public void drawTGConnectingPoint(Graphics g, int type) {
         //
         for (int i=0; i<nbConnectingPoint; i++) {
@@ -700,5 +708,4 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp
 		
 		return false;
 	}
-    
 }
diff --git a/src/main/java/ui/tmlcompd/TMLCRemoteCompositeComponent.java b/src/main/java/ui/tmlcompd/TMLCRemoteCompositeComponent.java
index 64474151cab0c40e6b985a1edadb116654419dca..0eb38b932ddf50c25e66100810f2c6dc572a4ace 100755
--- a/src/main/java/ui/tmlcompd/TMLCRemoteCompositeComponent.java
+++ b/src/main/java/ui/tmlcompd/TMLCRemoteCompositeComponent.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlcompd;
 
 import myutil.GraphicLib;
@@ -51,8 +48,12 @@ import ui.util.IconManager;
 import ui.window.JDialogTMLRemoteCompositeComponent;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics;
 import java.util.ArrayList;
+import java.util.List;
 
 /**
 * Class TMLCRemoteCompositeComponent
@@ -137,6 +138,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 		}
 	}
     
+	@Override
     public void internalDrawing(Graphics g) {
 		int w;
 		int c;
@@ -258,6 +260,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 		}
     }
 	
+	@Override
 	public void rescale(double scaleFactor){
 		dtextX = (textX + dtextX) / oldScaleFactor * scaleFactor;
 		textX = (int)(dtextX);
@@ -270,6 +273,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 		super.rescale(scaleFactor);
 	}
     
+	@Override
     public TGComponent isOnOnlyMe(int _x, int _y) {
 		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -277,7 +281,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
         return null;
     }
 	
-    
+	@Override
     public boolean editOndoubleClick(JFrame frame, int _x, int _y) {
 		
 		// On the icon?
@@ -316,6 +320,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 		return false;
     }
 	
+	@Override
 	protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         
@@ -354,7 +359,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 			TMLCRemotePortCompositeComponent pcc;
 			TGConnectingPoint[] old = null;
 			
-			ArrayList<TMLCCompositePort> tmp = null;
+			List<TMLCCompositePort> tmp = null;
 			//ArrayList<TMLCReferencePortConnectingPoint> points = new ArrayList<TMLCReferencePortConnectingPoint>();
 			
             for(int i=0; i<nl.getLength(); i++) {
@@ -458,29 +463,30 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 			((TMLComponentTaskDiagramPanel)getTDiagramPanel()).makePaths();
             
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
 		
     }
     
-    
+	@Override
     public int getType() {
         return TGComponentManager.TMLCTD_CREMOTECOMPONENT;
     }
 	
+	@Override
 	public void wasSwallowed() {
 		myColor = null;
 	}
 	
+	@Override
 	public void wasUnswallowed() {
 		myColor = null;
 		setFather(null);
 		TDiagramPanel tdp = getTDiagramPanel();
 		setCdRectangle(tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY());
-		
 	}
 	
-    
+	@Override
     public void hasBeenResized() {
 		rescaled = true;
         /*for(int i=0; i<nbInternalTGComponent; i++) {
@@ -500,6 +506,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 		}
     }
 	
+	@Override
 	public void resizeWithFather() {
         if ((father != null) && ((father instanceof TMLCCompositeComponent) ||(father instanceof TMLCPrimitiveComponent))) {
 			// Too large to fit in the father? -> resize it!
@@ -510,30 +517,30 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
         }
     }
 	
-	public java.util.List<TMLCPrimitiveComponent> getAllPrimitiveComponents() {
+	public List<TMLCPrimitiveComponent> getAllPrimitiveComponents() {
 		if (tmlcc == null) {
 			return new ArrayList<TMLCPrimitiveComponent>();
 		}
 		return tmlcc.getAllPrimitiveComponents();
 	}
 	
-	public java.util.List<TMLCRecordComponent> getAllRecordComponents() {
+	public List<TMLCRecordComponent> getAllRecordComponents() {
 		if (tmlcc == null) {
 			return new ArrayList<TMLCRecordComponent>();
 		}
 		return tmlcc.getAllRecordComponents();
 	}
 	
-	public java.util.List<TMLCCompositePort> getAllInternalCompositePorts() {
-		java.util.List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>();
+	public List<TMLCCompositePort> getAllInternalCompositePorts() {
+		List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>();
 		if (tmlcc == null) {
 			return list;
 		}
 		return tmlcc.getAllInternalCompositePorts();
 	}
 	
-	public ArrayList<TMLCPrimitivePort> getAllInternalPrimitivePorts() {
-		ArrayList<TMLCPrimitivePort> list = new ArrayList<TMLCPrimitivePort>();
+	public List<TMLCPrimitivePort> getAllInternalPrimitivePorts() {
+		List<TMLCPrimitivePort> list = new ArrayList<TMLCPrimitivePort>();
 		if (tmlcc == null) {
 			return list;
 		}
@@ -573,7 +580,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 	// to a list of those points, keep that list, and then, generate a array of those points.
 	public void updatePorts() {
 		//TraceManager.addDev("Update my ports");
-		ArrayList<TMLCCompositePort> list = tmlcc.getFirstLevelCompositePorts();
+		List<TMLCCompositePort> list = tmlcc.getFirstLevelCompositePorts();
 		int cpt=0;
 		
 		/*TraceManager.addDev("list size:" + list.size());
@@ -604,7 +611,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 		if (change) {
 			TraceManager.addDev("change on  ports!");
 			// Delete unused ports and 
-			ArrayList<TMLCReferencePortConnectingPoint> points = new ArrayList<TMLCReferencePortConnectingPoint>();
+			List<TMLCReferencePortConnectingPoint> points = new ArrayList<TMLCReferencePortConnectingPoint>();
 			cpt=0;
 			
 			for(i=0; i<ports.size(); i++) {
@@ -699,7 +706,6 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 		int i;
         //TraceManager.addDev("name= " + name + " nbCP=" + nbConnectingPoint + " num=" + num +  "id=" + id);
 		try {
-			
 			if (connectingPoint == null) {
 				nbConnectingPoint = num + 1;
 				connectingPoint = new TGConnectingPoint[nbConnectingPoint];
@@ -781,11 +787,13 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 		}
     }*/
 	
+	@Override
 	public boolean acceptSwallowedTGComponent(TGComponent tgc) {
         return tgc instanceof TMLCRemotePortCompositeComponent;
 
     }
 	
+	@Override
     public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) {
 		if (!acceptSwallowedTGComponent(tgc)) {
 			return false;
@@ -799,6 +807,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 		 return true;
 	}
 	
+	@Override
     public void removeSwallowedTGComponent(TGComponent tgc) {
 	}
 	
@@ -816,5 +825,4 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone
 	public TMLCCompositeComponent getReference() {
 		return tmlcc;
 	}
-    
 }
diff --git a/src/main/java/ui/tmlcompd/TMLComponentTaskDiagramPanel.java b/src/main/java/ui/tmlcompd/TMLComponentTaskDiagramPanel.java
index 58a7adaf1d40a10faa3b31cee23717a1078a2603..6bff4804513d6b57b5b737269471195772b21e89 100755
--- a/src/main/java/ui/tmlcompd/TMLComponentTaskDiagramPanel.java
+++ b/src/main/java/ui/tmlcompd/TMLComponentTaskDiagramPanel.java
@@ -37,10 +37,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.tmlcompd;
 
-
 import myutil.TraceManager;
 import org.w3c.dom.Element;
 import ui.*;
@@ -66,6 +64,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         //setAttributesVisible(true);
     }
 
+    @Override
     public boolean actionOnDoubleClick(TGComponent tgc) {
         /*TraceManager.addDev("Action on double click!");
           if (tgc instanceof TMLCPrimitiveComponent) {
@@ -77,6 +76,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         return false;
     }
 
+    @Override
     public boolean actionOnAdd(TGComponent tgc) {
         //TraceManager.addDev("Action on add! value=" + tgc.getValue());
         if (tgc instanceof TMLCPrimitiveComponent) {
@@ -98,6 +98,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         return true;
     }
 
+    @Override
     public boolean actionOnRemove(TGComponent tgc) {
         //TraceManager.addDev("Action on remove tgc=" + tgc + " value=" + tgc.getValue());
         if (tgc instanceof TMLCPrimitiveComponent) {
@@ -167,6 +168,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         return ports;
     }
 
+    @Override
     public boolean actionOnValueChanged(TGComponent tgc) {
         //TraceManager.addDev("Action on value changed on component:" + tgc);
         if (tgc instanceof TMLCPrimitiveComponent) {
@@ -195,21 +197,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         return ko ? ko : nameAllRecordComponentInUse(oldValue, newValue);
     }
 
-    /**
-     * Check if newvalue is already a name of a component.
-     *
-     * @param newvalue
-     * @return true if the name is used
-     * @author Fabien Tessier
-     */
-    public boolean isCompositeNameUsed(String newvalue) {
-        for (TGComponent tgc : this.componentList) {
-            if (tgc.getValue().equals(newvalue))
-                return true;
-        }
-        return false;
-    }
-
     public boolean nameAllRecordComponentInUse(String oldValue, String newValue) {
         //   LinkedList ll = getRecordComponentList();
         Iterator<TMLCRecordComponent> iterator = getRecordComponentList().listIterator();
@@ -226,8 +213,8 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         return false;
     }
 
-    public LinkedList<TMLCRecordComponent> getRecordComponentList() {
-        LinkedList<TMLCRecordComponent> ll = new LinkedList<TMLCRecordComponent>();
+    public List<TMLCRecordComponent> getRecordComponentList() {
+        List<TMLCRecordComponent> ll = new LinkedList<TMLCRecordComponent>();
         TGComponent tgc;
 
         Iterator<TGComponent> iterator = componentList.listIterator();
@@ -472,7 +459,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         return al;
     }
 
-
     public void getAllPortsConnectedTo(List<TGComponent> ll, TMLCPrimitivePort _port) {
         List<TGComponent> components = getMGUI().getAllTMLComponents();
         Iterator<TGComponent> iterator = components.listIterator();
@@ -514,36 +500,40 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         }
     }
 
+    @Override
     public String getXMLHead() {
         return "<TMLComponentTaskDiagramPanel name=\"" + name + "\"" + sizeParam() + displayParam() + zoomParam() + " >";
     }
 
+    @Override
     public String getXMLTail() {
         return "</TMLComponentTaskDiagramPanel>";
     }
 
+    @Override
     public String getXMLSelectedHead() {
         return "<TMLComponentTaskDiagramPanelCopy name=\"" + name + "\" xSel=\"" + xSel + "\" ySel=\"" + ySel + "\" widthSel=\"" + widthSel + "\" heightSel=\"" + heightSel + "\" >";
     }
 
+    @Override
     public String getXMLSelectedTail() {
         return "</TMLComponentTaskDiagramPanelCopy>";
     }
 
+    @Override
     public String getXMLCloneHead() {
         return "<TMLComponentTaskDiagramPanelCopy name=\"" + name + "\" xSel=\"" + 0 + "\" ySel=\"" + 0 + "\" widthSel=\"" + 0 + "\" heightSel=\"" + 0 + "\" >";
     }
 
+    @Override
     public String getXMLCloneTail() {
         return "</TMLComponentTaskDiagramPanelCopy>";
     }
 
-
     public boolean areAttributesVisible() {
         return attributesVisible;
     }
 
-
     public boolean areChannelVisible() {
         return synchroVisible;
     }
@@ -552,7 +542,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         attributesVisible = b;
     }
 
-
     public void setChannelVisible(boolean b) {
         channelVisible = b;
     }
@@ -612,8 +601,8 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         }
     }
 
-    public ArrayList<String> getAllCompositeComponent(String _name) {
-        ArrayList<String> list = new ArrayList<String>();
+    public List<String> getAllCompositeComponent(String _name) {
+        List<String> list = new ArrayList<String>();
         TGComponent tgc1;
         String s;
         TMLCCompositeComponent tmlcc;
@@ -650,7 +639,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         TGComponent tgc;
         Iterator<TGComponent> iterator = componentList.listIterator();
         // List<String> list = new ArrayList<String>();
-        TMLCPrimitiveComponent tmp;
+        //TMLCPrimitiveComponent tmp;
 
         while (iterator.hasNext()) {
             tgc = iterator.next();
@@ -674,7 +663,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         TGComponent tgc;
         Iterator<TGComponent> iterator = componentList.listIterator();
         // List<String> list = new ArrayList<String>();
-        TMLCPrimitiveComponent tmp;
+        //TMLCPrimitiveComponent tmp;
 
         while (iterator.hasNext()) {
             tgc = iterator.next();
@@ -693,7 +682,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         return chlArray;
     }
 
-
     public TMLCPrimitiveComponent getPrimitiveComponentByName(String _name) {
         TGComponent tgc;
         Iterator<TGComponent> iterator = componentList.listIterator();
@@ -993,10 +981,10 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
     }
 
     // Returns the faulty paths
-    public ArrayList<TMLCPath> updatePorts() {
+    public List<TMLCPath> updatePorts() {
         //TraceManager.addDev("Making paths");
         List<TMLCPath> paths = makePaths();
-        ArrayList<TMLCPath> faultyPaths = new ArrayList<TMLCPath>();
+        List<TMLCPath> faultyPaths = new ArrayList<TMLCPath>();
         //String error = "";
 
         // Checking rules of paths, and setting colors accordingly
@@ -1079,7 +1067,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         }
 
         // We take each primitive ports individually and we go thru the graph
-        ArrayList<TMLCChannelFacility> mets = new ArrayList<TMLCChannelFacility>();
+        List<TMLCChannelFacility> mets = new ArrayList<TMLCChannelFacility>();
         TGConnector connector;
         TGConnectingPoint tp;
         String conflictMessage;
@@ -1104,7 +1092,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         }
     }
 
-    public String propagate(TMLCPrimitivePort pport, TGConnectingPoint tp, TGConnector connector, ArrayList<TMLCChannelFacility> mets) {
+    public String propagate(TMLCPrimitivePort pport, TGConnectingPoint tp, TGConnector connector, List<TMLCChannelFacility> mets) {
         TGConnectingPoint tp2;
         TMLCChannelFacility cp = null;
         //boolean conflict = false;
@@ -1283,7 +1271,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         return conflictMessage;
     }
 
-    public String explore(TMLCPrimitivePort pport, TGConnectingPoint _tp, TMLCChannelFacility cp, ArrayList<TMLCChannelFacility> mets) {
+    public String explore(TMLCPrimitivePort pport, TGConnectingPoint _tp, TMLCChannelFacility cp, List<TMLCChannelFacility> mets) {
         String conflictMessage = null;
         String conflictMessageTmp;
         TGConnectingPoint tp;
@@ -1305,7 +1293,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         return conflictMessage;
     }
 
-    public void analysePorts(TMLCPrimitivePort pport, ArrayList<TMLCChannelFacility> mets, boolean conflict, String message) {
+    public void analysePorts(TMLCPrimitivePort pport, List<TMLCChannelFacility> mets, boolean conflict, String message) {
         if (mets.size() == 0) {
             return;
         }
@@ -1532,11 +1520,9 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         for (TDiagramPanel panel : panels) {
             iterator = panel.getComponentList().listIterator();
 
-
             List<TMLCCompositePort> listcp;
             List<TMLCPrimitivePort> listpp;
 
-
             while (iterator.hasNext()) {
                 tgc = iterator.next();
 
@@ -1646,7 +1632,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
 
 
         return paths;
-
     }
 
     public TMLCPath getPathOf(List<TMLCPath> paths, TGComponent tgc) {
@@ -1675,8 +1660,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         paths.add(ph);
     }
 
-
-    public void getPanelsUsingAComponent(TMLCCompositeComponent tmlcc, ArrayList<TMLComponentTaskDiagramPanel> panels) {
+    public void getPanelsUsingAComponent(TMLCCompositeComponent tmlcc, List<TMLComponentTaskDiagramPanel> panels) {
         //TraceManager.addDev("Update from " + tmlcc.getValue());
         Iterator<TGComponent> iterator = componentList.listIterator();
         TGComponent tgc;
@@ -1699,7 +1683,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         }
     }
 
-
     public String[] getAllOutEvents(String nameOfComponent) {
         TMLCPrimitiveComponent comp = getPrimitiveComponentByName(nameOfComponent);
         if (comp == null) {
@@ -1707,7 +1690,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi
         }
 
         List<TMLCPrimitivePort> ll = comp.getAllEventsOriginPorts();
-        LinkedList<String> lString = new LinkedList<>();
+        List<String> lString = new LinkedList<>();
 
 
         //String[] terms = new String[ll.size()];
diff --git a/src/main/java/ui/tmlcp/TGConnectingPointTMLCP.java b/src/main/java/ui/tmlcp/TGConnectingPointTMLCP.java
index 311de473ad9c5bd404483a6af6933a4493ab4d17..7e071398c9304250562b91732f80dc2701b2950c 100755
--- a/src/main/java/ui/tmlcp/TGConnectingPointTMLCP.java
+++ b/src/main/java/ui/tmlcp/TGConnectingPointTMLCP.java
@@ -36,12 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlcp;
 
-
 import ui.CDElement;
 import ui.TGComponentManager;
 import ui.TGConnectingPointWidthHeight;
@@ -54,13 +50,12 @@ import ui.TGConnectingPointWidthHeight;
  * @author Ludovic APVRILLE
  */
 public class TGConnectingPointTMLCP extends  TGConnectingPointWidthHeight{
-
-
     
     public TGConnectingPointTMLCP(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) {
         super(_container, _x, _y, _in, _out, _w, _h);
     }
     
+    @Override
     public boolean isCompatibleWith(int type) {
         //
         if (type == TGComponentManager.CONNECTOR_TMLCP) {
diff --git a/src/main/java/ui/tmlcp/TGConnectorTMLCP.java b/src/main/java/ui/tmlcp/TGConnectorTMLCP.java
index 71b38e664c9e99332963f3ddb7d9f382f8eb584d..4bcca5ef6284ce4f394d8e69446cdf295a867831 100755
--- a/src/main/java/ui/tmlcp/TGConnectorTMLCP.java
+++ b/src/main/java/ui/tmlcp/TGConnectorTMLCP.java
@@ -36,13 +36,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlcp;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADConnector;
 import ui.util.IconManager;
 
 import java.awt.*;
@@ -56,7 +54,7 @@ import java.util.Vector;
  * @version 1.0 17/02/2014
  * @author Ludovic APVRILLE
  */
-public class TGConnectorTMLCP extends TGConnector {
+public class TGConnectorTMLCP extends TADConnector /* Issue #69 TGConnector*/ {
     protected int arrowLength = 10;
 		protected String guard = "";
     
@@ -65,12 +63,12 @@ public class TGConnectorTMLCP extends TGConnector {
         myImageIcon = IconManager.imgic202;
 
         name = "connector";
-				_p1.setReferenceToConnector( this );
-				_p2.setReferenceToConnector( this );
-
+		_p1.setReferenceToConnector( this );
+		_p2.setReferenceToConnector( this );
 				//editable = true;
     }
     
+    @Override
     protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){
         if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) {
             g.drawLine(x1, y1, x2, y2);
@@ -79,6 +77,7 @@ public class TGConnectorTMLCP extends TGConnector {
         }
     }
     
+    @Override
     public int getType() {
         return TGComponentManager.CONNECTOR_TMLCP;
     }
@@ -95,5 +94,4 @@ public class TGConnectorTMLCP extends TGConnector {
 		}
 		return "noGuard";
 	}
-
 }//End of class
diff --git a/src/main/java/ui/tmlcp/TMLCPChoice.java b/src/main/java/ui/tmlcp/TMLCPChoice.java
index 8b55369d70a2b01fef5ea613f5359fe27bba0803..9e9ea5db9759211e30342b9ca5b60b8331ff4759 100755
--- a/src/main/java/ui/tmlcp/TMLCPChoice.java
+++ b/src/main/java/ui/tmlcp/TMLCPChoice.java
@@ -37,18 +37,13 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlcp;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
-import java.awt.geom.Line2D;
-import java.util.ArrayList;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADChoice;
 
 /**
    * Class TMLCPChoice
@@ -57,10 +52,10 @@ import java.util.ArrayList;
    * @version 1.0 17/02/2014
    * @author Ludovic APVRILLE, Andrea ENRICI
  */
-public class TMLCPChoice extends TGCWithInternalComponent {
-    private int lineLength = 10;
-    private int lineOutLength = 25;
-    private int textX1, textY1, textX2, textY2, textX3, textY3;
+public class TMLCPChoice extends TADChoice /* Issue #69 TGCWithInternalComponent*/ {
+//    private int lineLength = 10;
+//    private int lineOutLength = 25;
+//    private int textX1, textY1, textX2, textY2, textX3, textY3;
     private static int instanceCounter = 0;
     private int counter = 0;
 
@@ -68,151 +63,161 @@ public class TMLCPChoice extends TGCWithInternalComponent {
     public TMLCPChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
-        width = 30;
-        height = 30;
-        textX1 = -lineOutLength;
-        textY1 = height/2 - 5;
-        textX2 = width + 5;
-        textY2 = height/2 - 5;
-        textX3 = width /2 + 5;
-        textY3 = height + 15;
-
-        nbConnectingPoint = 4;
-        connectingPoint = new TGConnectingPoint[nbConnectingPoint];
-        connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.5, 0.0);
-        connectingPoint[1] = new TGConnectingPointTMLCP(this, -lineOutLength, 0, false, true, 0.0, 0.5);
-        connectingPoint[2] = new TGConnectingPointTMLCP(this, lineOutLength, 0, false, true, 1.0, 0.5);
-        connectingPoint[3] = new TGConnectingPointTMLCP(this, 0, lineOutLength,  false, true, 0.5, 1.0);
+//        width = 30;
+//        height = 30;
+//        textX1 = -lineOutLength;
+//        textY1 = height/2 - 5;
+//        textX2 = width + 5;
+//        textY2 = height/2 - 5;
+//        textX3 = width /2 + 5;
+//        textY3 = height + 15;
+//
+//        nbConnectingPoint = 4;
+//        connectingPoint = new TGConnectingPoint[nbConnectingPoint];
+//        connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.5, 0.0);
+//        connectingPoint[1] = new TGConnectingPointTMLCP(this, -lineOutLength, 0, false, true, 0.0, 0.5);
+//        connectingPoint[2] = new TGConnectingPointTMLCP(this, lineOutLength, 0, false, true, 1.0, 0.5);
+//        connectingPoint[3] = new TGConnectingPointTMLCP(this, 0, lineOutLength,  false, true, 0.5, 1.0);
 
         addTGConnectingPointsComment();
 
         //nbInternalTGComponent = 0;
-        nbInternalTGComponent = 3;
-        tgcomponent = new TGComponent[nbInternalTGComponent];
-
-        TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 1");
-        tgcomponent[0] = tgc;
-
-        tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 2");
-        tgcomponent[1] = tgc;
-
-        tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp);
-        tgc.setValue("[ ]");
-        tgc.setName("guard 3");
-        tgcomponent[2] = tgc;
-
-        moveable = true;
-        editable = false;
-        removable = true;
+//        nbInternalTGComponent = 3;
+//        tgcomponent = new TGComponent[nbInternalTGComponent];
+//
+//        TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 1");
+//        tgcomponent[0] = tgc;
+//
+//        tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 2");
+//        tgcomponent[1] = tgc;
+//
+//        tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp);
+//        tgc.setValue("[ ]");
+//        tgc.setName("guard 3");
+//        tgcomponent[2] = tgc;
+//
+//        moveable = true;
+//        editable = false;
+//        removable = true;
 
         instanceCounter++;
         counter = instanceCounter;
         name = "choice" + Integer.toString(counter);
 
-        myImageIcon = IconManager.imgic208;
-    }
-
-    public void internalDrawing(Graphics g) {
-        g.drawLine(x+(width/2), y, x+width, y + height/2);
-        g.drawLine(x, y + height / 2, x+width/2, y + height);
-        g.drawLine(x + width/2, y, x, y + height/2);
-        g.drawLine(x + width, y + height/2, x + width/2, y + height);
-
-        g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
-        g.drawLine(x, y + height/2, x-lineOutLength, y + height/2);
-        g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2);
-        g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength);
-    }
-
-    public TGComponent isOnOnlyMe(int _x, int _y) {
-        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-            return this;
-        }
-
-        // horizontal line
-        if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        return null;
+       // myImageIcon = IconManager.imgic208;
     }
-
+	
+	@Override
+    protected void createConnectingPoints() {
+		nbConnectingPoint = 4;
+		connectingPoint = new TGConnectingPoint[nbConnectingPoint];
+		connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.5, 0.0);
+		connectingPoint[1] = new TGConnectingPointTMLCP(this, -lineOutLength, 0, false, true, 0.0, 0.5);
+		connectingPoint[2] = new TGConnectingPointTMLCP(this, lineOutLength, 0, false, true, 1.0, 0.5);
+		connectingPoint[3] = new TGConnectingPointTMLCP(this, 0, lineOutLength,  false, true, 0.5, 1.0);
+	}
+//
+//    public void internalDrawing(Graphics g) {
+//        g.drawLine(x+(width/2), y, x+width, y + height/2);
+//        g.drawLine(x, y + height / 2, x+width/2, y + height);
+//        g.drawLine(x + width/2, y, x, y + height/2);
+//        g.drawLine(x + width, y + height/2, x + width/2, y + height);
+//
+//        g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
+//        g.drawLine(x, y + height/2, x-lineOutLength, y + height/2);
+//        g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2);
+//        g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength);
+//    }
+//
+//    public TGComponent isOnOnlyMe(int _x, int _y) {
+//        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//            return this;
+//        }
+//
+//        // horizontal line
+//        if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        return null;
+//    }
+
+	@Override
     public int getType() {
         return TGComponentManager.TMLCP_CHOICE;
     }
-
-    public String getGuard(int i) {
-        if ((i>=0) && (i<nbInternalTGComponent)) {
-            //
-            return tgcomponent[i].getValue();
-        }
-        return "";
-    }
-
-    public ArrayList<String> getGuards()        {
-
-        ArrayList<String> guards = new ArrayList<String>();
-        for( int i = 0; i < nbInternalTGComponent; i++ ) {
-            guards.add( getGuard(i) );
-        }
-        return guards;
-    }
-
-    public boolean hasUnvalidGuards() {
-        return (getUnvalidGuards() != null);
-    }
-
-    public String getUnvalidGuards() {
-        String s, g;
-        int index;
-        for(int i=0; i<nbInternalTGComponent; i++) {
-            s = getGuard(i);
-            g = s;
-            if ((s.compareTo("[]") != 0) && (s.compareTo("[ ]") != 0)) {
-                index = s.indexOf('/');
-                if (index == -1) {
-                    return g;
-                }
-                s = s.substring(1, index);
-                s = s.trim();
-                //
-                if (!TAttribute.isAValidId(s, false, false)) {
-                    //if (!s.matches("(\\w)+*(\\s)*")) {
-                    return g;
-                }
-            }
-        }
-
-        return null;
-    }
-
+//
+//    public String getGuard(int i) {
+//        if ((i>=0) && (i<nbInternalTGComponent)) {
+//            //
+//            return tgcomponent[i].getValue();
+//        }
+//        return "";
+//    }
+//
+//    public ArrayList<String> getGuards()        {
+//
+//        ArrayList<String> guards = new ArrayList<String>();
+//        for( int i = 0; i < nbInternalTGComponent; i++ ) {
+//            guards.add( getGuard(i) );
+//        }
+//        return guards;
+//    }
+//
+//    public boolean hasUnvalidGuards() {
+//        return (getUnvalidGuards() != null);
+//    }
+//
+//    public String getUnvalidGuards() {
+//        String s, g;
+//        int index;
+//        for(int i=0; i<nbInternalTGComponent; i++) {
+//            s = getGuard(i);
+//            g = s;
+//            if ((s.compareTo("[]") != 0) && (s.compareTo("[ ]") != 0)) {
+//                index = s.indexOf('/');
+//                if (index == -1) {
+//                    return g;
+//                }
+//                s = s.substring(1, index);
+//                s = s.trim();
+//                //
+//                if (!TAttribute.isAValidId(s, false, false)) {
+//                    //if (!s.matches("(\\w)+*(\\s)*")) {
+//                    return g;
+//                }
+//            }
+//        }
+//
+//        return null;
+//    }
+
+	@Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLCP;
     }
-
-
-
-    public TGConnectingPoint[] getConnectingPoints()    {
-        return connectingPoint;
-    }
-
-    public TGComponent[] getTGComponents()      {
-        return tgcomponent;
-    }
+//
+//    public TGConnectingPoint[] getConnectingPoints()    {
+//        return connectingPoint;
+//    }
+//
+//    public TGComponent[] getTGComponents()      {
+//        return tgcomponent;
+//    }
 }
diff --git a/src/main/java/ui/tmlcp/TMLCPForLoop.java b/src/main/java/ui/tmlcp/TMLCPForLoop.java
index 923246f4b90fcad985f52d5bf9c1ce8eaa2b9205..5a2e19156d237684c8a5f34a9e278e14cdfad72c 100755
--- a/src/main/java/ui/tmlcp/TMLCPForLoop.java
+++ b/src/main/java/ui/tmlcp/TMLCPForLoop.java
@@ -36,20 +36,30 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.tmlcp;
 
-import myutil.GraphicLib;
+import java.awt.Color;
+import java.awt.Graphics;
+
+import javax.swing.JFrame;
+
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
-import ui.*;
-import ui.util.IconManager;
-import ui.window.JDialogMultiString;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.geom.Line2D;
+import myutil.GraphicLib;
+import ui.BasicErrorHighlight;
+import ui.ColorManager;
+import ui.EmbeddedComment;
+import ui.ErrorHighlight;
+import ui.GTURTLEModeling;
+import ui.MalformedModelingException;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADForLoop;
+import ui.window.JDialogMultiString;
 
 /**
  * Class TMLCPForLoop
@@ -59,24 +69,24 @@ import java.awt.geom.Line2D;
  * @author Ludovic APVRILLE
  * @version 1.0 03/06/2015
  */
-public class TMLCPForLoop extends TGCWithoutInternalComponent implements EmbeddedComment, BasicErrorHighlight {
-    protected int lineLength = 5;
-    protected int textX = 5;
-    protected int textY = 15;
-    protected int arc = 5;
+public class TMLCPForLoop extends TADForLoop /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, BasicErrorHighlight {
+//    protected int lineLength = 5;
+//    protected int textX = 5;
+//    protected int textY = 15;
+//    protected int arc = 5;
 
     protected String init = "i=0";
     protected String condition = "i<5";
     protected String increment = "i = i+1";
 
-    protected int stateOfError = 0; // Not yet checked
+  //  protected int stateOfError = 0; // Not yet checked
 
     public TMLCPForLoop(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) {
         super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
-        width = 30;
-        height = 20;
-        minWidth = 30;
+//        width = 30;
+//        height = 20;
+//        minWidth = 30;
 
         nbConnectingPoint = 3;
         connectingPoint = new TGConnectingPoint[3];
@@ -84,17 +94,18 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde
         connectingPoint[1] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 1.0, 0.45); // loop
         connectingPoint[2] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp
 
-        moveable = true;
-        editable = true;
-        removable = true;
+//        moveable = true;
+//        editable = true;
+//        removable = true;
 
         makeValue();
 
         name = "for loop";
 
-        myImageIcon = IconManager.imgic912;
+//        myImageIcon = IconManager.imgic912;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         final int textWidth = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, textWidth + 2 * textX);
@@ -125,6 +136,7 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde
         g.drawString(value, x + (width - textWidth) / 2, y + textY);
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String[] labels = new String[3];
         String[] values = new String[3];
@@ -135,7 +147,6 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde
         labels[2] = "Increment at each loop";
         values[2] = increment;
 
-
         JDialogMultiString jdms = new JDialogMultiString(frame, "Setting loop's properties", 3, labels, values);
         //    jdms.setSize(400, 300);
         GraphicLib.centerOnParent(jdms, 400, 300);
@@ -151,24 +162,23 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde
         }
 
         return false;
-
     }
 
-    public TGComponent isOnMe(int _x, int _y) {
-        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-            return this;
-        }
-
-        if ((int) (Line2D.ptSegDistSq(x + (width / 2), y - lineLength, x + (width / 2), y + lineLength + height, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        if ((int) (Line2D.ptSegDistSq(x + width, y + height / 2, x + width + lineLength, y + height / 2, _x, _y)) < distanceSelected) {
-            return this;
-        }
-
-        return null;
-    }
+//    public TGComponent isOnMe(int _x, int _y) {
+//        if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//            return this;
+//        }
+//
+//        if ((int) (Line2D.ptSegDistSq(x + (width / 2), y - lineLength, x + (width / 2), y + lineLength + height, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        if ((int) (Line2D.ptSegDistSq(x + width, y + height / 2, x + width + lineLength, y + height / 2, _x, _y)) < distanceSelected) {
+//            return this;
+//        }
+//
+//        return null;
+//    }
 
     public void makeValue() {
         value = "for(" + init + ";" + condition + ";" + increment + ")";
@@ -190,6 +200,7 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde
         return increment;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<Data init=\"");
@@ -205,18 +216,12 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde
 
     @Override
     public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException {
-        //
         try {
-
             NodeList nli;
             Node n1, n2;
             Element elt;
 //            int k;
 //            String s;
-
-            //
-            //
-
             for (int i = 0; i < nl.getLength(); i++) {
                 n1 = nl.item(i);
                 //
@@ -239,23 +244,22 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde
             }
 
         } catch (Exception e) {
-            throw new MalformedModelingException();
+            throw new MalformedModelingException( e );
         }
         makeValue();
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.TMLCP_FOR_LOOP;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLCP;
     }
 
-    public void setStateAction(int _stateAction) {
-        stateOfError = _stateAction;
-    }
-
-
+//    public void setStateAction(int _stateAction) {
+//        stateOfError = _stateAction;
+//    }
 }
diff --git a/src/main/java/ui/tmlcp/TMLCPFork.java b/src/main/java/ui/tmlcp/TMLCPFork.java
index 4e98d86590eacd79e0ec4e65d8805d7caa3b9b0c..eeb8146e7acc91d84d9c294238c1b91f46be7223 100755
--- a/src/main/java/ui/tmlcp/TMLCPFork.java
+++ b/src/main/java/ui/tmlcp/TMLCPFork.java
@@ -37,17 +37,18 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
- 
 package ui.tmlcp;
 
+import java.awt.Graphics;
+import java.util.Arrays;
+import java.util.List;
+
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.EnablingADConnectorVisitor;
+import ui.ad.TADComponentWithoutSubcomponents;
 import ui.util.IconManager;
 
-import java.awt.*;
-
 /**
  * Class TMLCPFork
  * Fork operator. The incoming activity is split into several outgoing activities
@@ -56,7 +57,7 @@ import java.awt.*;
  * @version 1.0 17/02/2014
  * @author Ludovic APVRILLE
  */
-public class TMLCPFork extends TGCWithoutInternalComponent{
+public class TMLCPFork extends TADComponentWithoutSubcomponents /* Issue #69 TGCWithoutInternalComponent*/ {
 	
 	private int lineLength = 0;
 	private static int instanceCounter = 0;
@@ -81,7 +82,7 @@ public class TMLCPFork extends TGCWithoutInternalComponent{
 		connectingPoint[4] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.833, 1.0);
 		connectingPoint[5] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.5, 0.0);
                 
-                addTGConnectingPointsComment();
+        addTGConnectingPointsComment();
 
 		nbInternalTGComponent = 0;
 
@@ -96,11 +97,13 @@ public class TMLCPFork extends TGCWithoutInternalComponent{
 		myImageIcon = IconManager.imgic206;
 	}
 
+	@Override
 	public void internalDrawing(Graphics g) {
 		g.drawRect(x, y, width, height);
 		g.fillRect(x, y, width, height);
 	}
 
+	@Override
 	public TGComponent isOnMe(int x1, int y1) {
 		if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
 			return this;
@@ -112,11 +115,36 @@ public class TMLCPFork extends TGCWithoutInternalComponent{
 		return tgcomponent[0].getValue();	
 	}
 	
+	@Override
 	public int getType() {
 		return TGComponentManager.TMLCP_FORK;
 	}
 	
+	@Override
 	public int getDefaultConnector() {
       return TGComponentManager.CONNECTOR_TMLCP;
     }
+
+    public TGConnectingPoint getEnterConnectingPoint() {
+    	return connectingPoint[ 5 ];
+    }
+	
+    public List<TGConnectingPoint> getExitConnectingPoints() {
+    	return Arrays.asList( Arrays.copyOfRange( connectingPoint, 0, connectingPoint.length - 1 ) );
+    }
+	
+    /**
+     * Issue #69
+     * @param _enabled
+     */
+    @Override
+    public void setEnabled( final boolean _enabled ) {
+    	super.setEnabled( _enabled );
+    	
+    	for ( final TGConnectingPoint point : connectingPoint ) {
+    		if ( point != getEnterConnectingPoint() ) {
+    			point.acceptForward( new EnablingADConnectorVisitor( _enabled ) );
+        	}
+    	}
+    }
 }
diff --git a/src/main/java/ui/tmlcp/TMLCPJoin.java b/src/main/java/ui/tmlcp/TMLCPJoin.java
index 74a4ae549865794cac2638a76600d3094ecd0d80..341f896cde57bc4c08d38b91565f367f4cb59474 100755
--- a/src/main/java/ui/tmlcp/TMLCPJoin.java
+++ b/src/main/java/ui/tmlcp/TMLCPJoin.java
@@ -37,17 +37,16 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
- 
 package ui.tmlcp;
 
+import java.awt.Graphics;
+import java.util.Arrays;
+import java.util.List;
+
 import myutil.GraphicLib;
 import ui.*;
 import ui.util.IconManager;
 
-import java.awt.*;
-
 /**
  * Class TMLCPJoin
  * Join operator. All  incoming activities join in one remaining activity
@@ -81,8 +80,7 @@ public class TMLCPJoin extends TGCWithoutInternalComponent{
 		connectingPoint[4] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.833, 0.0);
 		connectingPoint[5] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.5, 1.0);
 
-                
-                addTGConnectingPointsComment();
+		addTGConnectingPointsComment();
 
 		nbInternalTGComponent = 0;
 
@@ -97,11 +95,13 @@ public class TMLCPJoin extends TGCWithoutInternalComponent{
 		myImageIcon = IconManager.imgic206;
 	}
 
+	@Override
 	public void internalDrawing(Graphics g) {
 		g.drawRect(x, y, width, height);
 		g.fillRect(x, y, width, height);
 	}
 
+	@Override
 	public TGComponent isOnMe(int x1, int y1) {
 		if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
 			return this;
@@ -113,11 +113,21 @@ public class TMLCPJoin extends TGCWithoutInternalComponent{
 		return tgcomponent[0].getValue();	
 	}
 	
+	@Override
 	public int getType() {
 		return TGComponentManager.TMLCP_JOIN;
 	}
 	
+	@Override
 	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLCP;
+		return TGComponentManager.CONNECTOR_TMLCP;
+    }
+	
+    public List<TGConnectingPoint> getEnterConnectingPoints() {
+    	return Arrays.asList( Arrays.copyOfRange( connectingPoint, 0, connectingPoint.length - 1 ) );
+    }
+
+    public TGConnectingPoint getExitConnectingPoint() {
+    	return connectingPoint[ 5 ];
     }
 }
diff --git a/src/main/java/ui/tmlcp/TMLCPJunction.java b/src/main/java/ui/tmlcp/TMLCPJunction.java
deleted file mode 100755
index 007fc1f42614b18a4d92167da3198e77cb1bc78f..0000000000000000000000000000000000000000
--- a/src/main/java/ui/tmlcp/TMLCPJunction.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille, Andrea Enrici
- * 
- * ludovic.apvrille AT telecom-paristech.fr
- * andrea.enrici AT telecom-paristech.fr
- * 
- * This software is a computer program whose purpose is to allow the
- * edition of TURTLE analysis, design and deployment diagrams, to
- * allow the generation of RT-LOTOS or Java code from this diagram,
- * and at last to allow the analysis of formal validation traces
- * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP
- * from INRIA Rhone-Alpes.
- * 
- * This software is governed by the CeCILL  license under French law and
- * abiding by the rules of distribution of free software.  You can  use,
- * modify and/ or redistribute the software under the terms of the CeCILL
- * license as circulated by CEA, CNRS and INRIA at the following URL
- * "http://www.cecill.info".
- * 
- * As a counterpart to the access to the source code and  rights to copy,
- * modify and redistribute granted by the license, users are provided only
- * with a limited warranty  and the software's author,  the holder of the
- * economic rights,  and the successive licensors  have only  limited
- * liability.
- * 
- * In this respect, the user's attention is drawn to the risks associated
- * with loading,  using,  modifying and/or developing or reproducing the
- * software by the user in light of its specific status of free software,
- * that may mean  that it is complicated to manipulate,  and  that  also
- * therefore means  that it is reserved for developers  and  experienced
- * professionals having in-depth computer knowledge. Users are therefore
- * encouraged to load and test the software's suitability as regards their
- * requirements in conditions enabling the security of their systems and/or
- * data to be ensured and,  more generally, to use and operate it in the
- * same conditions as regards security.
- * 
- * The fact that you are presently reading this means that you have had
- * knowledge of the CeCILL license and that you accept its terms.
- */
-
-
-
- 
-package ui.tmlcp;
-
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
-import java.awt.geom.Line2D;
-
-
-/**
- * Class TMLCPJunction
- * Junction between several activities, without any synchronization. 
- * To be used in communication patterns diagrams
- * Creation: 17/02/2014
- * @version 1.0 17/02/2014
- * @author Ludovic APVRILLE, Andrea ENRICI
- */
-public class TMLCPJunction extends TGCWithoutInternalComponent {
-
-	private static int instanceCounter = 0;
-	private int counter = 0;
-	
-	public TMLCPJunction(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
-		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
-		
-		width = 30;
-		height = 30;
-
-		nbConnectingPoint = 4;
-		connectingPoint = new TGConnectingPoint[nbConnectingPoint];
-		connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, 0, true, false, 0.5, 0.0);
-		connectingPoint[1] = new TGConnectingPointTMLCP(this, 0, 0, true, false, 0.0, 0.5);
-		connectingPoint[2] = new TGConnectingPointTMLCP(this, 0, 0, true, false, 1.0, 0.5);
-		connectingPoint[3] = new TGConnectingPointTMLCP(this, 0, 0, false, true, 0.5, 1);
-
-		moveable = true;
-		editable = false;
-		removable = true;
-	
-		value = "";
-		instanceCounter++;
-		counter = instanceCounter;
-		name = "junction" + Integer.toString(counter);
-		
-		myImageIcon = IconManager.imgic212;
-	}
-
-	public void internalDrawing(Graphics g) {
-		g.drawLine(x +width/2, y,  x+width/2, y + height);
-		g.drawLine(x, y + (height/2), x+width, y + (height/2));
-	}
-
-	public TGComponent isOnMe(int _x, int _y) {
-		// vertical line
-		if ((int)(Line2D.ptSegDistSq(x +width/2, y,  x+width/2, y + height, _x, _y)) < distanceSelected) {
-			return this;	
-		}
-		// horizontal line
-		if ((int)(Line2D.ptSegDistSq(x, y + (height/2), x+width, y + (height/2), _x, _y)) < distanceSelected) {
-			return this;	
-		}
-		return null;
-	}
-	
-	public int getType() {
-		return TGComponentManager.TMLCP_JUNCTION;
-	}
-	
-	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLCP;
-    }
-
-}
-
-
-
-
-    
-
-
diff --git a/src/main/java/ui/tmlcp/TMLCPPanel.java b/src/main/java/ui/tmlcp/TMLCPPanel.java
index 94bdaf07d13098377ec634b2cf0548a893b38a00..cb458388ddd31668b754b4cc3f9cc31631b3e29b 100755
--- a/src/main/java/ui/tmlcp/TMLCPPanel.java
+++ b/src/main/java/ui/tmlcp/TMLCPPanel.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlcp;
 
 import ui.*;
@@ -60,6 +57,7 @@ public class TMLCPPanel extends TDiagramPanel {
 
     }
     
+    @Override
     public boolean actionOnDoubleClick(TGComponent tgc) {
         //
         /*if (tgc instanceof TCDTClass) {
@@ -80,6 +78,7 @@ public class TMLCPPanel extends TDiagramPanel {
         return false;
     }
     
+    @Override
     public boolean actionOnAdd(TGComponent tgc) {
         /*if (tgc instanceof TCDTClass) {
             TCDTClass tgcc = (TCDTClass)(tgc);
@@ -89,6 +88,7 @@ public class TMLCPPanel extends TDiagramPanel {
         return false;
     }
     
+    @Override
     public boolean actionOnRemove(TGComponent tgc) {
         /*if (tgc instanceof TCDTClass) {
             TCDTClass tgcc = (TCDTClass)(tgc);
@@ -99,6 +99,7 @@ public class TMLCPPanel extends TDiagramPanel {
         return false;
     }
     
+    @Override
     public boolean actionOnValueChanged(TGComponent tgc) {
         /*if (tgc instanceof TCDTClass) {
             return actionOnDoubleClick(tgc);
@@ -106,26 +107,32 @@ public class TMLCPPanel extends TDiagramPanel {
         return false;
     }
     
+    @Override
     public String getXMLHead() {
         return "<CommunicationPatternDiagramPanel name=\"" + name + "\"" + sizeParam() + " >";
     }
     
+    @Override
     public String getXMLTail() {
         return "</CommunicationPatternDiagramPanel>";
     }
     
+    @Override
     public String getXMLSelectedHead() {
         return "<CommunicationPatternDiagramPanelCopy name=\"" + name + "\" xSel=\"" + xSel + "\" ySel=\"" + ySel + "\" widthSel=\"" + widthSel + "\" heightSel=\"" + heightSel + "\" >";
     }
     
+    @Override
     public String getXMLSelectedTail() {
         return "</CommunicationPatternDiagramPanelCopy>";
     }
     
+    @Override
     public String getXMLCloneHead() {
         return "<CommunicationPatternDiagramPanelCopy name=\"" + name + "\" xSel=\"" + 0 + "\" ySel=\"" + 0 + "\" widthSel=\"" + 0 + "\" heightSel=\"" + 0 + "\" >";
     }
     
+    @Override
     public String getXMLCloneTail() {
         return "</CommunicationPatternDiagramPanelCopy>";
     }
@@ -183,7 +190,7 @@ public class TMLCPPanel extends TDiagramPanel {
     }*/
     
     public void makePostLoadingProcessing() throws MalformedModelingException {
-        TGComponent tgc;
+       // TGComponent tgc;
         
         /*for(int i=0; i<componentList.size(); i++) {
             tgc = (TGComponent)(componentList.elementAt(i));
@@ -225,7 +232,7 @@ public class TMLCPPanel extends TDiagramPanel {
         //
         Vector<TGComponent> v = new Vector<>();
         Object o;
-        Iterator iterator = componentList.listIterator();
+        Iterator<TGComponent> iterator = componentList.listIterator();
         
         while(iterator.hasNext()) {
             o = iterator.next();
@@ -243,8 +250,6 @@ public class TMLCPPanel extends TDiagramPanel {
         TGConnector tgcon;
         int i;
         
-        //
-        
         if (tgc == null) {
             return;
         }
@@ -275,8 +280,8 @@ public class TMLCPPanel extends TDiagramPanel {
         }
     }
 	
+    @Override
 	public boolean hasAutoConnect() {
 		return true;
 	}
-   
 }
diff --git a/src/main/java/ui/tmlcp/TMLCPRefAD.java b/src/main/java/ui/tmlcp/TMLCPRefAD.java
index 621a6c6772be6fe0b50f9016ddb4fb75169887bc..5e07d716018dd43b9402c9b5ebbfcd8d6a1c8cef 100755
--- a/src/main/java/ui/tmlcp/TMLCPRefAD.java
+++ b/src/main/java/ui/tmlcp/TMLCPRefAD.java
@@ -37,13 +37,11 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlcp;
 
 import myutil.GraphicLib;
 import ui.*;
+import ui.ad.TADOneLineText;
 import ui.util.IconManager;
 
 import javax.swing.*;
@@ -59,7 +57,7 @@ import java.awt.geom.Line2D;
  * @version 1.0 17/02/2014
  * @author Ludovic APVRILLE, Andrea ENRICI
  */
-public class TMLCPRefAD extends TGCOneLineText {
+public class TMLCPRefAD extends TADOneLineText /* Issue #69 TGCOneLineText*/ {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
@@ -89,6 +87,7 @@ public class TMLCPRefAD extends TGCOneLineText {
         myImageIcon = IconManager.imgic400;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         //int w2 = g.getFontMetrics().stringWidth("ref");
         int w  = g.getFontMetrics().stringWidth(value) /*+ w2*/;
@@ -119,6 +118,7 @@ public class TMLCPRefAD extends TGCOneLineText {
 
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -136,12 +136,13 @@ public class TMLCPRefAD extends TGCOneLineText {
     }
 
 
+    @Override
     public int getType() {
         return TGComponentManager.TMLCP_REF_CP;
     }
 
+    @Override
     public void addActionToPopupMenu( JPopupMenu componentMenu, ActionListener menuAL, int x, int y ) {
-
         componentMenu.addSeparator();
         boolean b = ( (TMLCPPanel)tdp ).isTMLCPCreated( name );
         JMenuItem isCPCreated;
@@ -157,8 +158,8 @@ public class TMLCPRefAD extends TGCOneLineText {
         componentMenu.add( isCPCreated );
     }
 
+    @Override
     public boolean eventOnPopup( ActionEvent e ) {
-
         boolean b = ( (TMLCPPanel)tdp ).isTMLCPCreated( name );
         if (b) {
             ( (TMLCPPanel)tdp ).openTMLCPDiagram( name );
@@ -170,13 +171,13 @@ public class TMLCPRefAD extends TGCOneLineText {
         return true;
     }
 
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.CONNECTOR_TMLCP;
     }
 
-    @Override public boolean editOndoubleClick( JFrame frame ) {
-
-        //
+    @Override
+    public boolean editOndoubleClick( JFrame frame ) {
         String text = "Reference to AD: ";
         if( hasFather() ) {
             text = getTopLevelName() + " / " + text;
diff --git a/src/main/java/ui/tmlcp/TMLCPRefSD.java b/src/main/java/ui/tmlcp/TMLCPRefSD.java
index da3776579b218ce6bee5058d08b3faea9f064ccd..dc6bb9e8469ffe7fc6f6b911a8aa3e1fc8179d92 100755
--- a/src/main/java/ui/tmlcp/TMLCPRefSD.java
+++ b/src/main/java/ui/tmlcp/TMLCPRefSD.java
@@ -36,22 +36,28 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlcp;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.tmlsd.TMLSDPanel;
-import ui.util.IconManager;
-
-import javax.swing.*;
-import java.awt.*;
+import java.awt.Color;
+import java.awt.Graphics;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.geom.Line2D;
 
+import javax.swing.JFrame;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
+import javax.swing.JPopupMenu;
+
+import myutil.GraphicLib;
+import ui.ColorManager;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADOneLineText;
+import ui.util.IconManager;
+
 /**
  * Class TMLCPRefSD
  * Reference to an SD in a communication pattern diagram
@@ -59,12 +65,12 @@ import java.awt.geom.Line2D;
  * @version 1.0 17/02/2014
  * @author Ludovic APVRILLE
  */
-public class TMLCPRefSD extends TGCOneLineText {
+public class TMLCPRefSD extends TADOneLineText /* Issue #69 TGCOneLineText*/ {
     protected int lineLength = 5;
     protected int textX =  5;
     protected int textY =  15;
     protected int arc = 5;
-		private TMLSDPanel refToSD;
+	//	private TMLSDPanel refToSD;
 //		private TGConnectorTMLCP[] connectors = new TGConnectorTMLCP[2];
 		//private int index = 0;
 
@@ -87,11 +93,12 @@ public class TMLCPRefSD extends TGCOneLineText {
         removable = true;
         value = "Reference to a SD";
         name = "SequenceDiagram";
-				refToSD = null;
+		//		refToSD = null;
 
         myImageIcon = IconManager.imgic400;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
         //int w2 = g.getFontMetrics().stringWidth("ref");
         int w  = g.getFontMetrics().stringWidth(value) /*+ w2*/;
@@ -118,6 +125,7 @@ public class TMLCPRefSD extends TGCOneLineText {
         g.drawLine(x+15, y+15, x+25, y+8);
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -134,41 +142,42 @@ public class TMLCPRefSD extends TGCOneLineText {
         return value;
     }
     
-    
+    @Override
     public int getType() {
         return TGComponentManager.TMLCP_REF_SD;
     }
     
+    @Override
     public void addActionToPopupMenu( JPopupMenu componentMenu, ActionListener menuAL, int x, int y ) {
-			
-			componentMenu.addSeparator();
-      boolean b = ((TMLCPPanel)tdp).isTMLCPSDCreated( name );
-      JMenuItem isSDCreated;
-        
-      if( b )	{ 
-				isSDCreated = new JMenuItem("Open diagram");
-			}
-			else	{
-				isSDCreated = new JMenuItem( "Create Sequence Diagram" );
-      }
-        
-      isSDCreated.addActionListener( menuAL );
-      componentMenu.add( isSDCreated );
+    	componentMenu.addSeparator();
+    	boolean b = ((TMLCPPanel)tdp).isTMLCPSDCreated( name );
+    	JMenuItem isSDCreated;
+
+    	if( b )	{ 
+    		isSDCreated = new JMenuItem("Open diagram");
+    	}
+    	else	{
+    		isSDCreated = new JMenuItem( "Create Sequence Diagram" );
+    	}
+
+    	isSDCreated.addActionListener( menuAL );
+    	componentMenu.add( isSDCreated );
     }
     
+    @Override
     public boolean eventOnPopup(ActionEvent e) {
-
-			boolean b = ((TMLCPPanel)tdp).isTMLCPSDCreated( name );
-      if( b )	{
-				( (TMLCPPanel)tdp ).openTMLCPSequenceDiagram( name );
-      }
-			else {
-				( (TMLCPPanel)tdp ).createTMLCPSequenceDiagram( name );
-			}
-      tdp.getMouseManager().setSelection(-1, -1);
-      return true;
+    	boolean b = ((TMLCPPanel)tdp).isTMLCPSDCreated( name );
+    	if( b )	{
+    		( (TMLCPPanel)tdp ).openTMLCPSequenceDiagram( name );
+    	}
+    	else {
+    		( (TMLCPPanel)tdp ).createTMLCPSequenceDiagram( name );
+    	}
+    	tdp.getMouseManager().setSelection(-1, -1);
+    	return true;
     }
 	
+    @Override
 	public int getDefaultConnector() {
       return TGComponentManager.CONNECTOR_TMLCP;
     }
@@ -177,28 +186,26 @@ public class TMLCPRefSD extends TGCOneLineText {
 		refToSD = _panel;
 	}*/
 
-	@Override public boolean editOndoubleClick(JFrame frame) {
-		
-		//
-     String text = "Reference to a SD: ";
-    if( hasFather() ) {
+	@Override
+	public boolean editOndoubleClick(JFrame frame) {
+		String text = "Reference to a SD: ";
+		if( hasFather() ) {
 			text = getTopLevelName() + " / " + text;
-    }
-    String s = (String) JOptionPane.showInputDialog(frame, text,
-		"Setting Name", JOptionPane.PLAIN_MESSAGE, IconManager.imgic100, null, getName() );
-    if( (s != null) && (s.length() > 0) )	{
-    	if (nameUsed(s)) {
-            JOptionPane.showMessageDialog(frame,
-                                          "Error: the name is already in use",
-                                          "Name modification",
-                                          JOptionPane.ERROR_MESSAGE);
-            return false;
-        }
-    		renameTab(s);
+		}
+		String s = (String) JOptionPane.showInputDialog(frame, text,
+				"Setting Name", JOptionPane.PLAIN_MESSAGE, IconManager.imgic100, null, getName() );
+		if( (s != null) && (s.length() > 0) )	{
+			if (nameUsed(s)) {
+				JOptionPane.showMessageDialog(frame,
+						"Error: the name is already in use",
+						"Name modification",
+						JOptionPane.ERROR_MESSAGE);
+				return false;
+			}
+			renameTab(s);
 			setName(s);
 			return true;
 		}
-    return false;
+		return false;
     }
-
 }	//End of Class
diff --git a/src/main/java/ui/tmlcp/TMLCPStartState.java b/src/main/java/ui/tmlcp/TMLCPStartState.java
index d7eadfa554e6ffa5124cf796bec44e76a906ed5d..03816840c1817200800f6c78f911828490f48d92 100755
--- a/src/main/java/ui/tmlcp/TMLCPStartState.java
+++ b/src/main/java/ui/tmlcp/TMLCPStartState.java
@@ -36,17 +36,13 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
- 
 package ui.tmlcp;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
-import java.awt.geom.Line2D;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADStartState;
 
 /**
  * Class TMLCPStartState
@@ -55,52 +51,61 @@ import java.awt.geom.Line2D;
  * @version 1.0 17/02/2014
  * @author Ludovic APVRILLE
  */
-public class TMLCPStartState extends TGCWithoutInternalComponent{
+public class TMLCPStartState extends TADStartState /* Issue #69 TGCWithoutInternalComponent*/{
 	private int lineLength = 5;
 
 	public TMLCPStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
 		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 		
-		width = 15;
-		height = 15;
+//		width = 15;
+//		height = 15;
+//
+//		nbConnectingPoint = 1;
+//		connectingPoint = new TGConnectingPoint[1];
+//		connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.5, 1.0);
+//
+//		nbInternalTGComponent = 0;
+//
+//		moveable = true;
+//		editable = false;
+//		removable = true;
+//	
+//		name = "start state";
+//		
+//		myImageIcon = IconManager.imgic222;
+	}
 
+	@Override
+    protected void createConnectingPoints() {
 		nbConnectingPoint = 1;
 		connectingPoint = new TGConnectingPoint[1];
 		connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.5, 1.0);
-
-		nbInternalTGComponent = 0;
-
-		moveable = true;
-		editable = false;
-		removable = true;
-	
-		name = "start state";
-		
-		myImageIcon = IconManager.imgic222;
 	}
 
-	public void internalDrawing(Graphics g) {
-		g.fillOval(x, y, width, height);
-		g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
-	}
+//	public void internalDrawing(Graphics g) {
+//		g.fillOval(x, y, width, height);
+//		g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height);
+//	}
 
-	public TGComponent isOnMe(int _x, int _y) {
-		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-			return this;
-		}
-		
-		if ((int)(Line2D.ptSegDistSq(x+(width/2), y+height, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) {
-			return this;	
-		}
-		
-		return null;
-	}
+//	public TGComponent isOnMe(int _x, int _y) {
+//		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//			return this;
+//		}
+//		
+//		if ((int)(Line2D.ptSegDistSq(x+(width/2), y+height, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) {
+//			return this;	
+//		}
+//		
+//		return null;
+//	}
 	
+	@Override
 	public int getType() {
 		return TGComponentManager.TMLCP_START_STATE;
 	}	
 	
+	@Override
 	public int getDefaultConnector() {
-      return TGComponentManager.CONNECTOR_TMLCP;
+		return TGComponentManager.CONNECTOR_TMLCP;
     }
 }
\ No newline at end of file
diff --git a/src/main/java/ui/tmlcp/TMLCPStopState.java b/src/main/java/ui/tmlcp/TMLCPStopState.java
index f5f6bdc4be267b5a6560f742051095cc6b96fed9..238b27a331a28c1e34f5ecd4f0ae2b0e195e6a59 100755
--- a/src/main/java/ui/tmlcp/TMLCPStopState.java
+++ b/src/main/java/ui/tmlcp/TMLCPStopState.java
@@ -35,17 +35,14 @@
  * The fact that you are presently reading this means that you have had
  * knowledge of the CeCILL license and that you accept its terms.
  */
-
-
-
  
 package ui.tmlcp;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-
-import java.awt.*;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.ad.TADStopState;
 
 /**
  * Class TMLCPStopState
@@ -54,55 +51,55 @@ import java.awt.*;
  * @version 1.0 30/09/2004
  * @author Ludovic APVRILLE
  */
-public class TMLCPStopState extends TGCWithoutInternalComponent{
-	private int internalCircleSize = 16;
-	private int lineLength = 5;
+public class TMLCPStopState extends TADStopState /* Issue #69 TGCWithoutInternalComponent*/{
+//	private int internalCircleSize = 16;
+//	private int lineLength = 5;
 
 	public TMLCPStopState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp)  {
 		super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp);
 
-		width = 20;
-		height = 20;
+//		width = 20;
+//		height = 20;
+//
+//		nbConnectingPoint = 1;
+//		connectingPoint = new TGConnectingPoint[1];
+//		connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, - lineLength, true, false, 0.5, 0.0);
+//
+//		nbInternalTGComponent = 0;
+//
+//		moveable = true;
+//		editable = false;
+//		removable = true;
+//	
+//		name = "stop state";
+//		
+//		myImageIcon = IconManager.imgic210;
+	}
 
+	@Override
+	protected void createConnectingPoints() {
 		nbConnectingPoint = 1;
 		connectingPoint = new TGConnectingPoint[1];
 		connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, - lineLength, true, false, 0.5, 0.0);
-
-		nbInternalTGComponent = 0;
-
-		moveable = true;
-		editable = false;
-		removable = true;
-	
-		name = "stop state";
-		
-		myImageIcon = IconManager.imgic210;
-	}
-
-	public void internalDrawing(Graphics g) {
-		ColorManager.setColor(g, state, 0);
-		g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize);
-		g.drawOval(x, y, width, height);
-		g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
 	}
 
-
-	public TGComponent isOnMe(int _x, int _y) {
-		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
-			return this;
-		}
-		return null;
-	}
+//	public void internalDrawing(Graphics g) {
+//		ColorManager.setColor(g, state, 0);
+//		g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize);
+//		g.drawOval(x, y, width, height);
+//		g.drawLine(x+(width/2), y, x+(width/2), y - lineLength);
+//	}
+//
+//
+//	public TGComponent isOnMe(int _x, int _y) {
+//		if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
+//			return this;
+//		}
+//		return null;
+//	}
 	
+    @Override
 	public int getType() {
 		return TGComponentManager.TMLCP_STOP_STATE;
 	}
-	
 }
-
-
-
-
-    
-
-
diff --git a/src/main/java/ui/tmlcp/TMLCPToolBar.java b/src/main/java/ui/tmlcp/TMLCPToolBar.java
index a75922b2cf303fd4de6dba6e6b40755961853f71..aca7bcf04ae1881d51f92a490421d16d5b9b1a0f 100755
--- a/src/main/java/ui/tmlcp/TMLCPToolBar.java
+++ b/src/main/java/ui/tmlcp/TMLCPToolBar.java
@@ -37,9 +37,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.tmlcp;
 
 import ui.MainGUI;
@@ -48,9 +45,6 @@ import ui.TToolBar;
 
 import javax.swing.*;
 
-//import java.awt.*;
-//import java.awt.event.*;
-
 /**
    * Class TMLCPToolBar
    * Implements the toolbar to be used in conjunction with the panel of an interaction overview diagram
@@ -63,9 +57,9 @@ public class TMLCPToolBar extends TToolBar {
 
     public TMLCPToolBar(MainGUI _mgui) {
         super(_mgui);
-
     }
 
+    @Override
     protected void setActive(boolean b) {
         mgui.actions[TGUIAction.TMLCP_EDIT].setEnabled(b);
         mgui.actions[TGUIAction.UML_NOTE].setEnabled(b);
@@ -79,7 +73,7 @@ public class TMLCPToolBar extends TToolBar {
         mgui.actions[TGUIAction.TMLCP_START].setEnabled(b);
         mgui.actions[TGUIAction.TMLCP_STOP].setEnabled(b);
         //mgui.actions[TGUIAction.TMLCP_JUNCTION].setEnabled(b);
-	mgui.actions[TGUIAction.TMLCP_FOR_LOOP].setEnabled(b);
+        mgui.actions[TGUIAction.TMLCP_FOR_LOOP].setEnabled(b);
         mgui.actions[TGUIAction.ACT_ENHANCE].setEnabled(b);
 
         mgui.actions[TGUIAction.ACT_ZOOM_MORE].setEnabled(false);
@@ -90,6 +84,7 @@ public class TMLCPToolBar extends TToolBar {
 
     }
 
+    @Override
     protected void setButtons() {
         JButton button;
 
@@ -129,7 +124,7 @@ public class TMLCPToolBar extends TToolBar {
         button.addMouseListener(mgui.mouseHandler);
 
         button = this.add(mgui.actions[TGUIAction.TMLCP_JOIN]);
-	button.addMouseListener(mgui.mouseHandler);
+        button.addMouseListener(mgui.mouseHandler);
 	
 
         button = this.add(mgui.actions[TGUIAction.TMLCP_CHOICE]);
@@ -138,14 +133,12 @@ public class TMLCPToolBar extends TToolBar {
         /*button = this.add(mgui.actions[TGUIAction.TMLCP_JUNCTION]);
 	  button.addMouseListener(mgui.mouseHandler);*/
 
-	button = this.add(mgui.actions[TGUIAction.TMLCP_FOR_LOOP]);
-	button.addMouseListener(mgui.mouseHandler);
+        button = this.add(mgui.actions[TGUIAction.TMLCP_FOR_LOOP]);
+        button.addMouseListener(mgui.mouseHandler);
 
         this.addSeparator();
 
         button = this.add(mgui.actions[TGUIAction.ACT_ENHANCE]);
         button.addMouseListener(mgui.mouseHandler);
-
     }
-
 } // Class
diff --git a/src/main/java/ui/tmldd/TMLArchiDiagramToolBar.java b/src/main/java/ui/tmldd/TMLArchiDiagramToolBar.java
index e4ba382344471f10a966ad4de782779ee427e33d..1d1c8571b49ddee9c7ff55e2515605062f647938 100755
--- a/src/main/java/ui/tmldd/TMLArchiDiagramToolBar.java
+++ b/src/main/java/ui/tmldd/TMLArchiDiagramToolBar.java
@@ -69,6 +69,7 @@ public class TMLArchiDiagramToolBar extends TToolBar  implements ActionListener
         super(_mgui);
     }
 
+    @Override
     protected void setActive(boolean b) {
         mgui.actions[TGUIAction.TMLARCHI_EDIT].setEnabled(b);
         mgui.actions[TGUIAction.UML_NOTE].setEnabled(b);
@@ -100,6 +101,7 @@ public class TMLArchiDiagramToolBar extends TToolBar  implements ActionListener
         mgui.updateZoomInfo();
     }
 
+    @Override
     protected void setButtons() {
         JButton button;
 
diff --git a/src/main/java/ui/util/DefaultText.java b/src/main/java/ui/util/DefaultText.java
index c259e8b36dfca8252615d12c2b33cae4ccbca318..877c5db16f3df9a4bb9268866d5ac48832d33fb2 100755
--- a/src/main/java/ui/util/DefaultText.java
+++ b/src/main/java/ui/util/DefaultText.java
@@ -50,8 +50,8 @@ package ui.util;
  */
 public class DefaultText {
 
-    public static String BUILD = "12714";
-    public static String DATE = "2018/07/30 02:01:35 CET";
+    public static String BUILD = "12720";
+    public static String DATE = "2018/08/05 02:01:48 CET";
 
     public static StringBuffer sbAbout = makeAbout();
 
diff --git a/src/main/java/ui/window/JBirdPanel.java b/src/main/java/ui/window/JBirdPanel.java
index 5b0265f9fc0c8b23399ae44bde72d35b96d65ac4..9c37bc6b7f025968aabfe120cfc7699d3191b919 100644
--- a/src/main/java/ui/window/JBirdPanel.java
+++ b/src/main/java/ui/window/JBirdPanel.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.window;
 
 import ui.ColorManager;
@@ -51,7 +48,6 @@ import java.awt.event.MouseEvent;
 import java.awt.event.MouseListener;
 import java.awt.event.MouseMotionListener;
 
-
 /**
  * Class JbirdPanel
  * Panel for displaying bird'eyes view of panels
@@ -60,7 +56,8 @@ import java.awt.event.MouseMotionListener;
  * @author Ludovic APVRILLE
  */
 public class JBirdPanel extends JPanel implements MouseListener, MouseMotionListener {
-    private MainGUI mgui;
+
+	private MainGUI mgui;
     private int w, h, wc, wh;
     //private Image image, scaledImage;
     //private Graphics graphics;
@@ -84,6 +81,7 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList
         startProcess();
     }
     
+    @Override
     protected void paintComponent(Graphics g) {
         if (isShowing()) {
             super.paintComponent(g);
@@ -109,8 +107,7 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList
         }
     }
     
-    
-    public void centerRectangle(int x, int y) {
+    private void centerRectangle(int x, int y) {
         if (rect != null) {
             x = (int)(x - rect.width*wratio/2);
             y = (int)(y - rect.height*hratio/2);
@@ -127,6 +124,7 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList
         }
     }
     
+    @Override
     public void mousePressed(MouseEvent e) {
         //
         //startX = e.getX();
@@ -145,28 +143,27 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList
         }
     }
     
-    public void mouseReleased(MouseEvent e) {
-        
+    @Override
+   public void mouseReleased(MouseEvent e) {
     }
     
+    @Override
     public void mouseEntered(MouseEvent e) {
-        
     }
     
+    @Override
     public void mouseExited(MouseEvent e) {
-        
     }
     
+    @Override
     public void mouseClicked(MouseEvent e) {
-        
     }
     
-    
+    @Override
     public void mouseMoved(MouseEvent e) {
-        
-        
     }
     
+    @Override
     public void mouseDragged(MouseEvent e) {
         centerRectangle(e.getX(), e.getY());
     }
@@ -183,5 +180,4 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList
     public boolean getGo() {
         return go;
     }
-    
 }
diff --git a/src/main/java/ui/window/JDialogAvatarSignal.java b/src/main/java/ui/window/JDialogAvatarSignal.java
index 555e36aa46bb837cc0978c7e3681ec66cfece14d..611cfe791b2fb3e49bc3f13926492324faa8ad51 100644
--- a/src/main/java/ui/window/JDialogAvatarSignal.java
+++ b/src/main/java/ui/window/JDialogAvatarSignal.java
@@ -61,7 +61,6 @@ import myutil.TraceManager;
 import ui.AvatarSignal;
 import ui.TGComponent;
 
-
 /**
  * Class JDialogAvatarSignal
  * Dialog for managing several string components
@@ -92,7 +91,6 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener
 
     /** Creates new form  */
     public JDialogAvatarSignal(Frame _f, String _title, String _currentSignal, List<AvatarSignal> _signals, boolean _isOut, TGComponent _reference, Vector<TGComponent> _refs) {
-
         super(_f, _title, true);
 
         signals = _signals;
@@ -101,11 +99,10 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener
 		reference=_reference;
 		refs=_refs;
 
-
         makeSignals();
 
         initComponents();
-        myInitComponents();
+//        myInitComponents();
 
         pack();
     }
@@ -121,11 +118,8 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener
             }
     }
 
-
-
-    private void myInitComponents() {
-    }
-
+//    private void myInitComponents() {
+//    }
 
     private void initComponents() {
         Container c = getContentPane();
@@ -196,6 +190,7 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener
         c.add(buttons, BorderLayout.SOUTH);
     }
 
+    @Override
     public void	actionPerformed(ActionEvent evt)  {
         //String command = evt.getActionCommand();
 
@@ -227,7 +222,6 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener
 		return (TGComponent) refChecks.getSelectedItem();
 	}
 
-
     public boolean hasValidString() {
         return signal.getText().length() > 0;
     }
diff --git a/src/main/java/ui/window/JDialogAvatarTransition.java b/src/main/java/ui/window/JDialogAvatarTransition.java
index e1847f538c9fe58a0ef19c27796859521625af6b..ff423d54bd155d2ee20b3164a509152cfec139aa 100644
--- a/src/main/java/ui/window/JDialogAvatarTransition.java
+++ b/src/main/java/ui/window/JDialogAvatarTransition.java
@@ -47,9 +47,12 @@ import java.awt.GridBagLayout;
 import java.awt.Insets;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 import java.util.Vector;
 
+import javax.swing.DefaultCellEditor;
 import javax.swing.JButton;
 import javax.swing.JComboBox;
 import javax.swing.JFrame;
@@ -57,12 +60,22 @@ import javax.swing.JLabel;
 import javax.swing.JPanel;
 import javax.swing.JScrollPane;
 import javax.swing.JTabbedPane;
+import javax.swing.JTable;
 import javax.swing.JTextArea;
 import javax.swing.JTextField;
+import javax.swing.ListSelectionModel;
+import javax.swing.SwingConstants;
+import javax.swing.border.TitledBorder;
+import javax.swing.event.CellEditorListener;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.text.BadLocationException;
 
-import myutil.Conversion;
 import myutil.GraphicLib;
 import ui.AvatarMethod;
+import ui.Expression;
 import ui.TAttribute;
 
 /**
@@ -74,25 +87,36 @@ import ui.TAttribute;
  */
 public class JDialogAvatarTransition extends JDialogBase implements ActionListener  {
 
-    private Vector<String> actions;
-    private String guard, afterMin, afterMax, computeMin, computeMax, probability;
+    private Vector<Vector<Expression>> actionRows;
+    //private Vector<String> actions;
+    private String guard, afterMin, afterMax, /*computeMin, computeMax,*/ probability;
     private List<TAttribute> myAttributes;
     private List<AvatarMethod> myMethods;
     private Vector<String> allElements, insertElements;
 
-    protected String [] filesToInclude;
-    protected String [] codeToInclude;
+//    protected String [] filesToInclude;
+//    protected String [] codeToInclude;
 
     private boolean cancelled = true;
 
-    private JPanel panel1;
-    private JPanel panel2;
+    private JPanel pnlTransitionInfo;
+//    private JPanel panel1;
+//    private JPanel panel2;
 
     // Panel1
-    private JTextField guardT, afterMinT, afterMaxT, computeMinT, computeMaxT, probabilityT;
-    private JTextArea actionsT;
-    private JComboBox<String> elements;
-    private JButton insertElement;
+    private JTextField guardT, afterMinT, afterMaxT, /*computeMinT, computeMaxT,*/ probabilityT;
+    
+    private JTable actionsTable;
+//    private JTextArea actionsT;
+	private final Vector<String> actionsListHeader;
+
+	private JComboBox<String> codeElements;
+    //private JButton insertElement;
+    private JButton insertCodeButton;
+    private JButton addButton;
+	private JButton upButton;
+	private JButton downButton;
+	private JButton removeButton;
 
     // Panel of code and files
     protected JTextArea jtaCode, jtaFiles;
@@ -100,26 +124,45 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
 
     /** Creates new form  */
     // arrayDelay: [0] -> minDelay ; [1] -> maxDelay
-    public JDialogAvatarTransition(Frame _f, String _title, String _guard, String _afterMin, String _afterMax,
-								   String _computeMin, String _computeMax, Vector<String> _actions,
-								   List<TAttribute> _myAttributes, List<AvatarMethod> _myMethods,
-								   String[] _filesToInclude, String[] _codeToInclude, String _probability) {
+    public JDialogAvatarTransition(	Frame _f, 
+    								String _title, 
+    								String _guard,
+    								String _afterMin,
+    								String _afterMax,
+								  /* String _computeMin, String _computeMax,*/ 
+    								Vector<Expression> _actions,
+    								List<TAttribute> _myAttributes, 
+    								List<AvatarMethod> _myMethods,
+//    								String[] _filesToInclude, 
+//    								String[] _codeToInclude, 
+    								String _probability) {
 
         super(_f, _title, true);
 
         guard = _guard;
         afterMin = _afterMin;
         afterMax = _afterMax;
-        computeMin = _computeMin;
-        computeMax = _computeMax;
-        actions = _actions;
+//        computeMin = _computeMin;
+//        computeMax = _computeMax;
+
+        actionRows = new Vector<Vector<Expression>>();
+        
+        for ( final Expression actionExpr : _actions ) {
+        	final Vector<Expression> row = new Vector<Expression>();
+        	row.add( actionExpr );
+            actionRows.add( row );
+        }
+
+        actionsListHeader = new Vector<String>();
+
+        //actions = _actions;
         probability = _probability;
 
         myAttributes = _myAttributes;
         myMethods = _myMethods;
 
-        filesToInclude = _filesToInclude;
-        codeToInclude = _codeToInclude;
+//        filesToInclude = _filesToInclude;
+//        codeToInclude = _codeToInclude;
 
         makeElements();
 
@@ -150,15 +193,15 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
 //    }
 //
     private void initComponents() {
-    	int i;
+  //  	int i;
 
     	Container c = getContentPane();
-    	GridBagLayout gridbag0 = new GridBagLayout();
-    	GridBagLayout gridbag1 = new GridBagLayout();
-    	GridBagLayout gridbag2 = new GridBagLayout();
-    	GridBagConstraints c0 = new GridBagConstraints();
-    	GridBagConstraints c1 = new GridBagConstraints();
-    	GridBagConstraints c2 = new GridBagConstraints();
+//    	GridBagLayout gridbag0 = new GridBagLayout();
+//    	GridBagLayout gridbag1 = new GridBagLayout();
+//    	GridBagLayout gridbag2 = new GridBagLayout();
+//    	GridBagConstraints c0 = new GridBagConstraints();
+//    	GridBagConstraints c1 = new GridBagConstraints();
+//    	GridBagConstraints c2 = new GridBagConstraints();
 
     	setFont(new Font("Helvetica", Font.PLAIN, 14));
     	//c.setLayout(gridbag0);
@@ -166,38 +209,72 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
 
     	setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
 
-    	panel1 = new JPanel();
-    	panel1.setLayout(gridbag1);
+    	pnlTransitionInfo = new JPanel();
+    	pnlTransitionInfo.setLayout( new GridBagLayout() );
 
-    	panel1.setBorder(new javax.swing.border.TitledBorder("Transition parameters"));
+    	pnlTransitionInfo.setBorder(new TitledBorder("Transition parameters"));
+//    	panel1 = new JPanel();
+//    	panel1.setLayout(gridbag1);
+
+//    	panel1.setBorder(new javax.swing.border.TitledBorder("Transition parameters"));
 
     	//panel1.setPreferredSize(new Dimension(350, 350));
+		final int defaultMargin = 3;
 
     	// guard
-    	c1.weighty = 1.0;
-    	c1.weightx = 1.0;
-    	c1.gridwidth = 1;
-    	c1.gridheight = 1;
-    	c1.fill = GridBagConstraints.BOTH;
-    	c1.gridheight = 1;
-    	panel1.add(new JLabel("guard = "), c1);
-    	c1.gridwidth = GridBagConstraints.REMAINDER; //end row
+    	final GridBagConstraints constraintsLabels = new GridBagConstraints();
+    	constraintsLabels.weighty = 0.0;
+    	constraintsLabels.weightx = 0.0;
+    	constraintsLabels.gridwidth = 1;
+    	constraintsLabels.gridheight = 1;
+    	constraintsLabels.fill = GridBagConstraints.BOTH;
+    	constraintsLabels.insets = new Insets( defaultMargin, defaultMargin, 0, 0 );
+    	pnlTransitionInfo.add( new JLabel( "guard = ", SwingConstants.RIGHT ), constraintsLabels );
+
+//    	c1.weighty = 1.0;
+//    	c1.weightx = 1.0;
+//    	c1.gridwidth = 1;
+//    	c1.gridheight = 1;
+//    	c1.fill = GridBagConstraints.BOTH;
+//    	c1.gridheight = 1;
+//    	panel1.add(new JLabel("guard = "), c1);
+//    	c1.gridwidth = GridBagConstraints.REMAINDER; //end row
     	guardT = new JTextField(guard);
-    	panel1.add(guardT, c1);
+    	final GridBagConstraints constraintsFields = new GridBagConstraints();
+    	constraintsFields.weighty = 0.0;
+    	constraintsFields.weightx = 1.0;
+    	constraintsFields.gridwidth = GridBagConstraints.REMAINDER; //end row;
+    	constraintsFields.gridheight = 1;
+    	constraintsFields.fill = GridBagConstraints.BOTH;
+    	constraintsFields.insets = new Insets( defaultMargin, 0, 0, defaultMargin );
+    	
+    	pnlTransitionInfo.add( guardT, constraintsFields );
+    	//panel1.add(guardT, c1);
 
     	// After
-    	c1.gridwidth = 1;
-    	c1.gridheight = 1;
-    	c1.weighty = 1.0;
-    	c1.weightx = 1.0;
-    	panel1.add(new JLabel("after ("), c1);
+    	pnlTransitionInfo.add(new JLabel("after ( ", SwingConstants.RIGHT ), constraintsLabels );
+//    	c1.gridwidth = 1;
+//    	c1.gridheight = 1;
+//    	c1.weighty = 1.0;
+//    	c1.weightx = 1.0;
+//    	panel1.add(new JLabel("after ("), c1);
     	afterMinT = new JTextField(afterMin, 10);
-    	panel1.add(afterMinT, c1);
-    	panel1.add(new JLabel(","), c1);
+    	constraintsFields.gridwidth = 1;
+    	constraintsFields.insets.right = 0;
+    	pnlTransitionInfo.add(afterMinT, constraintsFields );
+    	constraintsLabels.insets.left = 0;
+    	pnlTransitionInfo.add(new JLabel( ", " ), constraintsLabels );
+//    	panel1.add(afterMinT, c1);
+  // 	panel1.add(new JLabel(","), c1);
     	afterMaxT = new JTextField(afterMax, 10);
-    	panel1.add(afterMaxT, c1);
-    	c1.gridwidth = GridBagConstraints.REMAINDER; //end row
-    	panel1.add(new JLabel(")"), c1);
+    	pnlTransitionInfo.add(afterMaxT, constraintsFields );
+    	constraintsLabels.gridwidth = GridBagConstraints.REMAINDER;
+    	constraintsLabels.insets.right = defaultMargin;
+    	pnlTransitionInfo.add(new JLabel( " )" ), constraintsLabels );
+    	constraintsLabels.gridwidth = 1;
+//    	panel1.add(afterMaxT, c1);
+//    	c1.gridwidth = GridBagConstraints.REMAINDER; //end row
+//    	panel1.add(new JLabel(")"), c1);
 
     	// Compute
     	/*c1.gridwidth = 1;
@@ -214,108 +291,257 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
     	panel1.add(new JLabel(")"), c1);*/
 
 		// probability
-		c1.weighty = 1.0;
-		c1.weightx = 1.0;
-		c1.gridwidth = 1;
-		c1.gridheight = 1;
-		c1.fill = GridBagConstraints.BOTH;
-		c1.gridheight = 1;
-		panel1.add(new JLabel("weight in [0...1000] (default = 1) = "), c1);
-		c1.gridwidth = GridBagConstraints.REMAINDER; //end row
-		probabilityT = new JTextField(probability);
-		panel1.add(probabilityT, c1);
+    	pnlTransitionInfo.add( new JLabel("weight in [0...1000] (default = 1) = "), constraintsLabels );
+//    	c1.weighty = 1.0;
+//		c1.weightx = 1.0;
+//		c1.gridwidth = 1;
+//		c1.gridheight = 1;
+//		c1.fill = GridBagConstraints.BOTH;
+//		c1.gridheight = 1;
+		//panel1.add(new JLabel("weight in [0...1000] (default = 1) = "), c1);
+	//	c1.gridwidth = GridBagConstraints.REMAINDER; //end row
+    	constraintsFields.gridwidth = GridBagConstraints.REMAINDER; //end row;
+    	probabilityT = new JTextField(probability);
+    	pnlTransitionInfo.add( probabilityT, constraintsFields );
+//		panel1.add(probabilityT, c1);
 
     	// actions
+    	constraintsFields.gridwidth = GridBagConstraints.REMAINDER;
+    	
+    	codeElements = new JComboBox<String>(allElements);
+    	pnlTransitionInfo.add(codeElements, constraintsFields );
+
+		insertCodeButton = new JButton( "Insert Code" );
+		insertCodeButton.addActionListener( new ActionListener() {
+			
+			@Override
+			public void actionPerformed(ActionEvent e) {
+				insertCodeAction();
+			}
+		} );
+    	pnlTransitionInfo.add( insertCodeButton, constraintsFields );
+
+    	actionsTable = new JTable( new DefaultTableModel() {
+    		
+    		/**
+			 * 
+			 */
+			private static final long serialVersionUID = 1L;
+
+			@Override
+    	    public Object getValueAt(int row, int column) {
+    	        final Expression expression = (Expression) super.getValueAt( row, column );
+    	        
+    	        return expression.getText();
+    	    }
+
+    		@Override
+    	    public void setValueAt(Object aValue, int row, int column) {
+    	        final Expression expression = (Expression) super.getValueAt( row, column );
+    	        
+    	        expression.setText( String.valueOf( aValue ) );
+    	        
+    	        fireTableCellUpdated(row, column);
+    		}
+    	} );
+    	
+    	actionsTable.setShowGrid( false );
+    	 
+    	final ListSelectionModel selectionModel = actionsTable.getSelectionModel();
+    	selectionModel.addListSelectionListener( new ListSelectionListener() {
+			
+			@Override
+			public void valueChanged( ListSelectionEvent e ) {
+				manageButtonsEnablement();
+			}
+		} );
+    	
+    	actionsTable.setSelectionMode( ListSelectionModel.SINGLE_SELECTION );
+    	actionsListHeader.addElement("");
+    	
+    	final DefaultCellEditor defaultCellEditor = (DefaultCellEditor) actionsTable.getDefaultEditor( Object.class );
+    	defaultCellEditor.setClickCountToStart( 1 );
+    	defaultCellEditor.addCellEditorListener( new CellEditorListener() {
+			
+			@Override
+			public void editingStopped(ChangeEvent e) {
+				manageButtonsEnablement();
+			}
+			
+			@Override
+			public void editingCanceled(ChangeEvent e) {
+				manageButtonsEnablement();
+			}
+		});
+    	
+    	( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader );
 
-    	elements = new JComboBox<String>(allElements);
-    	panel1.add(elements, c1);
-
-    	insertElement = new JButton("Insert");
-    	insertElement.setEnabled(allElements.size() > 0);
-    	insertElement.addActionListener(this);
-    	panel1.add(insertElement, c1);
-
-    	c1.gridheight = 10;
-    	c1.weighty = 10.0;
-    	c1.weightx = 10.0;
-    	c1.gridwidth = GridBagConstraints.REMAINDER; //end row
-    	c1.fill = GridBagConstraints.BOTH;
-    	actionsT = new JTextArea();
-    	actionsT.setEditable(true);
-    	actionsT.setMargin(new Insets(10, 10, 10, 10));
-    	actionsT.setTabSize(3);
-    	actionsT.setFont(new Font("times", Font.PLAIN, 12));
+    	//actionsT.getCellRenderer().sEditable(true);
+    	//actionsT.setMargin(new Insets(10, 10, 10, 10)));
+    	//actionsT.setTabSize(3);
+    	//actionsT.setFont(new Font("times", Font.PLAIN, 12));
     	//actionsT.setPreferredSize(new Dimension(350, 250));
-    	JScrollPane jsp = new JScrollPane(actionsT, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
-    	for(i=0; i<actions.size(); i++) {
-    		actionsT.append(actions.get(i) + "\n");
-    	}
-    	panel1.add(jsp, c1);
-
-
-    	panel2 = new JPanel();
-    	panel2.setLayout(gridbag2);
-
-    	panel2.setBorder(new javax.swing.border.TitledBorder("Code"));
-    	// guard
-    	c2.weighty = 1.0;
-    	c2.weightx = 1.0;
-    	c2.gridwidth = 1;
-    	c2.gridheight = 1;
-    	c2.fill = GridBagConstraints.BOTH;
-    	c2.gridwidth = GridBagConstraints.REMAINDER;
-    	c2.gridheight = 1;
-    	panel2.add(new JLabel("Files to include:"), c2);
-    	jtaFiles = new JTextArea();
-    	jtaFiles.setEditable(true);
-    	jtaFiles.setMargin(new Insets(10, 10, 10, 10));
-    	jtaFiles.setTabSize(3);
-    	String files = "";
-    	if (filesToInclude != null) {
-    		for(i=0; i<filesToInclude.length; i++) {
-    			files += filesToInclude[i] + "\n";
-    		}
-    	}
-    	jtaFiles.append(files);
-    	jtaFiles.setFont(new Font("times", Font.PLAIN, 12));
-    	jsp = new JScrollPane(jtaFiles, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
-    	//jsp.setPreferredSize(new Dimension(300, 300));
-    	panel2.add(jsp, c2);
-    	panel2.add(new JLabel("Code to execute at the end of the transition"), c2);
-    	jtaCode = new JTextArea();
-    	jtaCode.setEditable(true);
-    	jtaCode.setMargin(new Insets(10, 10, 10, 10));
-    	jtaCode.setTabSize(3);
-    	String code = "";
-    	if (codeToInclude != null) {
-    		for(i=0; i<codeToInclude.length; i++) {
-    			code += codeToInclude[i] + "\n";
-    		}
-    	}
-    	jtaCode.append(code);
-    	jtaCode.setFont(new Font("times", Font.PLAIN, 12));
-    	jsp = new JScrollPane(jtaCode, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
-    	//jsp.setPreferredSize(new Dimension(300, 300));
-    	panel2.add(jsp, c2);
+    	JScrollPane jsp = new JScrollPane(actionsTable, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
+    	
+//    	for( int i=0; i<actions.size(); i++) {
+//    		actionsT.append(actions.get(i) + "\n");
+//    	}
+    	
+    	final GridBagConstraints constraintsList = new GridBagConstraints();
+    	constraintsList.weighty = 1.0;
+    	constraintsList.weightx = 1.0;
+    	constraintsList.gridwidth = GridBagConstraints.REMAINDER; //end row;
+    	constraintsList.gridheight = 1;
+    	constraintsList.fill = GridBagConstraints.BOTH;
+    	
+    	pnlTransitionInfo.add(jsp, constraintsList );
+
+//    	c1.weighty = 0.0;
+
+    	final GridBagConstraints constraintsButtons = new GridBagConstraints();
+    	constraintsButtons.weighty = 0.0;
+    	constraintsButtons.weightx = 1.0;
+    	constraintsButtons.gridwidth = GridBagConstraints.REMAINDER; //end row;
+    	constraintsButtons.gridheight = 1;
+    	constraintsButtons.fill = GridBagConstraints.BOTH;
+
+    	upButton = new JButton( "Up" );
+		upButton.addActionListener( new ActionListener() {
+			
+			@Override
+			public void actionPerformed(ActionEvent e) {
+				upAction();
+			}
+		});
+		
+		constraintsFields.gridwidth = GridBagConstraints.REMAINDER;
+		constraintsFields.weightx = 1.0;
+		pnlTransitionInfo.add(upButton, constraintsButtons );
+		
+		downButton = new JButton("Down");
+		downButton.addActionListener( new ActionListener() {
+			
+			@Override
+			public void actionPerformed(ActionEvent e) {
+				downAction();
+			}
+		} );
+		
+		pnlTransitionInfo.add( downButton, constraintsButtons );
+		
+		removeButton = new JButton("Remove");
+		removeButton.addActionListener( new ActionListener() {
+			
+			@Override
+			public void actionPerformed(ActionEvent e) {
+				removeAction();
+			}
+		} );
+		
+		pnlTransitionInfo.add( removeButton, constraintsButtons );
+
+		addButton = new JButton( "Add" );
+		addButton.addActionListener( new ActionListener() {
+			
+			@Override
+			public void actionPerformed(ActionEvent e) {
+				addAction();
+			}
+		} );
+    	pnlTransitionInfo.add( addButton, constraintsButtons );
+
+    	manageButtonsEnablement();
+
+//    	elements = new JComboBox<String>(allElements);
+//    	panel1.add(elements, c1);
+//
+//    	insertElement = new JButton("Insert");
+//    	insertElement.setEnabled(allElements.size() > 0);
+//    	insertElement.addActionListener(this);
+//    	panel1.add(insertElement, c1);
+//
+//    	c1.gridheight = 10;
+//    	c1.weighty = 10.0;
+//    	c1.weightx = 10.0;
+//    	c1.gridwidth = GridBagConstraints.REMAINDER; //end row
+//    	c1.fill = GridBagConstraints.BOTH;
+//    	actionsT = new JTextArea();
+//    	actionsT.setEditable(true);
+//    	actionsT.setMargin(new Insets(10, 10, 10, 10));
+//    	actionsT.setTabSize(3);
+//    	actionsT.setFont(new Font("times", Font.PLAIN, 12));
+//    	//actionsT.setPreferredSize(new Dimension(350, 250));
+//    	JScrollPane jsp = new JScrollPane(actionsT, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
+//    	for(i=0; i<actions.size(); i++) {
+//    		actionsT.append(actions.get(i) + "\n");
+//    	}
+//    	panel1.add(jsp, c1);
+
+
+//    	panel2 = new JPanel();
+//    	panel2.setLayout(gridbag2);
+//
+//    	panel2.setBorder(new javax.swing.border.TitledBorder("Code"));
+//    	// guard
+//    	c2.weighty = 1.0;
+//    	c2.weightx = 1.0;
+//    	c2.gridwidth = 1;
+//    	c2.gridheight = 1;
+//    	c2.fill = GridBagConstraints.BOTH;
+//    	c2.gridwidth = GridBagConstraints.REMAINDER;
+//    	c2.gridheight = 1;
+//    	panel2.add(new JLabel("Files to include:"), c2);
+//    	jtaFiles = new JTextArea();
+//    	jtaFiles.setEditable(true);
+//    	jtaFiles.setMargin(new Insets(10, 10, 10, 10));
+//    	jtaFiles.setTabSize(3);
+//    	String files = "";
+//    	if (filesToInclude != null) {
+//    		for(i=0; i<filesToInclude.length; i++) {
+//    			files += filesToInclude[i] + "\n";
+//    		}
+//    	}
+//    	jtaFiles.append(files);
+//    	jtaFiles.setFont(new Font("times", Font.PLAIN, 12));
+//    	jsp = new JScrollPane(jtaFiles, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
+//    	//jsp.setPreferredSize(new Dimension(300, 300));
+//    	panel2.add(jsp, c2);
+//    	panel2.add(new JLabel("Code to execute at the end of the transition"), c2);
+//    	jtaCode = new JTextArea();
+//    	jtaCode.setEditable(true);
+//    	jtaCode.setMargin(new Insets(10, 10, 10, 10));
+//    	jtaCode.setTabSize(3);
+//    	String code = "";
+//    	if (codeToInclude != null) {
+//    		for(i=0; i<codeToInclude.length; i++) {
+//    			code += codeToInclude[i] + "\n";
+//    		}
+//    	}
+//    	jtaCode.append(code);
+//    	jtaCode.setFont(new Font("times", Font.PLAIN, 12));
+//    	jsp = new JScrollPane(jtaCode, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
+//    	//jsp.setPreferredSize(new Dimension(300, 300));
+//    	panel2.add(jsp, c2);
 
 
     	// button panel;
-    	c0.gridwidth = 1;
-    	c0.gridheight = 10;
-    	c0.weighty = 1.0;
-    	c0.weightx = 1.0;
-    	c0.gridwidth = GridBagConstraints.REMAINDER; //end row
+//    	c0.gridwidth = 1;
+//    	c0.gridheight = 10;
+//    	c0.weighty = 1.0;
+//    	c0.weightx = 1.0;
+//    	c0.gridwidth = GridBagConstraints.REMAINDER; //end row
 
     	// Issue #41 Ordering of tabbed panes 
     	JTabbedPane jtp = GraphicLib.createTabbedPane();//new JTabbedPane();
-    	jtp.add("General", panel1);
+    	jtp.add( "General", pnlTransitionInfo );
     	//jtp.add("Prototyping", panel2);
     	//c.add(jtp, c0);
     	c.add(jtp, BorderLayout.CENTER);
 
     	JPanel buttons = new JPanel();
-    	buttons.setLayout(gridbag0);
+    	buttons.setLayout( new GridBagLayout() );
 
+    	final GridBagConstraints c0 = new GridBagConstraints();
     	c0.gridwidth = 1;
     	c0.gridheight = 1;
     	c0.fill = GridBagConstraints.HORIZONTAL;
@@ -324,6 +550,53 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
 
     	c.add(buttons, BorderLayout.SOUTH);
     }
+	
+	private void downAction() {
+		final int selectedActionIndex = actionsTable.getSelectedRow();
+
+		if ( selectedActionIndex > -1 ) {
+	    	saveCurrentActionEditing();
+
+	    	final int newIndex = selectedActionIndex + 1;
+			Collections.swap( actionRows, selectedActionIndex, newIndex );
+	    	( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader );
+	    	actionsTable.getSelectionModel().setSelectionInterval( newIndex, newIndex );
+			
+			manageButtonsEnablement();
+		}
+	}
+	
+	private void upAction()	{
+		final int selectedActionIndex = actionsTable.getSelectedRow();
+
+		if ( selectedActionIndex > 0 )	{
+	    	saveCurrentActionEditing();
+
+	    	final int newIndex = selectedActionIndex - 1;
+			Collections.swap( actionRows, selectedActionIndex, newIndex );
+	    	( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader );
+	    	actionsTable.setRowSelectionInterval( newIndex, newIndex );
+
+			manageButtonsEnablement();
+		}
+	}
+	
+	private void manageButtonsEnablement() {
+		final int selectedActionIndex = actionsTable.getSelectedRow();
+		
+		if ( selectedActionIndex < 0 ) {
+			insertCodeButton.setEnabled( false );
+			upButton.setEnabled( false );
+			downButton.setEnabled( false );
+			removeButton.setEnabled( false );
+		}
+		else {
+			insertCodeButton.setEnabled( codeElements.getSelectedIndex() > -1 );
+			removeButton.setEnabled( true );
+			upButton.setEnabled( selectedActionIndex > 0 );
+			downButton.setEnabled( selectedActionIndex < actionsTable.getRowCount() - 1 );
+		}
+	}
 
     @Override
     public void actionPerformed(ActionEvent evt)  {
@@ -334,37 +607,114 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
             closeDialog();
         } else if (evt.getSource() == cancelButton)  {
             cancelDialog();
-        } else if (evt.getSource() == insertElement)  {
-            insertElements();
+//        } else if (evt.getSource() == insertElement)  {
+//            insertElements();
         }
     }
+    
+    private JTextField getEditingField() {
+    	// TODO: Generalize for other fields so that code completion also works for them
+    	
+        if ( actionsTable.getSelectedRow() > -1 ) {
+	    	DefaultCellEditor cellEditor = (DefaultCellEditor) actionsTable.getCellEditor();
+	    	
+	    	if ( cellEditor == null ) {
+	    		actionsTable.editCellAt( actionsTable.getSelectedRow(), 0 );
+	    		cellEditor = (DefaultCellEditor) actionsTable.getCellEditor();
+	    	}
+
+	    	return (JTextField) cellEditor.getComponent();
+        }
+        
+        return null;
+    }
 
-    public void insertElements() {
-        int index = elements.getSelectedIndex();
-        int caretPos = actionsT.getCaretPosition ();
-        String str = insertElements.get(index);
-        String text = actionsT.getText ();
-        if (caretPos > 0 && text.charAt (caretPos-1) != ' ' && text.charAt (caretPos-1) != '(')
-            str = " " + str;
-        if (caretPos == text.length () || (text.charAt (caretPos) != ' ' && text.charAt (caretPos) != ')'))
-            str = str + " ";
-        actionsT.insert (str, caretPos);
-        actionsT.setCaretPosition (caretPos + str.length ());
-        actionsT.requestFocusInWindow ();
+    private void insertCodeAction() {
+        int selectedCodeIndex = codeElements.getSelectedIndex();
+        
+        if ( selectedCodeIndex > -1 ) {
+        	final JTextField editingField = getEditingField();
+
+        	if ( editingField != null ) {
+        		final int caretPos = editingField.getCaretPosition();
+                final String elementName = insertElements.get( codeElements.getSelectedIndex() );
+
+                try {
+					editingField.getDocument().insertString( caretPos, elementName, null );
+				}
+                catch (BadLocationException e) {
+					e.printStackTrace();
+				}
+        	}
+    	}
     }
+    
+    private void saveCurrentActionEditing() {
+    	if ( actionsTable.isEditing() ) {
+    		actionsTable.getCellEditor().stopCellEditing();
+    	}
+    }
+    
+    private void addAction() {
+    	saveCurrentActionEditing();
+
+    	final int addingIndex = actionsTable.getSelectedRow() >= 0 ? actionsTable.getSelectedRow() + 1 : actionRows.size();
+        final Expression newAction = new Expression( "" );
+        final Vector<Expression> newActionRow = new Vector<Expression>();
+        newActionRow.add( newAction );
+        actionRows.add( addingIndex, newActionRow );
+        ( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader );
+        actionsTable.setRowSelectionInterval( addingIndex, addingIndex );
+        
+        manageButtonsEnablement();
+    }
+
+    private void removeAction() {
+    	int selectedIndex = actionsTable.getSelectedRow();
+    	
+    	if ( selectedIndex > -1 ) {
+	    	actionRows.remove( selectedIndex );
+	    	( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader );
+	    	
+	    	selectedIndex = Math.min( selectedIndex, actionRows.size() - 1 );
+	    	
+	    	if ( selectedIndex > -1 ) {
+	    		actionsTable.setRowSelectionInterval( selectedIndex, selectedIndex );
+	    	}
+
+	    	manageButtonsEnablement();
+    	}
+    }
+//
+//    public void insertElements() {
+//        int index = elements.getSelectedIndex();
+//        int caretPos = actionsT.getCaretPosition ();
+//        String str = insertElements.get(index);
+//        String text = actionsT.getText ();
+//        if (caretPos > 0 && text.charAt (caretPos-1) != ' ' && text.charAt (caretPos-1) != '(')
+//            str = " " + str;
+//        if (caretPos == text.length () || (text.charAt (caretPos) != ' ' && text.charAt (caretPos) != ')'))
+//            str = str + " ";
+//        actionsT.insert (str, caretPos);
+//        actionsT.setCaretPosition (caretPos + str.length ());
+//        actionsT.requestFocusInWindow ();
+//    }
 
     public void closeDialog() {
-        actions.removeAllElements();
-        String[] act = actionsT.getText().split("\n");
-        for(int i=0; i<act.length; i++) {
-            if (act[0].length() > 0) {
-                actions.add(act[i]);
-            }
-        }
-        filesToInclude =  Conversion.wrapText(jtaFiles.getText());
-        codeToInclude =  Conversion.wrapText(jtaCode.getText());
+//        actions.removeAllElements();
+//        String[] act = actionsT.getText().split("\n");
+//        for(int i=0; i<act.length; i++) {
+//            if (act[0].length() > 0) {
+//                actions.add(act[i]);
+//            }
+//        }
+//        filesToInclude =  Conversion.wrapText(jtaFiles.getText());
+//        codeToInclude =  Conversion.wrapText(jtaCode.getText());
 
         cancelled = false;
+        
+    	saveCurrentActionEditing();
+
         dispose();
     }
 
@@ -384,19 +734,29 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
         return afterMaxT.getText();
     }
 
-    public String getComputeMin() {
-        if (computeMinT == null) {
-        	return "";
-		}
-
-    	return computeMinT.getText();
-    }
-
-    public String getComputeMax() {
-		if (computeMaxT == null) {
-			return "";
-		}
-    	return computeMaxT.getText();
+//    public String getComputeMin() {
+//        if (computeMinT == null) {
+//        	return "";
+//		}
+//
+//    	return computeMinT.getText();
+//    }
+//
+//    public String getComputeMax() {
+//		if (computeMaxT == null) {
+//			return "";
+//		}
+//    	return computeMaxT.getText();
+//    }
+    
+    public List<Expression> getActions() {
+    	final List<Expression> actions = new ArrayList<Expression>();
+    	
+    	for ( final Vector<Expression> actionVect : actionRows ) {
+    		actions.add( actionVect.get( 0 ) );
+    	}
+    	
+    	return actions;
     }
 
 	public String getProbability() {
@@ -410,12 +770,12 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
     public void cancelDialog() {
         dispose();
     }
-
-    public String[] getFilesToInclude() {
-        return filesToInclude;
-    }
-
-    public String[] getCodeToInclude() {
-        return codeToInclude;
-    }
+//
+//    public String[] getFilesToInclude() {
+//        return filesToInclude;
+//    }
+//
+//    public String[] getCodeToInclude() {
+//        return codeToInclude;
+//    }
 }
diff --git a/src/main/java/ui/window/JDialogMultiString.java b/src/main/java/ui/window/JDialogMultiString.java
index 102f2ca04785379cbba524979335d39bb13f71e8..b69246503d610d332e813e07e879f8feb0e072dd 100644
--- a/src/main/java/ui/window/JDialogMultiString.java
+++ b/src/main/java/ui/window/JDialogMultiString.java
@@ -36,15 +36,25 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.window;
 
-import javax.swing.*;
-import java.awt.*;
+import java.awt.Container;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
-import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
 
 /**
  * Class JDialogMultiString
@@ -68,9 +78,9 @@ public class JDialogMultiString extends JDialogBase implements ActionListener {
     // Panel1
     private JTextField[] texts;
     private JButton inserts[];
-    private HashMap<Integer, JComboBox<String>> helps;
+    private Map<Integer, JComboBox<String>> helps;
 
-    private ArrayList<String[]> possibleValues = null;
+    private List<String[]> possibleValues = null;
 
 
     /**
@@ -89,11 +99,11 @@ public class JDialogMultiString extends JDialogBase implements ActionListener {
         texts = new JTextField[nbString];
 
         initComponents();
-        myInitComponents();
+     //   myInitComponents();
         pack();
     }
 
-    public JDialogMultiString(Frame f, String title, int _nbString, String[] _labels, String[] _values, ArrayList<String[]> _possibleValues) {
+    public JDialogMultiString(Frame f, String title, int _nbString, String[] _labels, String[] _values, List<String[]> _possibleValues) {
 
         super(f, title, true);
 
@@ -105,13 +115,12 @@ public class JDialogMultiString extends JDialogBase implements ActionListener {
         texts = new JTextField[nbString];
 
         initComponents();
-        myInitComponents();
+    //    myInitComponents();
         pack();
     }
 
-
-    private void myInitComponents() {
-    }
+//    private void myInitComponents() {
+//    }
 
     private void initComponents() {
         inserts = new JButton[labels.length];
@@ -192,6 +201,7 @@ public class JDialogMultiString extends JDialogBase implements ActionListener {
         initButtons(c0, c, this);
     }
 
+    @Override
     public void actionPerformed(ActionEvent evt) {
         String command = evt.getActionCommand();
 
@@ -209,7 +219,6 @@ public class JDialogMultiString extends JDialogBase implements ActionListener {
         }
     }
 
-
     public void closeDialog() {
         set = true;
         dispose();
diff --git a/src/main/java/ui/window/JDialogMultiStringAndTabs.java b/src/main/java/ui/window/JDialogMultiStringAndTabs.java
index 33bc0d40ee46ad4e9e4b111cb11e5a2362275fa4..c7b59926e6e96fee28efadf7adb0709d5428d703 100644
--- a/src/main/java/ui/window/JDialogMultiStringAndTabs.java
+++ b/src/main/java/ui/window/JDialogMultiStringAndTabs.java
@@ -36,15 +36,26 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.window;
 
-import javax.swing.*;
-import java.awt.*;
+import java.awt.Container;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
-import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTabbedPane;
+import javax.swing.JTextField;
 
 /**
  * Class JDialogMultiStringAndTabs
@@ -56,7 +67,7 @@ import java.util.HashMap;
  */
 public class JDialogMultiStringAndTabs extends JDialogBase implements ActionListener {
 
-    private ArrayList<TabInfo> tabs;
+    private List<TabInfo> tabs;
     private int totalNbOfStrings;
 
     private boolean set = false;
@@ -64,16 +75,16 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList
     // Panel1
     private JTextField[] texts;
     private JButton inserts[];
-    private HashMap<Integer, JComboBox<String>> helps;
+    private Map<Integer, JComboBox<String>> helps;
 
-    private ArrayList<String[]> possibleValues = null;
+   // private List<String[]> possibleValues = null;
 
 
     /**
      * Creates new form
      */
     // arrayDelay: [0] -> minDelay ; [1] -> maxDelay
-    public JDialogMultiStringAndTabs(Frame f, String title, ArrayList<TabInfo> _tabs) {
+    public JDialogMultiStringAndTabs(Frame f, String title, List<TabInfo> _tabs) {
 
         super(f, title, true);
 
@@ -87,13 +98,13 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList
         texts = new JTextField[totalNbOfStrings];
 
         initComponents();
-        myInitComponents();
+        //myInitComponents();
         pack();
     }
 
 
-    private void myInitComponents() {
-    }
+//    private void myInitComponents() {
+//    }
 
     private void initComponents() {
         inserts = new JButton[totalNbOfStrings];
@@ -161,15 +172,10 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList
 
         }
 
-
-
         //panel1.setBorder(new javax.swing.border.TitledBorder("Properties"));
 
         //panel1.setPreferredSize(new Dimension(600, 300));
 
-
-
-
         // main panel;
         c0.gridwidth = 1;
         c0.gridheight = 10;
@@ -186,6 +192,7 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList
         initButtons(c0, c, this);
     }
 
+    @Override
     public void actionPerformed(ActionEvent evt) {
         String command = evt.getActionCommand();
 
@@ -203,7 +210,6 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList
         }
     }
 
-
     public void closeDialog() {
         set = true;
         dispose();
@@ -232,7 +238,6 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList
         return texts[i].getText().length() > 0;
     }
 
-
     public boolean hasBeenSet() {
         return set;
     }
diff --git a/src/main/java/ui/window/JDialogNCRoute.java b/src/main/java/ui/window/JDialogNCRoute.java
index abea3c8950400b26f32276ea2a7302bb1a4976cf..cdeca43774ed399994e2ee6f95f59fd9ef2825aa 100644
--- a/src/main/java/ui/window/JDialogNCRoute.java
+++ b/src/main/java/ui/window/JDialogNCRoute.java
@@ -36,23 +36,33 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.window;
 
-import ui.util.IconManager;
-import ui.ncdd.NCRoute;
-
-import javax.swing.*;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-import java.awt.*;
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
-import java.util.ArrayList;
+import java.util.List;
 import java.util.Vector;
 
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JList;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.JTextField;
+import javax.swing.ListSelectionModel;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+
+import ui.ncdd.NCRoute;
+
 
 /**
  * Class JDialogNCRoute
@@ -63,7 +73,7 @@ import java.util.Vector;
  */
 public class JDialogNCRoute extends JDialogBase implements ActionListener, ListSelectionListener  {
     private Vector<NCRoute> routes;
-	private ArrayList<String> inputInterfaces, traffics, outputInterfaces;
+	private List<String> inputInterfaces, traffics, outputInterfaces;
 
 	protected String value;
 	
@@ -82,7 +92,7 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS
 	private JTextField valueText;
 
     /** Creates new form  */
-    public JDialogNCRoute(Frame _f, String _title, String _value, Vector<NCRoute> _routes, ArrayList<String> _inputInterfaces, ArrayList<String> _traffics, ArrayList<String> _outputInterfaces) {
+    public JDialogNCRoute(Frame _f, String _title, String _value, Vector<NCRoute> _routes, List<String> _inputInterfaces, List<String> _traffics, List<String> _outputInterfaces) {
         super(_f, _title, true);
 
 		value = _value;
@@ -276,8 +286,8 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS
         initButtons(c0, c, this);
     }
     
+    @Override
     public void	actionPerformed(ActionEvent evt)  {
-        
         String command = evt.getActionCommand();
         
         // Compare the action command to the known actions.
@@ -320,7 +330,6 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS
 		}
 	}
     
-    
     private void addRoute() {
         String s0 = (String)(inputInterfaceBox.getSelectedItem());
 		String s1 = (String)(trafficBox.getSelectedItem());
@@ -386,6 +395,7 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS
 		return hasBeenCancelled;
 	}
     
+	@Override
     public void valueChanged(ListSelectionEvent e) {
         int i = listRoute.getSelectedIndex() ;
         if (i == -1) {
@@ -410,6 +420,4 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS
 	public String getValue() {
 		return valueText.getText();
 	}
-    
-    
 }
diff --git a/src/main/java/ui/window/JDialogPerformancePragma.java b/src/main/java/ui/window/JDialogPerformancePragma.java
index f204f13efeeb6258616bf32f9daf83ccac701125..ba2dc8421e29308eeea7cdc4d6a38d64ab1f3d76 100644
--- a/src/main/java/ui/window/JDialogPerformancePragma.java
+++ b/src/main/java/ui/window/JDialogPerformancePragma.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.window;
 
 import ui.util.IconManager;
@@ -78,7 +77,7 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe
     protected JMenuBar menuBar;
     protected JMenu help;
     protected JPopupMenu helpPopup;
-    public Map<String, List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>();
+    public Map<String, List<String>> blockAttributeMap = new HashMap<String, List<String>>();
 
     /**
      * Creates new form
@@ -161,7 +160,6 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe
             return list;
         }
 
-
         public boolean insertSelection() {
             //Note that it will not add if the selection will not fit on the current line
             if (!popupMenu.isVisible()) {
@@ -404,7 +402,6 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe
         } else if (evt.getSource() == close) {
             close();
         }
-
     }
 
     public void cancel() {
@@ -427,6 +424,4 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe
     public String getText() {
         return text;
     }
-
-
 }
diff --git a/src/main/java/ui/window/JDialogPragma.java b/src/main/java/ui/window/JDialogPragma.java
index 21d864dcefbd9a289e8bd5dac5f01db03bb3568e..04d1b1fd37477f8bb5205460969104891e85b809 100644
--- a/src/main/java/ui/window/JDialogPragma.java
+++ b/src/main/java/ui/window/JDialogPragma.java
@@ -78,8 +78,8 @@ public class JDialogPragma extends JDialogBase implements ActionListener {
     protected JButton cancel;
     protected JMenu help;
     private JPopupMenu helpPopup;
-    public Map<String, java.util.List<String>> blockAttributeMap = new HashMap<>();
-    public Map<String, java.util.List<String>> blockStateMap = new HashMap<>();
+    public Map<String, List<String>> blockAttributeMap = new HashMap<>();
+    public Map<String, List<String>> blockStateMap = new HashMap<>();
 
     /**
      * Creates new form
@@ -395,6 +395,7 @@ public class JDialogPragma extends JDialogBase implements ActionListener {
 
     }
 
+    @Override
     public void actionPerformed(ActionEvent evt) {
         String command = evt.getActionCommand();
 
@@ -404,7 +405,6 @@ public class JDialogPragma extends JDialogBase implements ActionListener {
         } else if (command.equals("Ok")) {
             close();
         }
-
     }
 
     public void cancel() {
@@ -427,6 +427,4 @@ public class JDialogPragma extends JDialogBase implements ActionListener {
     public String getText() {
         return text;
     }
-
-
 }
diff --git a/src/main/java/ui/window/JDialogSafetyPragma.java b/src/main/java/ui/window/JDialogSafetyPragma.java
index bb9afff2feab0b752bc4d380de69189fd2a11c59..6bb6c760e31f1101c3d23fd23b87893a7ced55ce 100644
--- a/src/main/java/ui/window/JDialogSafetyPragma.java
+++ b/src/main/java/ui/window/JDialogSafetyPragma.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.window;
 
 import ui.util.IconManager;
@@ -78,7 +77,7 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener {
     protected JMenuBar menuBar;
     protected JMenu help;
     protected JPopupMenu helpPopup;
-    public Map<String, List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>();
+    public Map<String, List<String>> blockAttributeMap = new HashMap<String, List<String>>();
 
     /**
      * Creates new form
diff --git a/src/main/java/ui/window/JDialogSelectAvatarBlock.java b/src/main/java/ui/window/JDialogSelectAvatarBlock.java
index 2e7eef13485cbf7dee3e1c62166211538fd7c9d7..6881282a33243cf095d191822a6b705956217b8a 100644
--- a/src/main/java/ui/window/JDialogSelectAvatarBlock.java
+++ b/src/main/java/ui/window/JDialogSelectAvatarBlock.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.window;
 
 import ui.avatarbd.AvatarBDStateMachineOwner;
@@ -69,7 +68,8 @@ import java.util.List;
  * @version 1.0 18/05/2010
  */
 public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListener, ListSelectionListener {
-    public List<AvatarBDStateMachineOwner> validated, ignored;
+    
+	public List<AvatarBDStateMachineOwner> validated, ignored;
     private boolean optimized = true;
 
     private List<AvatarBDStateMachineOwner> val, ign, back;
@@ -282,8 +282,6 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe
             return;
         }
 
-
-
         // Compare the action command to the known actions.
         switch (command) {
             case "addOneIgnored":
@@ -301,7 +299,6 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe
         }
     }
 
-
     private void addOneIgnored() {
         for (AvatarBDStateMachineOwner o : this.listValidated.getSelectedValuesList()) {
             ign.add(o);
diff --git a/src/main/java/ui/window/TabInfo.java b/src/main/java/ui/window/TabInfo.java
index e2cfa09b8bbe1bcdc73615efda9cd0850608645c..c2f65e93c7425a0e8661ec01527c2ff89b97d030 100644
--- a/src/main/java/ui/window/TabInfo.java
+++ b/src/main/java/ui/window/TabInfo.java
@@ -36,15 +36,9 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.window;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.util.ArrayList;
-import java.util.HashMap;
+import java.util.List;
 
 /**
  * Class TabInfo
@@ -59,7 +53,7 @@ public class TabInfo  {
     public String identifier;
     public String[] labels;
     public String[] values;
-    public ArrayList<String[]> help;
+    public List<String[]> help;
 
     public TabInfo(String _identifier) {
         identifier = _identifier;
diff --git a/ttool/launch_configurations/test/TestAvatarADComponentsDisabling.launch b/ttool/launch_configurations/test/TestAvatarADComponentsDisabling.launch
new file mode 100644
index 0000000000000000000000000000000000000000..a8b6b650fa26aec1f71de85314f81d202f2de616
--- /dev/null
+++ b/ttool/launch_configurations/test/TestAvatarADComponentsDisabling.launch
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/ttool/src/test/java/ui/avatarad/TestAvatarADComponentsDisabling.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.avatarad.TestAvatarADComponentsDisabling"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/>
+</launchConfiguration>
diff --git a/ttool/launch_configurations/test/TestAvatarDesignPanelTranslator.launch b/ttool/launch_configurations/test/TestAvatarDesignPanelTranslator.launch
new file mode 100644
index 0000000000000000000000000000000000000000..c5f4c28dcadbf986ddc9bdbbf95c13a06ea9ef27
--- /dev/null
+++ b/ttool/launch_configurations/test/TestAvatarDesignPanelTranslator.launch
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/ttool/src/test/java/ui/TestAvatarDesignPanelTranslator.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.TestAvatarDesignPanelTranslator"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dresources_dir=&quot;src/test/resources/&quot;"/>
+</launchConfiguration>
diff --git a/ttool/launch_configurations/test/TestAvatarSMDComponentsDisabling.launch b/ttool/launch_configurations/test/TestAvatarSMDComponentsDisabling.launch
new file mode 100644
index 0000000000000000000000000000000000000000..05a1e746555eb72d8bd721491abc6479d83ebd53
--- /dev/null
+++ b/ttool/launch_configurations/test/TestAvatarSMDComponentsDisabling.launch
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/ttool/src/test/java/ui/avatarsmd/TestAvatarSMDComponentsDisabling.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.avatarsmd.TestAvatarSMDComponentsDisabling"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/>
+</launchConfiguration>
diff --git a/ttool/launch_configurations/test/TestGTMLModeling.launch b/ttool/launch_configurations/test/TestGTMLModeling.launch
new file mode 100644
index 0000000000000000000000000000000000000000..b6904cd2013430aac80890ddcb9134870f43afae
--- /dev/null
+++ b/ttool/launch_configurations/test/TestGTMLModeling.launch
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/ttool/src/test/java/ui/TestGTMLModeling.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.TestGTMLModeling"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dresources_dir=&quot;src/test/resources/&quot;"/>
+</launchConfiguration>
diff --git a/ttool/launch_configurations/test/TestTDiagramPanel.launch b/ttool/launch_configurations/test/TestTDiagramPanel.launch
index 6f00f9fc6bc7bc897dcaed3f548f715c03fd9d76..658c682e2f6940564ece29726adb335359bdd2b7 100644
--- a/ttool/launch_configurations/test/TestTDiagramPanel.launch
+++ b/ttool/launch_configurations/test/TestTDiagramPanel.launch
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
 <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/ttool/src/test/java/ui/tmldd/TestTDiagramPanel.java"/>
+<listEntry value="/ttool/src/test/java/ui/TestTDiagramPanel.java"/>
 </listAttribute>
 <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
 <listEntry value="1"/>
@@ -10,6 +10,6 @@
 <booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
 <stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
 <stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.tmldd.TestTDiagramPanel"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.TestTDiagramPanel"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/>
 </launchConfiguration>
diff --git a/ttool/launch_configurations/test/TestTMLADComponentsDisabling.launch b/ttool/launch_configurations/test/TestTMLADComponentsDisabling.launch
new file mode 100644
index 0000000000000000000000000000000000000000..db2d3b773a244a71d9073cb346c999a488571d41
--- /dev/null
+++ b/ttool/launch_configurations/test/TestTMLADComponentsDisabling.launch
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/ttool/src/test/java/ui/tmlad/TestTMLADComponentsDisabling.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.tmlad.TestTMLADComponentsDisabling"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/>
+</launchConfiguration>
diff --git a/ttool/launch_configurations/test/TestTMLCPComponentsDisabling.launch b/ttool/launch_configurations/test/TestTMLCPComponentsDisabling.launch
new file mode 100644
index 0000000000000000000000000000000000000000..2eff4393502d39e7be70cd65da41e23d25fcb881
--- /dev/null
+++ b/ttool/launch_configurations/test/TestTMLCPComponentsDisabling.launch
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/ttool/src/test/java/ui/tmlcp/TestTMLCPComponentsDisabling.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.tmlcp.TestTMLCPComponentsDisabling"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/>
+</launchConfiguration>
diff --git a/ttool/src/test/java/avatartranslator/AvatarPragmaTests.java b/ttool/src/test/java/avatartranslator/AvatarPragmaTests.java
index b9b7c0e8e3d05ea225d585f9dfdb4160c31dfc2d..3e47f9cfbf079a214f74529451b26fea1e369f34 100644
--- a/ttool/src/test/java/avatartranslator/AvatarPragmaTests.java
+++ b/ttool/src/test/java/avatartranslator/AvatarPragmaTests.java
@@ -45,47 +45,30 @@
 
 package avatartranslator;
 
-import org.junit.Test;
-import org.junit.*;
-
-import static org.junit.Assert.*;
-import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
-
-import java.util.LinkedList;
 import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.List;
+import java.util.Map;
 
+import org.junit.Before;
+import org.junit.Test;
 
 import ui.TAttribute;
-import ui.avatarbd.AvatarBDPragma;
 import ui.avatarbd.AvatarBDPanel;
-
-import avatartranslator.ErrorAccumulator;
-import avatartranslator.AvatarStateMachine;
-import avatartranslator.AvatarState;
-import avatartranslator.AvatarAttribute;
-import avatartranslator.AvatarType;
-import avatartranslator.AvatarBlock;
-import avatartranslator.AvatarPragma;
-import avatartranslator.AvatarPragmaSecret;
-import avatartranslator.AvatarPragmaSecrecyAssumption;
-import avatartranslator.AvatarPragmaInitialKnowledge;
-import avatartranslator.AvatarPragmaPrivatePublicKey;
-import avatartranslator.AvatarPragmaPublic;
-import avatartranslator.AvatarPragmaAuthenticity;
-import avatartranslator.AvatarPragmaConstant;
+import ui.avatarbd.AvatarBDPragma;
 
 public class AvatarPragmaTests {	
 	List<AvatarPragma> res;
 	ErrorAccumulator errorAcc;
-	HashMap<String, List<TAttribute>> typeAttributesMap = new HashMap<>();  
-	HashMap<String, String> nameTypeMap = new HashMap<String, String>();
-	LinkedList<AvatarBlock> blocks; 
+	Map<String, List<TAttribute>> typeAttributesMap = new HashMap<>();  
+	Map<String, String> nameTypeMap = new HashMap<String, String>();
+	List<AvatarBlock> blocks; 
 	AvatarBDPragma bdpragma;
-	public AvatarPragmaTests () {
+	
+	public AvatarPragmaTests() {
        //
     }
 	
@@ -127,8 +110,8 @@ public class AvatarPragmaTests {
 		this.nameTypeMap.put("C.m", "T1");
 		this.nameTypeMap.put("B.m", "T1");
 		this.nameTypeMap.put("C.d", "T2");
-		LinkedList<TAttribute> t1s = new LinkedList<TAttribute>();
-		LinkedList<TAttribute> t2s = new LinkedList<TAttribute>();
+		List<TAttribute> t1s = new LinkedList<TAttribute>();
+		List<TAttribute> t2s = new LinkedList<TAttribute>();
 		t1s.add(attr_a);
 		t1s.add(attr_b);
 		t2s.add(attr_c);
@@ -142,9 +125,6 @@ public class AvatarPragmaTests {
 	}
     //protected void test () {
 	
-
-
-
 	@Test
 	public void testBadKeywordNoPragmaCreated(){
 		//Test Bad keyword
diff --git a/ttool/src/test/java/launcher/TestRshClient.java b/ttool/src/test/java/launcher/TestRshClient.java
index 0ac94f9481f6e54f999187a416d464264e54daf2..c2ba833c4d86e73614d29acda93ad4fa92abef98 100644
--- a/ttool/src/test/java/launcher/TestRshClient.java
+++ b/ttool/src/test/java/launcher/TestRshClient.java
@@ -2,7 +2,6 @@ package launcher;
 
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
 
 import java.io.File;
 import java.io.StringWriter;
@@ -14,9 +13,6 @@ import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
 
-import launcher.LauncherException;
-import launcher.RshClient;
-import launcher.RshServer;
 import myutil.FileException;
 import myutil.FileUtils;
 import test.AbstractTest;
@@ -74,11 +70,11 @@ public class TestRshClient extends AbstractTest {
         throws Exception {
         SERVER_THREAD.interrupt();
     }
-
-    private void handleException( final Throwable th ) {
-        th.printStackTrace();
-        fail( th.getLocalizedMessage() );
-    }
+//
+//    private void handleException( final Throwable th ) {
+//        th.printStackTrace();
+//        fail( th.getLocalizedMessage() );
+//    }
 
     @Test
     public void testStopCommand() {
diff --git a/ttool/src/test/java/test/AbstractTest.java b/ttool/src/test/java/test/AbstractTest.java
index 394ca6ac61e026109222e80135003b7e1e9f8e54..9d650f92d8efd3340e7c32cb18aa35259673cf1d 100644
--- a/ttool/src/test/java/test/AbstractTest.java
+++ b/ttool/src/test/java/test/AbstractTest.java
@@ -1,8 +1,29 @@
 package test;
 
+import static org.junit.Assert.fail;
+
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.IOException;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+
+import org.w3c.dom.Document;
+import org.xml.sax.SAXException;
+
+import myutil.FileException;
+import myutil.FileUtils;
+
 public abstract class AbstractTest {
 	
 	protected static String RESOURCES_DIR = "";
+	protected static String INPUT_DIR;
+	protected static String EXPECTED_CODE_DIR;
+	protected static String ACTUAL_CODE_DIR;
+	protected static final String TXT_EXT = ".txt";
+	protected static final String XML_EXT = ".xml";
 
 	protected static String getBaseResourcesDir() {
     	final String systemPropResDir = System.getProperty( "resources_dir" );
@@ -13,4 +34,75 @@ public abstract class AbstractTest {
 
    		return systemPropResDir;
 	}
+	
+	protected void checkResult( final String actualCode,
+								final String fileName ) {
+		try {
+			final String expectedCode = FileUtils.loadFile( EXPECTED_CODE_DIR + fileName + TXT_EXT );
+
+			if ( !expectedCode.equals( actualCode ) ) {
+				saveActualResults( fileName + TXT_EXT, actualCode );
+			}
+		}
+		catch ( FileException ex ) {
+			handleException( ex );
+		}
+	}
+	
+	protected void checkResultXml( 	final String actualCode,
+									final String fileName ) {
+		try {
+			final String expectedCode = FileUtils.loadFile( EXPECTED_CODE_DIR + fileName + XML_EXT );
+			
+			if ( !compareXml( actualCode, expectedCode ) ) {
+				saveActualResults( fileName + XML_EXT, actualCode );
+			}
+		}
+		catch ( ParserConfigurationException | SAXException | IOException | FileException ex ) {
+			handleException( ex );
+		}
+	}
+	
+	private void saveActualResults( final String fileName,
+									final String actualCode ) {
+		final String filePath = ACTUAL_CODE_DIR + fileName;
+		final File fileToSave = new File( filePath );
+		final File dir = fileToSave.getParentFile();
+		
+		if (!dir.exists() ) {
+			dir.mkdirs();
+		}
+
+		try {
+			FileUtils.saveFile( filePath, actualCode );
+			fail( "Differences were found between actual and expected code!!" );
+		}
+		catch( final FileException ex ) {
+			handleException( ex );
+		}
+	}
+	
+	protected boolean compareXml( 	final String result,
+									final String expected ) 
+	throws ParserConfigurationException, SAXException, IOException {
+		DocumentBuilderFactory documentFactory = DocumentBuilderFactory.newInstance();
+		documentFactory.setNamespaceAware( true );
+		documentFactory.setCoalescing( true );
+		documentFactory.setIgnoringElementContentWhitespace( true );
+		documentFactory.setIgnoringComments( true );
+		DocumentBuilder documentBuilder = documentFactory.newDocumentBuilder();
+		
+		final Document doc1 = documentBuilder.parse( new ByteArrayInputStream( result.getBytes() ) );
+		doc1.normalizeDocument();
+
+		final Document doc2 = documentBuilder.parse( new ByteArrayInputStream( expected.getBytes() ) );
+		doc2.normalizeDocument();
+		
+		return doc1.isEqualNode( doc2 );
+	}
+
+	protected void handleException( final Throwable th ) {
+        th.printStackTrace();
+        fail( th.getLocalizedMessage() );
+    }
 }
diff --git a/ttool/src/test/java/ui/AbstractUITest.java b/ttool/src/test/java/ui/AbstractUITest.java
index b650c1d961266888cdc49eaf8d7ec993e810fc30..a18e2dcf87ba97f23f0154a072a6993b7cb9d768 100644
--- a/ttool/src/test/java/ui/AbstractUITest.java
+++ b/ttool/src/test/java/ui/AbstractUITest.java
@@ -1,25 +1,70 @@
 package ui;
 
-import static org.junit.Assert.fail;
+import java.io.File;
+import java.util.Arrays;
+import java.util.Collection;
 
 import myutil.PluginManager;
 import test.AbstractTest;
 
 public abstract class AbstractUITest extends AbstractTest {
 	
-	protected final MainGUI mainGui;
+	protected final MainGUI mainGUI;
 	
 	protected AbstractUITest() {
 		
 		// DB: Not needed for tests (causes NPE)
 		//IconManager.loadImg();
-		mainGui = new MainGUI(false,false, false, false, false, false, false, false, false, false, true, false, false);
-		mainGui.build();
+		mainGUI = new MainGUI(false,false, false, false, false, false, false, false, false, false, true, false, false);
+		mainGUI.build();
 		PluginManager.pluginManager = new PluginManager();
 	}
 
-	protected void handleException( final Throwable th ) {
-        th.printStackTrace();
-        fail( th.getLocalizedMessage() );
+	protected void openModel( final String fileName ) {
+		final String fullFileName = fileName + XML_EXT;
+		mainGUI.openProjectFromFile( new File( INPUT_DIR + fullFileName ) );
+	}
+    
+	protected TMLArchiPanel findArchiPanel( final String name ) {
+    	for ( final TMLArchiPanel panel : mainGUI.getTMLArchiDiagramPanels() ) {
+    		if ( name.equals( mainGUI.getTitleAt( panel ) ) ) {
+    			return panel;
+    		}
+    	}
+    	
+    	return null;
     }
+	
+	protected TDiagramPanel findDiagramPanel( 	final TDiagramPanel parentPanel,
+												final String diagramName ) {
+		for ( final TDiagramPanel subPanel : parentPanel.tp.getPanels() ) {
+			if ( diagramName.equals( subPanel.getName() ) ) {
+				return subPanel;
+			}
+		}
+	
+		return null;
+	}
+	
+	protected TGComponent findDiagComponent( 	final int compoId,
+												final TDiagramPanel diagPanel ) {
+        return findDiagComponent( compoId, diagPanel.componentList );
+	}
+	
+	protected TGComponent findDiagComponent( 	final int compoId,
+												final Collection<TGComponent> components ) {
+        for ( final TGComponent compo : components ) {
+        	if ( compoId == compo.getId() ) {
+        		return compo;
+        	}
+        	
+        	final TGComponent subCompo = findDiagComponent( compoId, Arrays.asList( compo.tgcomponent ) );
+        	
+        	if ( subCompo != null ) {
+        		return subCompo;
+        	}
+        }
+        
+        return null;
+	}
 }
diff --git a/ttool/src/test/java/ui/TestAvatarDesignPanelTranslator.java b/ttool/src/test/java/ui/TestAvatarDesignPanelTranslator.java
new file mode 100644
index 0000000000000000000000000000000000000000..782b3814a9e00b7a3594f8d3d411a7d65a2934ed
--- /dev/null
+++ b/ttool/src/test/java/ui/TestAvatarDesignPanelTranslator.java
@@ -0,0 +1,256 @@
+package ui; 
+
+import java.io.File;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import avatartranslator.AvatarBlock;
+import avatartranslator.AvatarConstant;
+import avatartranslator.AvatarElement;
+import avatartranslator.AvatarSpecification;
+
+public class TestAvatarDesignPanelTranslator extends AbstractUITest {
+	
+	private static final String TAB_MAIN_DESIGN = "MainDesign";
+
+	private static final String DIAG_WALLET = "Wallet";
+	private static final String DIAG_COFFEE_MACHINE = "CoffeeMachine";
+	private static final String DIAG_TEA_BUTTON = "TeaButton";
+	private static final String DIAG_COFFEE_BUTTON = "CoffeeButton";
+
+	private static final String TAB_AVATAR_DESIGN = "AVATAR Design";
+	
+	private static final String DIAG_PAGE_LOADER = "PageLoader";
+	
+	private static final String TAB_DESIGN_LOSSY = "Design_lossy";
+	
+	private static final String DIAG_ON_BOARD_COMMUNICATION = "OnBoardCommunication";
+	
+	private static final String TAB_DESIGN = "Design";
+	
+	private static final String DIAG_ALICE= "Alice";
+
+	@BeforeClass
+    public static void setUpBeforeClass()
+    throws Exception {
+    	RESOURCES_DIR = getBaseResourcesDir() + "ui/diagram2avatar/";
+    	INPUT_DIR = RESOURCES_DIR + "input/";
+    	EXPECTED_CODE_DIR = RESOURCES_DIR + "expected/";
+    	ACTUAL_CODE_DIR = RESOURCES_DIR + "actual/";
+    }
+	
+	public TestAvatarDesignPanelTranslator() {
+		super();
+	}
+
+	private AvatarSpecification translateDiagramToAvatar( final String diagramName )
+	throws MalformedModelingException {
+		final AvatarDesignPanel panel = (AvatarDesignPanel) mainGUI.getTURTLEPanel( diagramName );
+		
+		// Ensure the two static boolean constants are always instantiated before resetting the static ID counter 
+		final Object dummy = AvatarConstant.TRUE;
+		
+		// Reset the ID to ensure IDs are the same as those of the expected specifications
+		AvatarElement.resetID();
+
+		final AvatarDesignPanelTranslator translator = new AvatarDesignPanelTranslator( panel );
+        
+        final AvatarSpecification spec = translator.generateAvatarSpecification( panel.getAvatarBDPanel().getFullStateMachineOwnerList() );
+
+        if ( !translator.getErrors().isEmpty() ) {
+        	throw new MalformedModelingException();
+        }
+        
+        return spec;
+	}
+	
+	private void checkResult( 	final AvatarElement avatarElement,
+								final String fileName ) {
+		checkResult( avatarElement.toString(), fileName );
+	}
+	
+	private void testTranslateStateMachineDiagramToAvatarDisable( 	final String modelName,
+																	final String tabName,
+																	final String blockName,
+																	final String testName,
+																	final int... composToDisable )
+	throws MalformedModelingException {
+		openModel( modelName );
+		
+		final AvatarDesignPanel panel = (AvatarDesignPanel) mainGUI.getTURTLEPanel( tabName );
+		
+		final TDiagramPanel stateMachineDiagramPanel = findDiagramPanel( panel.getAvatarBDPanel(), blockName );
+		
+		for ( final int compoId : composToDisable ) {
+			final TGComponent compoToDisable = findDiagComponent( compoId, stateMachineDiagramPanel );
+			compoToDisable.setEnabled( false );
+		}
+
+		final AvatarSpecification spec = translateDiagramToAvatar( tabName );
+		final AvatarBlock block = spec.getBlockWithName( blockName );
+		
+		final String expectedSubDirName = composToDisable.length == 0 ? "" : "components_disabling";
+		
+		final String fileNameSuffix = composToDisable.length == 0 ? "" : "_Disable_";
+		
+		checkResult( block.getStateMachine(), expectedSubDirName + File.separatorChar + blockName + fileNameSuffix + testName );
+	}
+
+	private void testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( 	final String tabName,
+																				final String blockName,
+																				final String testName,
+																				final int... composToDisable )
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarDisable( "CoffeeMachine_Avatar", tabName, blockName, testName, composToDisable );
+	}
+	
+	private void testTranslateStateMachineDiagramToAvatarCoffeeMachine( final String tabName,
+																		final String blockName )
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( tabName, blockName, "", new int[ 0 ] );
+	}
+
+	private void testTranslateStateMachineDiagramToAvatarEbookReaderDisable( 	final String tabName,
+																				final String blockName,
+																				final String testName,
+																				final int... composToDisable )
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarDisable( "ebook_reader_01", tabName, blockName, testName, composToDisable );
+	}
+
+	private void testTranslateStateMachineDiagramToAvatarFutureAirNavigationSystemDisable( 	final String tabName,
+																							final String blockName,
+																							final String testName,
+																							final int... composToDisable )
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarDisable( "FutureAirNavigationSystem", tabName, blockName, testName, composToDisable );
+	}
+
+	private void testTranslateStateMachineDiagramToAvatarExampleFunctionCall( 	final String tabName,
+																				final String blockName,
+																				final String testName,
+																				final int... composToDisable )
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarDisable( "exampleFunctionCall", tabName, blockName, testName, composToDisable );
+	}
+
+	// Translation from diagram to Avatar
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarCoffeeMachineWallet()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachine( TAB_MAIN_DESIGN, DIAG_WALLET );
+	}
+
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarCoffeeMachineCoffeeMachine()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachine( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE );
+	}
+
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarCoffeeMachineTeaButton()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachine( TAB_MAIN_DESIGN, DIAG_TEA_BUTTON );
+	}
+
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarCoffeeMachineCoffeeButton()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachine( TAB_MAIN_DESIGN, DIAG_COFFEE_BUTTON );
+	}
+
+	// Components disabling tests
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableExpireTimer()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarFutureAirNavigationSystemDisable( TAB_DESIGN_LOSSY, DIAG_ON_BOARD_COMMUNICATION, "ExpireTimer", 3802 );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableLibraryFunctionCall()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarExampleFunctionCall( TAB_DESIGN, DIAG_ALICE, "LibraryFunctionCall", 218 );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableRandom()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarEbookReaderDisable( TAB_AVATAR_DESIGN, DIAG_PAGE_LOADER, "Random", 794 );
+	}
+	
+	@Test
+	public void testTranslateToAvatarCoffeeMachineDisableReceiveSignal()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "ReceiveSignal", 820 );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableResetTimer()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarFutureAirNavigationSystemDisable( TAB_DESIGN_LOSSY, DIAG_ON_BOARD_COMMUNICATION, "ResetTimer", 3780 );
+	}
+	
+	@Test
+	public void testTranslateToAvatarCoffeeMachineDisableSendSignal()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "SendSignal", 809 );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableSetTimer()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarFutureAirNavigationSystemDisable( TAB_DESIGN_LOSSY, DIAG_ON_BOARD_COMMUNICATION, "SetTimer", 3791 );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableState()
+	throws MalformedModelingException {
+		
+		// Testing disabling of states with the same name
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "State", 943 );
+
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "State", 902 );
+		
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "State", 861 );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableCompositeState()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE, "CompositeState", 1407 );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableTransitionInfoGuard()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "TransitionInfoGuard", 789 );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableTransitionInfoAfterActions()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "TransitionInfoAfterActions", 782 );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableTransitionInfoComputeFor()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE, "TransitionInfoComputeFor", 985 );
+	}
+	
+	// Tests for disabling several elements
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableCompoInOutTransitions()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE, "CompoInOutTransitions", new int[]{ 1366, 964, 957 } );
+	}
+	
+	@Test
+	public void testTranslateStateMachineDiagramToAvatarDisableComponentBranch()
+	throws MalformedModelingException {
+		testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE, "ComponentBranch", new int[]{ 1072, 1124, 1165, 1061 } );
+	}
+}
diff --git a/ttool/src/test/java/ui/TestGTMLModeling.java b/ttool/src/test/java/ui/TestGTMLModeling.java
new file mode 100644
index 0000000000000000000000000000000000000000..523cc1817f886857761813d965ddf0e1e7eb7566
--- /dev/null
+++ b/ttool/src/test/java/ui/TestGTMLModeling.java
@@ -0,0 +1,257 @@
+package ui;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import tmltranslator.TMLMapping;
+import tmltranslator.TMLModeling;
+import tmltranslator.TMLTask;
+
+public class TestGTMLModeling extends AbstractUITest {
+	
+	private static final String MODEL_ZIGBEE_TUTORIAL = "ZigBeeTutorial";
+	private static final String DIAG_ZIGBEE_TX = "Zigbee_TX";
+	private static final String DIAG_F_SOURCE = "F_Source";
+	private static final String DIAG_X_SOURCE = "X_Source";
+
+    @BeforeClass
+    public static void setUpBeforeClass() throws Exception {
+    	RESOURCES_DIR = getBaseResourcesDir() + "ui/diagram2tml/";
+    	INPUT_DIR = RESOURCES_DIR + "input/";
+    	EXPECTED_CODE_DIR = RESOURCES_DIR + "expected/";
+    	ACTUAL_CODE_DIR = RESOURCES_DIR + "actual/";
+    }
+	
+	public TestGTMLModeling() {
+		super();
+	}
+
+	private TMLModeling<TGComponent> translateToTMLModeling( final String tabName )
+	throws MalformedTMLDesignException {
+		final TMLComponentDesignPanel panel = (TMLComponentDesignPanel) mainGUI.getTURTLEPanel( tabName );
+        final GTMLModeling gtmlm = new GTMLModeling( panel, true );
+        gtmlm.putPrefixName( true );
+
+        final TMLModeling<TGComponent> model = gtmlm.translateToTMLModeling( false );
+
+        if ( !gtmlm.getCheckingErrors().isEmpty() ) {
+        	throw new MalformedTMLDesignException( "Errors were found when generating TML model.", gtmlm.getCheckingErrors() );
+        }
+        
+        return model;
+	}
+
+	private String translateToTMLModelingXMLZigBeeTutorial( final String diagramName )
+	throws MalformedTMLDesignException {
+		openModel( MODEL_ZIGBEE_TUTORIAL );
+
+		return translateToTMLModeling( diagramName ).toXML();
+	}
+
+	private TMLMapping<TGComponent> translateToTMLMapping( final String diagramName )
+	throws MalformedTMLDesignException {
+		final TMLArchiPanel panel = findArchiPanel( diagramName );
+        final GTMLModeling gtmlm = new GTMLModeling( panel, true);
+        gtmlm.putPrefixName( true );
+        
+        final TMLMapping<TGComponent> model = gtmlm.translateToTMLMapping();
+
+        if ( !gtmlm.getCheckingErrors().isEmpty() ) {
+        	throw new MalformedTMLDesignException( "Errors were found when generating TML model.", gtmlm.getCheckingErrors() );
+        }
+        
+        return model;
+	}
+
+	private String translateToTMLMappingXMLZigBeeTutorial( final String diagramName )
+	throws MalformedTMLDesignException {
+		openModel( MODEL_ZIGBEE_TUTORIAL );
+
+        return translateToTMLMapping( diagramName ).toXML();
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingZigbeeTX()
+	throws MalformedTMLDesignException {
+		final String actualCode = translateToTMLModelingXMLZigBeeTutorial( DIAG_ZIGBEE_TX );
+	
+		checkResultXml( actualCode, DIAG_ZIGBEE_TX );
+	}
+	
+	@Test
+	public void testTranslateToTMLMappingMapping0()
+	throws MalformedTMLDesignException {
+		final String diagramName = "Mapping_0";
+		final String actualCode = translateToTMLMappingXMLZigBeeTutorial( diagramName );
+		
+		checkResultXml( actualCode, diagramName );
+	}
+	
+	protected void testTranslateToTMLModelingDisable( 	final String modelName,
+														final String tabName,
+														final String taskName,
+														final String testName,
+														final int... compoIds )
+	throws MalformedTMLDesignException {
+		openModel( modelName );
+		
+		final TURTLEPanel panel = mainGUI.getTURTLEPanel( tabName );
+		final TDiagramPanel parentPanel = panel.tdp;
+		
+		final TDiagramPanel activityDiagramPanel = findDiagramPanel( parentPanel, taskName );
+		
+		for ( final int compoId : compoIds ) {
+			final TGComponent compoToDisable = findDiagComponent( compoId, activityDiagramPanel );
+			compoToDisable.setEnabled( false );
+		}
+
+		final TMLModeling<TGComponent> tmlModel = translateToTMLModeling( tabName );
+		final String prefixedTaskName = tabName + "__" + taskName;
+		final TMLTask task = tmlModel.getTMLTaskByName( prefixedTaskName );
+			
+		checkResultXml( task.getActivityDiagram().toXML(), "components_disabling/" + taskName + "_Disable_" + testName );
+	}
+
+	protected void testTranslateToTMLModelingDisableZigBeeTutorial( final String taskName,
+																	final String testName,
+																	final int... compoIds )
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisable( MODEL_ZIGBEE_TUTORIAL, DIAG_ZIGBEE_TX, taskName, testName, compoIds );
+	}
+
+	protected void testTranslateToTMLModelingDisableSmartCardProtocol( 	final String taskName,
+																		final String testName,
+																		final int... compoIds )
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisable( "SmartCardProtocol", "AppC", taskName, testName, compoIds );
+	}
+
+	// Tests for disabling every element type
+	
+	@Test
+	public void testTranslateToTMLModelingDisableActionState()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "ActionState", 925 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableSendRequest()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "SendRequest", 922 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingSendEvent()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "SendEvent", 919 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableExecC()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( "X_Chip2Octet", "ExecC", 1009 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableExecI()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_X_SOURCE, "ExecI", 935 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableReadRequestArg()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_X_SOURCE, "ReadRequestArg", 943 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableWriteChannel()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_X_SOURCE, "WriteChannel", 940 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableWaitEvent()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( "F_Symbol2ChipSeq", "WaitEvent", 952 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableReadChannel()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( "X_Symbol2ChipSeq", "ReadChannel", 973 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableActionStateSendRequest()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "ActionStateSendRequest", new int[]{ 925, 922 } );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableForLoop()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableSmartCardProtocol( "InterfaceDevice", "ForLoop", 302 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableForLoopAfterStart()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableSmartCardProtocol( "TCPIP", "ForLoopAfterStart", 610 );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableChoiceLeft() {
+		try {
+			testTranslateToTMLModelingDisableSmartCardProtocol( "InterfaceDevice", "ChoiceLeft", 236 );
+		}
+		catch ( final MalformedTMLDesignException ex ) {
+			assertTrue( "TML modeling translation did not generate the expected '" + UICheckingError.MESSAGE_CHOICE_BOTH_STOCHASTIC_DETERMINISTIC + "' error!", ex.getErrors().size() == 1 );
+			
+			assertEquals( UICheckingError.MESSAGE_CHOICE_BOTH_STOCHASTIC_DETERMINISTIC, ex.getErrors().get( 0 ).toString() );
+		}
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableChoiceLeftBottom()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableSmartCardProtocol( "TCPIP", "ChoiceLeftBottom", new int[]{ 564, 566 } );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableChoiceLeftBottomRight()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableSmartCardProtocol( "TCPIP", "ChoiceLeftBottomRight", new int[]{ 572, 573, 574 } );
+	}
+
+	// Tests for disabling connectors
+	
+	@Test
+	public void testTranslateToTMLModelingDisableConnector()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableSmartCardProtocol( "InterfaceDevice", "ConnectorChoice", 319 );
+	}
+	
+	// Tests for disabling several elements
+	
+	@Test
+	public void testTranslateToTMLModelingDisableActionStateSendEvent()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "ActionStateSendEvent", new int[]{ 925, 919 } );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableSendRequestSendEvent()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "SendRequestSendEvent", new int[]{ 922, 919 } );
+	}
+	
+	@Test
+	public void testTranslateToTMLModelingDisableActionStateSendRequestSendEvent()
+	throws MalformedTMLDesignException {
+		testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "ActionStateSendRequestSendEvent", new int[]{ 925, 922, 919 } );
+	}
+}
diff --git a/ttool/src/test/java/ui/TestGTURTLEModeling.java b/ttool/src/test/java/ui/TestGTURTLEModeling.java
index 47814a365f8af99213762259dcab72d11aa8dd2d..1b2c2d8b0450c46b6dfdbc6359cc6de16f724b0e 100644
--- a/ttool/src/test/java/ui/TestGTURTLEModeling.java
+++ b/ttool/src/test/java/ui/TestGTURTLEModeling.java
@@ -17,7 +17,6 @@ import myutil.FileUtils;
 
 public class TestGTURTLEModeling extends AbstractUITest {
 
-    //private static final String RESOURCES_DIR = "resources/ui/generateccode/";
     private String[] codeGenOptions = { "", "-mas" };
 
     @BeforeClass
@@ -30,17 +29,17 @@ public class TestGTURTLEModeling extends AbstractUITest {
     public TestGTURTLEModeling() {
         super();
 
-        mainGui.openProjectFromFile( new File( RESOURCES_DIR + "models/ZigBeeTutorial.xml") );
+        mainGUI.openProjectFromFile( new File( RESOURCES_DIR + "input/ZigBeeTutorial.xml") );
 
         // FIXME: Temporarily ignoring the debug text file due to bug in comparator tool
         textComparator = new TextComparator( Collections.singletonList( "txt" ) );
     }
 
     private void testGenerateCCode( final String mappingDiagName ) {
-        final TMLArchiPanel panel = findPanel( mappingDiagName );
+        final TMLArchiPanel panel = findArchiPanel( mappingDiagName );
         final Vector<TGComponent> compos = new Vector<TGComponent>( panel.tmlap.getComponentList() );
 
-        assertTrue( mainGui.gtm.checkSyntaxTMLMapping( compos, panel, true ) );
+        assertTrue( mainGUI.gtm.checkSyntaxTMLMapping( compos, panel, true ) );
 
         final String codeDir = RESOURCES_DIR + mappingDiagName + File.separator + "actual" + File.separator;
         FileUtils.deleteFiles( codeDir );
@@ -48,7 +47,7 @@ public class TestGTURTLEModeling extends AbstractUITest {
         final String codeDirExpected = RESOURCES_DIR + mappingDiagName + File.separator + "expected" + File.separator;
 
         for( String compilerOption: codeGenOptions )    {
-            mainGui.gtm.generateCCode( codeDir, compilerOption );
+        	mainGUI.gtm.generateCCode( codeDir, compilerOption );
             /*try {
                 Thread.sleep(5000);
             } catch (Exception ignored) {
@@ -71,16 +70,6 @@ public class TestGTURTLEModeling extends AbstractUITest {
         }
     }
 
-    private TMLArchiPanel findPanel( final String name ) {
-        for ( final TMLArchiPanel panel : mainGui.getTMLArchiDiagramPanels() ) {
-            if ( name.equals( mainGui.getTitleAt( panel ) ) ) {
-                return panel;
-            }
-        }
-
-        return null;
-    }
-
     @Test
     public void testGenerateCCodeMapping0() {
         testGenerateCCode( "Mapping_0" );
diff --git a/ttool/src/test/java/ui/TestTDiagramPanel.java b/ttool/src/test/java/ui/TestTDiagramPanel.java
new file mode 100644
index 0000000000000000000000000000000000000000..3e30042828645589fd07b831930313ba3d2b2d2c
--- /dev/null
+++ b/ttool/src/test/java/ui/TestTDiagramPanel.java
@@ -0,0 +1,66 @@
+package ui;
+
+import static org.junit.Assert.assertTrue;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import ui.tmldd.TMLArchiBUSNode;
+import ui.tmldd.TMLArchiDiagramPanel;
+import ui.tmldd.TMLArchiDiagramToolBar;
+
+public class TestTDiagramPanel extends AbstractUITest {
+	static TDiagramPanel diagramPanel;
+	static TGCWithInternalComponent component;
+	
+	public TestTDiagramPanel() {
+		super();
+	}
+	
+	@Before
+    public void setUp() throws Exception {
+//		mgui = new MainGUI(false, false, false, false, false, false, false, false, false, false, false, true);
+//		mgui.build();	
+		//PluginManager.pluginManager = new PluginManager();
+		final TToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI );
+        diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar );
+        component = new TMLArchiBUSNode( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.setComponentPointed(null);
+    }
+	
+	@Test
+    public void testMoveUp() {
+       diagramPanel.upComponent();
+       diagramPanel.setComponentPointed(component);
+       diagramPanel.upComponent();
+       assertTrue(component.getY() == 499);
+       assertTrue(component.getX() == 500);
+    }
+	
+	@Test
+    public void testMoveDown() {
+       diagramPanel.downComponent();
+       diagramPanel.setComponentPointed(component);
+       diagramPanel.downComponent();
+       assertTrue(component.getY() == 501);
+       assertTrue(component.getX() == 500);
+    }
+	
+	@Test
+    public void testMoveRight() {
+       diagramPanel.rightComponent();
+       diagramPanel.setComponentPointed(component);
+       diagramPanel.rightComponent();
+       assertTrue(component.getX() == 501);
+       assertTrue(component.getY() == 500);
+    }
+	
+	@Test
+    public void testMoveLeft() {
+       diagramPanel.leftComponent();
+       diagramPanel.setComponentPointed(component);
+       diagramPanel.leftComponent();
+       assertTrue(component.getX() == 499);
+       assertTrue(component.getY() == 500);
+    }
+}
diff --git a/ttool/src/test/java/ui/avatarad/TestAvatarADComponentsDisabling.java b/ttool/src/test/java/ui/avatarad/TestAvatarADComponentsDisabling.java
new file mode 100644
index 0000000000000000000000000000000000000000..62a6e6406178a4b03bb7eb205ba7497dbfdc1be0
--- /dev/null
+++ b/ttool/src/test/java/ui/avatarad/TestAvatarADComponentsDisabling.java
@@ -0,0 +1,595 @@
+package ui.avatarad;
+
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import java.awt.Point;
+import java.util.Vector;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import ui.AbstractUITest;
+import ui.CDElement;
+import ui.TGComponent;
+import ui.tmldd.TMLArchiDiagramPanel;
+import ui.tmldd.TMLArchiDiagramToolBar;
+
+public class TestAvatarADComponentsDisabling extends AbstractUITest {
+
+	private TMLArchiDiagramPanel diagramPanel;
+	
+	public TestAvatarADComponentsDisabling() {
+		super();
+	}
+	
+	@Before
+    public void setUp() {
+		final TMLArchiDiagramToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI );
+        diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar );
+    }
+
+	@Test
+    public void testDisableAvatarADAcceptEventAction() {
+        final CDElement element = new AvatarADAcceptEventAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarADAction() {
+        final CDElement element = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarADActivity() {
+        final CDElement element = new AvatarADActivity( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableAvatarADAssociationConnector() {
+        final TGComponent startElement = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TGComponent requestElement = new AvatarADSendSignalAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestElement, requestElement.getX(), requestElement.getY(), false, true );
+
+        final TGComponent con1 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												startElement.getTGConnectingPointAtIndex( 0 ),
+			        												requestElement.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent actionElement = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( actionElement, actionElement.getX(), actionElement.getY(), false, true );
+        
+        final TGComponent con2 = new AvatarADAssociationConnector( 	0, 
+																	0,
+																	diagramPanel.getMinX(),
+																	diagramPanel.getMaxX(),
+																	diagramPanel.getMinY(),
+																	diagramPanel.getMaxY(),
+																	false,
+																	null,
+																	diagramPanel,
+																	requestElement.getTGConnectingPointAtIndex( 1 ),
+																	actionElement.getTGConnectingPointAtIndex( 0 ),
+																	new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElement = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true );
+        
+        final TGComponent con3 = new AvatarADAssociationConnector( 	0, 
+																	0,
+																	diagramPanel.getMinX(),
+																	diagramPanel.getMaxX(),
+																	diagramPanel.getMinY(),
+																	diagramPanel.getMaxY(),
+																	false,
+																	null,
+																	diagramPanel,
+																	actionElement.getTGConnectingPointAtIndex( 1 ),
+																	stopElement.getTGConnectingPointAtIndex( 0 ),
+																	new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+        
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( con3.canBeDisabled() );
+        
+        con1.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( requestElement.isEnabled() );
+        assertTrue( requestElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( actionElement.isEnabled() );
+        assertTrue( actionElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+        
+        con1.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestElement.isEnabled() );
+        assertTrue( requestElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( actionElement.isEnabled() );
+        assertTrue( actionElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        
+        con2.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestElement.isEnabled() );
+        assertTrue( requestElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( actionElement.isEnabled() );
+        assertTrue( actionElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+        
+        con2.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestElement.isEnabled() );
+        assertTrue( requestElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( actionElement.isEnabled() );
+        assertTrue( actionElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+	}
+	
+	@Test
+    public void testDisableAvatarADAssociationConnectorWithChoice() {
+        final TGComponent startElement = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TGComponent requestElement = new AvatarADSendSignalAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestElement, requestElement.getX(), requestElement.getY(), false, true );
+
+        final TGComponent con1 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												startElement.getTGConnectingPointAtIndex( 0 ),
+			        												requestElement.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent actionElement = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( actionElement, actionElement.getX(), actionElement.getY(), false, true );
+        
+        final TGComponent con2 = new AvatarADAssociationConnector( 	0, 
+																	0,
+																	diagramPanel.getMinX(),
+																	diagramPanel.getMaxX(),
+																	diagramPanel.getMinY(),
+																	diagramPanel.getMaxY(),
+																	false,
+																	null,
+																	diagramPanel,
+																	requestElement.getTGConnectingPointAtIndex( 1 ),
+																	actionElement.getTGConnectingPointAtIndex( 0 ),
+																	new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElement = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true );
+        
+        final TGComponent con3 = new AvatarADAssociationConnector( 	0, 
+																	0,
+																	diagramPanel.getMinX(),
+																	diagramPanel.getMaxX(),
+																	diagramPanel.getMinY(),
+																	diagramPanel.getMaxY(),
+																	false,
+																	null,
+																	diagramPanel,
+																	actionElement.getTGConnectingPointAtIndex( 1 ),
+																	stopElement.getTGConnectingPointAtIndex( 0 ),
+																	new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+        
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( con3.canBeDisabled() );
+        
+        con1.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( con1.isEnabled() );
+        assertFalse( requestElement.isEnabled() );
+        assertTrue( con2.isEnabled() );
+        assertFalse( actionElement.isEnabled() );
+        assertTrue( con3.isEnabled() );
+        assertTrue( stopElement.isEnabled() );
+        
+        con1.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( requestElement.isEnabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( actionElement.isEnabled() );
+        assertTrue( con3.isEnabled() );
+        assertTrue( stopElement.isEnabled() );
+        
+        con2.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( requestElement.isEnabled() );
+        assertTrue( con2.isEnabled() );
+        assertFalse( actionElement.isEnabled() );
+        assertTrue( con3.isEnabled() );
+        assertTrue( stopElement.isEnabled() );
+        
+        con2.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( requestElement.isEnabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( actionElement.isEnabled() );
+        assertTrue( con3.isEnabled() );
+        assertTrue( stopElement.isEnabled() );
+	}
+	
+	@Test
+    public void testDisableAvatarADChoice() {
+        final AvatarADChoice element = new AvatarADChoice( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+        
+        element.setGuard( Boolean.TRUE.toString(), 0 );
+        TGComponent guard = element.getInternalTGComponent( 0 );
+        assertTrue( guard.canBeDisabled() );
+        
+        guard.setEnabled( false );
+        assertFalse( guard.isEnabled() );
+
+        guard.setEnabled( true );
+        assertTrue( guard.isEnabled() );
+
+        element.setGuard( null, 0 );
+        guard = element.getInternalTGComponent( 0 );
+        assertFalse( guard.canBeDisabled() );
+
+        element.setGuard( "", 0 );
+        guard = element.getInternalTGComponent( 0 );
+        assertFalse( guard.canBeDisabled() );
+
+        element.setGuard( AvatarADChoice.EMPTY_GUARD_TEXT, 0 );
+        guard = element.getInternalTGComponent( 0 );
+        assertFalse( guard.canBeDisabled() );
+    }
+	
+	@Test
+    public void testDisableAvatarADConnectingPoint() {
+        final CDElement element = new AvatarADConnectingPoint( null, 0, -5, true, false, 0.5, 0.0 );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableAvatarADJunction() {
+        final CDElement element = new AvatarADJunction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.isEnabled() );
+        assertFalse( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableAvatarADParallel() {
+        final TGComponent startElement = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final AvatarADParallel parallel = new AvatarADParallel( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( parallel, parallel.getX(), parallel.getY(), false, true );
+
+        final TGComponent con1 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												startElement.getTGConnectingPointAtIndex( 0 ),
+			        												parallel.getEnterConnectingPoints().get( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent actionBranch1 = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( actionBranch1, actionBranch1.getX(),actionBranch1.getY(), false, true );
+
+        final TGComponent con2 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												parallel.getExitConnectingPoints().get( 0 ),
+			        												actionBranch1.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElementBranch1 = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch1, stopElementBranch1.getX(), stopElementBranch1.getY(), false, true );
+
+        final TGComponent con3 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												actionBranch1.getTGConnectingPointAtIndex( 1 ),
+			        												stopElementBranch1.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+
+
+        final TGComponent actionBranch2 = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( actionBranch2, actionBranch2.getX(), actionBranch2.getY(), false, true );
+
+        final TGComponent con4 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												parallel.getExitConnectingPoints().get( 1 ),
+			        												actionBranch2.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true );
+
+        final TGComponent stopElementBranch2 = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch2, stopElementBranch2.getX(), stopElementBranch2.getY(), false, true );
+
+        final TGComponent con5 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												actionBranch2.getTGConnectingPointAtIndex( 1 ),
+			        												stopElementBranch2.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true );
+
+        final TGComponent actionBranch3 = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( actionBranch3, actionBranch3.getX(),actionBranch3.getY(), false, true );
+
+        final TGComponent con6 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												parallel.getExitConnectingPoints().get( 2 ),
+			        												actionBranch3.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true );
+
+        final TGComponent stopElementBranch3 = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch1, stopElementBranch3.getX(), stopElementBranch3.getY(), false, true );
+
+        final TGComponent con7 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												actionBranch3.getTGConnectingPointAtIndex( 1 ),
+			        												stopElementBranch3.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true );
+        
+        assertTrue( parallel.canBeDisabled() );
+        
+        parallel.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertFalse( parallel.isEnabled() );
+        assertTrue( parallel.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( actionBranch1.isEnabled() );
+        assertTrue( actionBranch1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementBranch1.isEnabled() );
+        assertFalse( stopElementBranch1.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertFalse( actionBranch2.isEnabled() );
+        assertTrue( actionBranch2.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementBranch2.isEnabled() );
+        assertFalse( stopElementBranch2.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+        assertFalse( actionBranch3.isEnabled() );
+        assertTrue( actionBranch3.canBeDisabled() );
+        assertTrue( con6.isEnabled() );
+        assertTrue( con6.canBeDisabled() );
+        assertTrue( stopElementBranch3.isEnabled() );
+        assertFalse( stopElementBranch3.canBeDisabled() );
+        assertTrue( con7.isEnabled() );
+        assertFalse( con7.canBeDisabled() );
+
+        parallel.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( parallel.isEnabled() );
+        assertTrue( parallel.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( actionBranch1.isEnabled() );
+        assertTrue( actionBranch1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementBranch1.isEnabled() );
+        assertFalse( stopElementBranch1.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( actionBranch2.isEnabled() );
+        assertTrue( actionBranch2.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementBranch2.isEnabled() );
+        assertFalse( stopElementBranch2.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+        assertTrue( actionBranch3.isEnabled() );
+        assertTrue( actionBranch3.canBeDisabled() );
+        assertTrue( con6.isEnabled() );
+        assertTrue( con6.canBeDisabled() );
+        assertTrue( stopElementBranch3.isEnabled() );
+        assertFalse( stopElementBranch3.canBeDisabled() );
+        assertTrue( con7.isEnabled() );
+        assertFalse( con7.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableAvatarADSendSignalAction() {
+        final CDElement element = new AvatarADSendSignalAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarADStartState() {
+        final CDElement element = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableAvatarADStopFlow() {
+        final TGComponent startElement = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+        final TGComponent action = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( action, action.getX(), action.getY(), false, true );
+
+        final TGComponent con1 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												startElement.getTGConnectingPointAtIndex( 0 ),
+			        												action.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent stopFlow = new AvatarADStopFlow( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopFlow, stopFlow.getX(), stopFlow.getY(), false, true );
+
+        final TGComponent con2 = new AvatarADAssociationConnector( 	0, 
+			        												0,
+			        												diagramPanel.getMinX(),
+			        												diagramPanel.getMaxX(),
+			        												diagramPanel.getMinY(),
+			        												diagramPanel.getMaxY(),
+			        												false,
+			        												null,
+			        												diagramPanel,
+			        												action.getTGConnectingPointAtIndex( 1 ),
+			        												stopFlow.getTGConnectingPointAtIndex( 0 ),
+			        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+        
+        assertFalse( stopFlow.canBeDisabled() );
+        assertFalse( con2.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableAvatarADStopState() {
+        final CDElement element = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+}
diff --git a/ttool/src/test/java/ui/avatarsmd/TestAvatarSMDComponentsDisabling.java b/ttool/src/test/java/ui/avatarsmd/TestAvatarSMDComponentsDisabling.java
new file mode 100644
index 0000000000000000000000000000000000000000..ce50b88c248c819fa9e8e14f32d5114ef986c00f
--- /dev/null
+++ b/ttool/src/test/java/ui/avatarsmd/TestAvatarSMDComponentsDisabling.java
@@ -0,0 +1,1104 @@
+package ui.avatarsmd;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import java.awt.Point;
+import java.util.Vector;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import ui.AbstractUITest;
+import ui.CDElement;
+import ui.TGComponent;
+import ui.tmldd.TMLArchiDiagramPanel;
+import ui.tmldd.TMLArchiDiagramToolBar;
+
+public class TestAvatarSMDComponentsDisabling extends AbstractUITest {
+
+	private TMLArchiDiagramPanel diagramPanel;
+	
+	public TestAvatarSMDComponentsDisabling() {
+		super();
+	}
+	
+	@Before
+    public void setUp() {
+		final TMLArchiDiagramToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI );
+        diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar );
+    }
+	
+	@Test
+    public void testDisableAvatarSMDChoice() {
+        final AvatarSMDChoice element = new AvatarSMDChoice( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+        
+        // TODO
+//        element.setGuard( Boolean.TRUE.toString(), 0 );
+//        TGComponent guard = element.getInternalTGComponent( 0 );
+//        assertTrue( guard.canBeDisabled() );
+//        
+//        guard.setEnabled( false );
+//        assertFalse( guard.isEnabled() );
+//
+//        guard.setEnabled( true );
+//        assertTrue( guard.isEnabled() );
+//
+//        element.setGuard( null, 0 );
+//        guard = element.getInternalTGComponent( 0 );
+//        assertFalse( guard.canBeDisabled() );
+//
+//        element.setGuard( "", 0 );
+//        guard = element.getInternalTGComponent( 0 );
+//        assertFalse( guard.canBeDisabled() );
+//
+//        element.setGuard( AvatarADChoice.EMPTY_GUARD_TEXT, 0 );
+//        guard = element.getInternalTGComponent( 0 );
+//        assertFalse( guard.canBeDisabled() );
+    }
+	
+	@Test
+    public void testDisableAvatarSMDConnectingPoint() {
+        final CDElement element = new AvatarSMDConnectingPoint( null, 0, -5, true, false, 0.5, 0.0 );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+	
+	@Test
+    public void testDisableAvatarSMDConnector() {
+        final TGComponent startElement = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TGComponent sendSignalElement = new AvatarSMDSendSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( sendSignalElement, sendSignalElement.getX(), sendSignalElement.getY(), false, true );
+
+        final AvatarSMDConnector con1 = new AvatarSMDConnector( 0, 
+		        												0,
+		        												diagramPanel.getMinX(),
+		        												diagramPanel.getMaxX(),
+		        												diagramPanel.getMinY(),
+		        												diagramPanel.getMaxY(),
+		        												false,
+		        												null,
+		        												diagramPanel,
+		        												startElement.getTGConnectingPointAtIndex( 0 ),
+		        												sendSignalElement.getTGConnectingPointAtIndex( 0 ),
+		        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent randomElement = new AvatarSMDRandom( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( randomElement, randomElement.getX(), randomElement.getY(), false, true );
+        
+        final AvatarSMDConnector con2 = new AvatarSMDConnector( 0, 
+																0,
+																diagramPanel.getMinX(),
+																diagramPanel.getMaxX(),
+																diagramPanel.getMinY(),
+																diagramPanel.getMaxY(),
+																false,
+																null,
+																diagramPanel,
+																sendSignalElement.getTGConnectingPointAtIndex( 1 ),
+																randomElement.getTGConnectingPointAtIndex( 0 ),
+																new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElement = new AvatarSMDStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true );
+        
+        final AvatarSMDConnector con3 = new AvatarSMDConnector( 0, 
+																0,
+																diagramPanel.getMinX(),
+																diagramPanel.getMaxX(),
+																diagramPanel.getMinY(),
+																diagramPanel.getMaxY(),
+																false,
+																null,
+																diagramPanel,
+																randomElement.getTGConnectingPointAtIndex( 1 ),
+																stopElement.getTGConnectingPointAtIndex( 0 ),
+																new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+        
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( con3.canBeDisabled() );
+        
+        con1.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con1.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( con1.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertFalse( sendSignalElement.isEnabled() );
+        assertTrue( sendSignalElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( con2.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( con2.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertFalse( randomElement.isEnabled() );
+        assertTrue( randomElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertFalse( con3.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( con3.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+        
+        con1.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( sendSignalElement.isEnabled() );
+        assertTrue( sendSignalElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( randomElement.isEnabled() );
+        assertTrue( randomElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        
+        con2.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( sendSignalElement.isEnabled() );
+        assertTrue( sendSignalElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( randomElement.isEnabled() );
+        assertTrue( randomElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+        
+        con2.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( sendSignalElement.isEnabled() );
+        assertTrue( sendSignalElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( randomElement.isEnabled() );
+        assertTrue( randomElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+	}
+
+	@Test
+    public void testDisableAvatarSMDExpireTimer() {
+        final CDElement element = new AvatarSMDExpireTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarSMDLibraryFunctionCall() {
+        final CDElement element = new AvatarSMDLibraryFunctionCall( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarSMDRandom() {
+        final CDElement element = new AvatarSMDRandom( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarSMDReceiveSignal() {
+        final CDElement element = new AvatarSMDReceiveSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarSMDResetTimer() {
+        final CDElement element = new AvatarSMDResetTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarSMDSendSignal() {
+        final CDElement element = new AvatarSMDSendSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarSMDSetTimer() {
+        final CDElement element = new AvatarSMDSetTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableAvatarSMDStartState() {
+        final CDElement element = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableAvatarSMDState() {
+        final TGComponent startElement = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+        final AvatarSMDState compositeState1 = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        compositeState1.setValue( "compositeState" );
+        int indexState1 = 0;
+        diagramPanel.addComponent( compositeState1, compositeState1.getX(), compositeState1.getY(), false, true );
+        final String testName = "test";
+        
+        final TGComponent con1 = new AvatarSMDConnector( 	0, 
+	        												0,
+	        												diagramPanel.getMinX(),
+	        												diagramPanel.getMaxX(),
+	        												diagramPanel.getMinY(),
+	        												diagramPanel.getMaxY(),
+	        												false,
+	        												null,
+	        												diagramPanel,
+	        												startElement.getTGConnectingPointAtIndex( 0 ),
+	        												compositeState1.getTGConnectingPointAtIndex( 0 ),
+	        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+        
+        final TGComponent startElementState1 = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, compositeState1, diagramPanel );
+        compositeState1.addInternalComponent( startElementState1, indexState1++ );
+
+        final TGComponent timerState11 = new AvatarSMDResetTimer( 500, 500, 0, 1400, 0, 1900, true, compositeState1, diagramPanel );
+        compositeState1.addInternalComponent( timerState11, indexState1++ );
+        
+        final AvatarSMDConnector conState11 = new AvatarSMDConnector( 	0, 
+				        												0,
+				        												diagramPanel.getMinX(),
+				        												diagramPanel.getMaxX(),
+				        												diagramPanel.getMinY(),
+				        												diagramPanel.getMaxY(),
+				        												false,
+				        												null,
+				        												diagramPanel,
+				        												startElementState1.getTGConnectingPointAtIndex( 0 ),
+				        												timerState11.getTGConnectingPointAtIndex( 0 ),
+				        												new Vector<Point>() );
+        conState11.setTransitionInfo( "false", "a = b" );
+        conState11.setTransitionTime( "0", "2", "0", "10" );
+        diagramPanel.addComponent( conState11, conState11.getX(), conState11.getY(), false, true );
+        final AvatarSMDState compositeState2 = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, compositeState1, diagramPanel );
+        compositeState2.setValue( testName );
+        int indexState2 = 0;
+        compositeState1.addInternalComponent( compositeState2, indexState1++ );
+        
+        final TGComponent conState12 = new AvatarSMDConnector( 	0, 
+		        												0,
+		        												diagramPanel.getMinX(),
+		        												diagramPanel.getMaxX(),
+		        												diagramPanel.getMinY(),
+		        												diagramPanel.getMaxY(),
+		        												false,
+		        												null,
+		        												diagramPanel,
+		        												timerState11.getTGConnectingPointAtIndex( 1 ),
+		        												compositeState2.getTGConnectingPointAtIndex( 0 ),
+		        												new Vector<Point>() );
+        diagramPanel.addComponent( conState12, conState12.getX(), conState12.getY(), false, true );
+        
+        final TGComponent startElementState2 = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, compositeState2, diagramPanel );
+        compositeState2.addInternalComponent( startElementState2, indexState2++ );
+        final TGComponent receiveSignalState2 = new AvatarSMDReceiveSignal( 500, 500, 0, 1400, 0, 1900, true, compositeState2, diagramPanel );
+        compositeState2.addInternalComponent( receiveSignalState2, indexState2++ );
+
+        final TGComponent conState21 = new AvatarSMDConnector( 	0, 
+																0,
+																diagramPanel.getMinX(),
+																diagramPanel.getMaxX(),
+																diagramPanel.getMinY(),
+																diagramPanel.getMaxY(),
+																false,
+																null,
+																diagramPanel,
+																startElementState2.getTGConnectingPointAtIndex( 0 ),
+																receiveSignalState2.getTGConnectingPointAtIndex( 0 ),
+																new Vector<Point>() );
+        diagramPanel.addComponent( conState21, conState21.getX(), conState21.getY(), false, true );
+
+        final TGComponent timerState12 = new AvatarSMDResetTimer( 500, 500, 0, 1400, 0, 1900, true, compositeState1, diagramPanel );
+        compositeState1.addInternalComponent( timerState12, indexState1++ );
+
+        final TGComponent conState13 = new AvatarSMDConnector( 	0, 
+																0,
+																diagramPanel.getMinX(),
+																diagramPanel.getMaxX(),
+																diagramPanel.getMinY(),
+																diagramPanel.getMaxY(),
+																false,
+																null,
+																diagramPanel,
+																receiveSignalState2.getTGConnectingPointAtIndex( 1 ),
+																timerState12.getTGConnectingPointAtIndex( 0 ),
+																new Vector<Point>() );
+        diagramPanel.addComponent( conState13, conState13.getX(), conState13.getY(), false, true );
+
+        final TGComponent stateTest = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        stateTest.setValue( testName );
+        diagramPanel.addComponent( stateTest, stateTest.getX(), stateTest.getY(), false, true );
+
+        final TGComponent conStateTest = new AvatarSMDConnector( 	0,
+																	0,
+																	diagramPanel.getMinX(),
+																	diagramPanel.getMaxX(),
+																	diagramPanel.getMinY(),
+																	diagramPanel.getMaxY(),
+																	false,
+																	null,
+																	diagramPanel,
+																	timerState12.getTGConnectingPointAtIndex( 1 ),
+																	stateTest.getTGConnectingPointAtIndex( 0 ),
+																	new Vector<Point>() );
+        diagramPanel.addComponent( conStateTest, conStateTest.getX(), conStateTest.getY(), false, true );
+
+        final TGComponent receiveSignal = new AvatarSMDReceiveSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        receiveSignal.setValue( testName );
+        diagramPanel.addComponent( receiveSignal, receiveSignal.getX(), receiveSignal.getY(), false, true );
+
+        final TGComponent conReceiveSignal = new AvatarSMDConnector( 	0,
+																		0,
+																		diagramPanel.getMinX(),
+																		diagramPanel.getMaxX(),
+																		diagramPanel.getMinY(),
+																		diagramPanel.getMaxY(),
+																		false,
+																		null,
+																		diagramPanel,
+																		stateTest.getTGConnectingPointAtIndex( 1 ),
+																		receiveSignal.getTGConnectingPointAtIndex( 0 ),
+																		new Vector<Point>() );
+        diagramPanel.addComponent( conReceiveSignal, conReceiveSignal.getX(), conReceiveSignal.getY(), false, true );
+
+        final TGComponent stateTest2 = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        stateTest2.setValue( "test2" );
+        diagramPanel.addComponent( stateTest2, stateTest2.getX(), stateTest2.getY(), false, true );
+
+        final TGComponent conStateTest2 = new AvatarSMDConnector( 	0,
+																	0,
+																	diagramPanel.getMinX(),
+																	diagramPanel.getMaxX(),
+																	diagramPanel.getMinY(),
+																	diagramPanel.getMaxY(),
+																	false,
+																	null,
+																	diagramPanel,
+																	receiveSignal.getTGConnectingPointAtIndex( 1 ),
+																	stateTest2.getTGConnectingPointAtIndex( 0 ),
+																	new Vector<Point>() );
+        diagramPanel.addComponent( conStateTest2, conStateTest2.getX(), conStateTest2.getY(), false, true );
+
+        final TGComponent sendSignal = new AvatarSMDSendSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        sendSignal.setValue( testName );
+        diagramPanel.addComponent( sendSignal, sendSignal.getX(), sendSignal.getY(), false, true );
+
+        final TGComponent conSendSignal = new AvatarSMDConnector( 	0,
+																	0,
+																	diagramPanel.getMinX(),
+																	diagramPanel.getMaxX(),
+																	diagramPanel.getMinY(),
+																	diagramPanel.getMaxY(),
+																	false,
+																	null,
+																	diagramPanel,
+																	stateTest2.getTGConnectingPointAtIndex( 1 ),
+																	sendSignal.getTGConnectingPointAtIndex( 0 ),
+																	new Vector<Point>() );
+        diagramPanel.addComponent( conSendSignal, conSendSignal.getX(), conSendSignal.getY(), false, true );
+
+        final TGComponent stateTest3 = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        stateTest3.setValue( testName );
+        diagramPanel.addComponent( stateTest3, stateTest3.getX(), stateTest3.getY(), false, true );
+
+        final TGComponent conStateTest3 = new AvatarSMDConnector( 	0,
+																	0,
+																	diagramPanel.getMinX(),
+																	diagramPanel.getMaxX(),
+																	diagramPanel.getMinY(),
+																	diagramPanel.getMaxY(),
+																	false,
+																	null,
+																	diagramPanel,
+																	sendSignal.getTGConnectingPointAtIndex( 1 ),
+																	stateTest3.getTGConnectingPointAtIndex( 0 ),
+																	new Vector<Point>() );
+        diagramPanel.addComponent( conStateTest3, conStateTest3.getX(), conStateTest3.getY(), false, true );
+
+        final TGComponent stopElement = new AvatarSMDStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true );
+
+        final TGComponent conStop = new AvatarSMDConnector( 0,
+															0,
+															diagramPanel.getMinX(),
+															diagramPanel.getMaxX(),
+															diagramPanel.getMinY(),
+															diagramPanel.getMaxY(),
+															false,
+															null,
+															diagramPanel,
+															stateTest3.getTGConnectingPointAtIndex( 1 ),
+															stopElement.getTGConnectingPointAtIndex( 0 ),
+															new Vector<Point>() );
+        diagramPanel.addComponent( conStop, conStop.getX(), conStop.getY(), false, true );
+        
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( compositeState1.canBeDisabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( startElementState1.canBeDisabled() );
+        assertTrue( timerState11.canBeDisabled() );
+        assertTrue( conState11.canBeDisabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( compositeState2.canBeDisabled() );
+        assertTrue( conState12.canBeDisabled() );
+        assertFalse( startElementState2.canBeDisabled() );
+        assertTrue( receiveSignalState2.canBeDisabled() );
+        assertTrue( conState21.canBeDisabled() );
+        assertTrue( timerState12.canBeDisabled() );
+        assertTrue( conState13.canBeDisabled() );
+        assertTrue( stateTest.canBeDisabled() );
+        assertTrue( conStateTest.canBeDisabled() );
+        assertTrue( receiveSignal.canBeDisabled() );
+        assertTrue( conReceiveSignal.canBeDisabled() );
+        assertTrue( stateTest2.canBeDisabled() );
+        assertTrue( conStateTest2.canBeDisabled() );
+        assertTrue( sendSignal.canBeDisabled() );
+        assertTrue( conSendSignal.canBeDisabled() );
+        assertTrue( stateTest3.canBeDisabled() );
+        assertTrue( conStateTest3.canBeDisabled() );
+        assertFalse( stopElement.canBeDisabled() );
+        assertFalse( conStop.canBeDisabled() );
+        
+        compositeState1.setEnabled( false );
+        
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( compositeState1.canBeDisabled() );
+        assertFalse( compositeState1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertFalse( startElementState1.canBeDisabled() );
+        assertTrue( startElementState1.isEnabled() );
+        assertFalse( timerState11.canBeDisabled() );
+        assertFalse( timerState11.isEnabled() );
+        assertFalse( conState11.canBeDisabled() );
+        assertTrue( conState11.isEnabled() );
+        assertFalse( conState11.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertFalse( conState11.getAvatarSMDTransitionInfo().isEnabled() );
+        assertFalse( compositeState2.canBeDisabled() );
+        assertFalse( compositeState2.isEnabled() );
+        assertFalse( conState12.canBeDisabled() );
+        assertTrue( conState12.isEnabled() );
+        assertFalse( startElementState2.canBeDisabled() );
+        assertTrue( startElementState2.isEnabled() );
+        assertFalse( receiveSignalState2.canBeDisabled() );
+        assertFalse( receiveSignalState2.isEnabled() );
+        assertFalse( conState21.canBeDisabled() );
+        assertTrue( conState21.isEnabled() );
+        assertFalse( timerState12.canBeDisabled() );
+        assertFalse( timerState12.isEnabled() );
+        assertFalse( conState13.canBeDisabled() );
+        assertTrue( conState13.isEnabled() );
+        
+        assertTrue( stateTest.canBeDisabled() );
+        assertTrue( stateTest.isEnabled() );
+        assertFalse( conStateTest.canBeDisabled() );
+        assertTrue( conStateTest.isEnabled() );
+        assertTrue( receiveSignal.canBeDisabled() );
+        assertTrue( receiveSignal.isEnabled() );
+        assertTrue( conReceiveSignal.canBeDisabled() );
+        assertTrue( conReceiveSignal.isEnabled() );
+        assertTrue( stateTest2.canBeDisabled() );
+        assertTrue( stateTest2.isEnabled() );
+        assertTrue( conStateTest2.canBeDisabled() );
+        assertTrue( conStateTest2.isEnabled() );
+        assertTrue( sendSignal.canBeDisabled() );
+        assertTrue( sendSignal.isEnabled() );
+        assertTrue( conSendSignal.canBeDisabled() );
+        assertTrue( conSendSignal.isEnabled() );
+        assertTrue( stateTest3.canBeDisabled() );
+        assertTrue( stateTest3.isEnabled() );
+        assertTrue( conStateTest3.canBeDisabled() );
+        assertTrue( conStateTest3.isEnabled() );
+
+        assertFalse( stopElement.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( conStop.canBeDisabled() );
+        assertTrue( conStop.isEnabled() );
+
+        compositeState1.setEnabled( true );
+        
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( compositeState1.canBeDisabled() );
+        assertTrue( compositeState1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertFalse( startElementState1.canBeDisabled() );
+        assertTrue( startElementState1.isEnabled() );
+        assertTrue( timerState11.canBeDisabled() );
+        assertTrue( timerState11.isEnabled() );
+        assertTrue( conState11.canBeDisabled() );
+        assertTrue( conState11.isEnabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( compositeState2.canBeDisabled() );
+        assertTrue( compositeState2.isEnabled() );
+        assertTrue( conState12.canBeDisabled() );
+        assertTrue( conState12.isEnabled() );
+        assertFalse( startElementState2.canBeDisabled() );
+        assertTrue( startElementState2.isEnabled() );
+        assertTrue( receiveSignalState2.canBeDisabled() );
+        assertTrue( receiveSignalState2.isEnabled() );
+        assertTrue( conState21.canBeDisabled() );
+        assertTrue( conState21.isEnabled() );
+        assertTrue( timerState12.canBeDisabled() );
+        assertTrue( timerState12.isEnabled() );
+        assertTrue( conState13.canBeDisabled() );
+        assertTrue( conState13.isEnabled() );
+        
+        assertTrue( stateTest.canBeDisabled() );
+        assertTrue( stateTest.isEnabled() );
+        assertTrue( conStateTest.canBeDisabled() );
+        assertTrue( conStateTest.isEnabled() );
+        assertTrue( receiveSignal.canBeDisabled() );
+        assertTrue( receiveSignal.isEnabled() );
+        assertTrue( conReceiveSignal.canBeDisabled() );
+        assertTrue( conReceiveSignal.isEnabled() );
+        assertTrue( stateTest2.canBeDisabled() );
+        assertTrue( stateTest2.isEnabled() );
+        assertTrue( conStateTest2.canBeDisabled() );
+        assertTrue( conStateTest2.isEnabled() );
+        assertTrue( sendSignal.canBeDisabled() );
+        assertTrue( sendSignal.isEnabled() );
+        assertTrue( conSendSignal.canBeDisabled() );
+        assertTrue( conSendSignal.isEnabled() );
+        assertTrue( stateTest3.canBeDisabled() );
+        assertTrue( stateTest3.isEnabled() );
+        assertTrue( conStateTest3.canBeDisabled() );
+        assertTrue( conStateTest3.isEnabled() );
+
+        assertFalse( stopElement.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( conStop.canBeDisabled() );
+        assertTrue( conStop.isEnabled() );
+        
+        compositeState2.setEnabled( false );
+        
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( compositeState1.canBeDisabled() );
+        assertTrue( compositeState1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertFalse( startElementState1.canBeDisabled() );
+        assertTrue( startElementState1.isEnabled() );
+        assertTrue( timerState11.canBeDisabled() );
+        assertTrue( timerState11.isEnabled() );
+        assertTrue( conState11.canBeDisabled() );
+        assertTrue( conState11.isEnabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( compositeState2.canBeDisabled() );
+        assertFalse( compositeState2.isEnabled() );
+        assertTrue( conState12.canBeDisabled() );
+        assertTrue( conState12.isEnabled() );
+        assertFalse( startElementState2.canBeDisabled() );
+        assertTrue( startElementState2.isEnabled() );
+        assertFalse( receiveSignalState2.canBeDisabled() );
+        assertFalse( receiveSignalState2.isEnabled() );
+        assertFalse( conState21.canBeDisabled() );
+        assertTrue( conState21.isEnabled() );
+        assertTrue( timerState12.canBeDisabled() );
+        assertTrue( timerState12.isEnabled() );
+        assertFalse( conState13.canBeDisabled() );
+        assertTrue( conState13.isEnabled() );
+        
+        assertTrue( stateTest.canBeDisabled() );
+        assertTrue( stateTest.isEnabled() );
+        assertTrue( conStateTest.canBeDisabled() );
+        assertTrue( conStateTest.isEnabled() );
+        assertTrue( receiveSignal.canBeDisabled() );
+        assertTrue( receiveSignal.isEnabled() );
+        assertTrue( conReceiveSignal.canBeDisabled() );
+        assertTrue( conReceiveSignal.isEnabled() );
+        assertTrue( stateTest2.canBeDisabled() );
+        assertTrue( stateTest2.isEnabled() );
+        assertTrue( conStateTest2.canBeDisabled() );
+        assertTrue( conStateTest2.isEnabled() );
+        assertTrue( sendSignal.canBeDisabled() );
+        assertTrue( sendSignal.isEnabled() );
+        assertTrue( conSendSignal.canBeDisabled() );
+        assertTrue( conSendSignal.isEnabled() );
+        assertTrue( stateTest3.canBeDisabled() );
+        assertTrue( stateTest3.isEnabled() );
+        assertTrue( conStateTest3.canBeDisabled() );
+        assertTrue( conStateTest3.isEnabled() );
+
+        assertFalse( stopElement.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( conStop.canBeDisabled() );
+        assertTrue( conStop.isEnabled() );
+
+        compositeState2.setEnabled( true );
+        
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( compositeState1.canBeDisabled() );
+        assertTrue( compositeState1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertFalse( startElementState1.canBeDisabled() );
+        assertTrue( startElementState1.isEnabled() );
+        assertTrue( timerState11.canBeDisabled() );
+        assertTrue( timerState11.isEnabled() );
+        assertTrue( conState11.canBeDisabled() );
+        assertTrue( conState11.isEnabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( compositeState2.canBeDisabled() );
+        assertTrue( compositeState2.isEnabled() );
+        assertTrue( conState12.canBeDisabled() );
+        assertTrue( conState12.isEnabled() );
+        assertFalse( startElementState2.canBeDisabled() );
+        assertTrue( startElementState2.isEnabled() );
+        assertTrue( receiveSignalState2.canBeDisabled() );
+        assertTrue( receiveSignalState2.isEnabled() );
+        assertTrue( conState21.canBeDisabled() );
+        assertTrue( conState21.isEnabled() );
+        assertTrue( timerState12.canBeDisabled() );
+        assertTrue( timerState12.isEnabled() );
+        assertTrue( conState13.canBeDisabled() );
+        assertTrue( conState13.isEnabled() );
+        
+        assertTrue( stateTest.canBeDisabled() );
+        assertTrue( stateTest.isEnabled() );
+        assertTrue( conStateTest.canBeDisabled() );
+        assertTrue( conStateTest.isEnabled() );
+        assertTrue( receiveSignal.canBeDisabled() );
+        assertTrue( receiveSignal.isEnabled() );
+        assertTrue( conReceiveSignal.canBeDisabled() );
+        assertTrue( conReceiveSignal.isEnabled() );
+        assertTrue( stateTest2.canBeDisabled() );
+        assertTrue( stateTest2.isEnabled() );
+        assertTrue( conStateTest2.canBeDisabled() );
+        assertTrue( conStateTest2.isEnabled() );
+        assertTrue( sendSignal.canBeDisabled() );
+        assertTrue( sendSignal.isEnabled() );
+        assertTrue( conSendSignal.canBeDisabled() );
+        assertTrue( conSendSignal.isEnabled() );
+        assertTrue( stateTest3.canBeDisabled() );
+        assertTrue( stateTest3.isEnabled() );
+        assertTrue( conStateTest3.canBeDisabled() );
+        assertTrue( conStateTest3.isEnabled() );
+
+        assertFalse( stopElement.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( conStop.canBeDisabled() );
+        assertTrue( conStop.isEnabled() );
+        
+        stateTest.setEnabled( false );
+        
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( compositeState1.canBeDisabled() );
+        assertTrue( compositeState1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertFalse( startElementState1.canBeDisabled() );
+        assertTrue( startElementState1.isEnabled() );
+        assertTrue( timerState11.canBeDisabled() );
+        assertTrue( timerState11.isEnabled() );
+        assertTrue( conState11.canBeDisabled() );
+        assertTrue( conState11.isEnabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( compositeState2.canBeDisabled() );
+        assertTrue( compositeState2.isEnabled() );
+        assertTrue( conState12.canBeDisabled() );
+        assertTrue( conState12.isEnabled() );
+        assertFalse( startElementState2.canBeDisabled() );
+        assertTrue( startElementState2.isEnabled() );
+        assertTrue( receiveSignalState2.canBeDisabled() );
+        assertTrue( receiveSignalState2.isEnabled() );
+        assertTrue( conState21.canBeDisabled() );
+        assertTrue( conState21.isEnabled() );
+        assertTrue( timerState12.canBeDisabled() );
+        assertTrue( timerState12.isEnabled() );
+        assertTrue( conState13.canBeDisabled() );
+        assertTrue( conState13.isEnabled() );
+        
+        assertTrue( stateTest.canBeDisabled() );
+        assertFalse( stateTest.isEnabled() );
+        assertTrue( conStateTest.canBeDisabled() );
+        assertTrue( conStateTest.isEnabled() );
+        assertTrue( receiveSignal.canBeDisabled() );
+        assertTrue( receiveSignal.isEnabled() );
+        assertTrue( conReceiveSignal.canBeDisabled() );
+        assertTrue( conReceiveSignal.isEnabled() );
+        assertTrue( stateTest2.canBeDisabled() );
+        assertTrue( stateTest2.isEnabled() );
+        assertTrue( conStateTest2.canBeDisabled() );
+        assertTrue( conStateTest2.isEnabled() );
+        assertTrue( sendSignal.canBeDisabled() );
+        assertTrue( sendSignal.isEnabled() );
+        assertTrue( conSendSignal.canBeDisabled() );
+        assertTrue( conSendSignal.isEnabled() );
+        assertTrue( stateTest3.canBeDisabled() );
+        assertFalse( stateTest3.isEnabled() );
+        assertTrue( conStateTest3.canBeDisabled() );
+        assertTrue( conStateTest3.isEnabled() );
+
+        assertFalse( stopElement.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( conStop.canBeDisabled() );
+        assertTrue( conStop.isEnabled() );
+
+        stateTest.setEnabled( true );
+        
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( compositeState1.canBeDisabled() );
+        assertTrue( compositeState1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertFalse( startElementState1.canBeDisabled() );
+        assertTrue( startElementState1.isEnabled() );
+        assertTrue( timerState11.canBeDisabled() );
+        assertTrue( timerState11.isEnabled() );
+        assertTrue( conState11.canBeDisabled() );
+        assertTrue( conState11.isEnabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( compositeState2.canBeDisabled() );
+        assertTrue( compositeState2.isEnabled() );
+        assertTrue( conState12.canBeDisabled() );
+        assertTrue( conState12.isEnabled() );
+        assertFalse( startElementState2.canBeDisabled() );
+        assertTrue( startElementState2.isEnabled() );
+        assertTrue( receiveSignalState2.canBeDisabled() );
+        assertTrue( receiveSignalState2.isEnabled() );
+        assertTrue( conState21.canBeDisabled() );
+        assertTrue( conState21.isEnabled() );
+        assertTrue( timerState12.canBeDisabled() );
+        assertTrue( timerState12.isEnabled() );
+        assertTrue( conState13.canBeDisabled() );
+        assertTrue( conState13.isEnabled() );
+        
+        assertTrue( stateTest.canBeDisabled() );
+        assertTrue( stateTest.isEnabled() );
+        assertTrue( conStateTest.canBeDisabled() );
+        assertTrue( conStateTest.isEnabled() );
+        assertTrue( receiveSignal.canBeDisabled() );
+        assertTrue( receiveSignal.isEnabled() );
+        assertTrue( conReceiveSignal.canBeDisabled() );
+        assertTrue( conReceiveSignal.isEnabled() );
+        assertTrue( stateTest2.canBeDisabled() );
+        assertTrue( stateTest2.isEnabled() );
+        assertTrue( conStateTest2.canBeDisabled() );
+        assertTrue( conStateTest2.isEnabled() );
+        assertTrue( sendSignal.canBeDisabled() );
+        assertTrue( sendSignal.isEnabled() );
+        assertTrue( conSendSignal.canBeDisabled() );
+        assertTrue( conSendSignal.isEnabled() );
+        assertTrue( stateTest3.canBeDisabled() );
+        assertTrue( stateTest3.isEnabled() );
+        assertTrue( conStateTest3.canBeDisabled() );
+        assertTrue( conStateTest3.isEnabled() );
+
+        assertFalse( stopElement.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( conStop.canBeDisabled() );
+        assertTrue( conStop.isEnabled() );
+
+        
+        stateTest3.setEnabled( false );
+        
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( compositeState1.canBeDisabled() );
+        assertTrue( compositeState1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertFalse( startElementState1.canBeDisabled() );
+        assertTrue( startElementState1.isEnabled() );
+        assertTrue( timerState11.canBeDisabled() );
+        assertTrue( timerState11.isEnabled() );
+        assertTrue( conState11.canBeDisabled() );
+        assertTrue( conState11.isEnabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( compositeState2.canBeDisabled() );
+        assertTrue( compositeState2.isEnabled() );
+        assertTrue( conState12.canBeDisabled() );
+        assertTrue( conState12.isEnabled() );
+        assertFalse( startElementState2.canBeDisabled() );
+        assertTrue( startElementState2.isEnabled() );
+        assertTrue( receiveSignalState2.canBeDisabled() );
+        assertTrue( receiveSignalState2.isEnabled() );
+        assertTrue( conState21.canBeDisabled() );
+        assertTrue( conState21.isEnabled() );
+        assertTrue( timerState12.canBeDisabled() );
+        assertTrue( timerState12.isEnabled() );
+        assertTrue( conState13.canBeDisabled() );
+        assertTrue( conState13.isEnabled() );
+        
+        assertTrue( stateTest.canBeDisabled() );
+        assertFalse( stateTest.isEnabled() );
+        assertTrue( conStateTest.canBeDisabled() );
+        assertTrue( conStateTest.isEnabled() );
+        assertTrue( receiveSignal.canBeDisabled() );
+        assertTrue( receiveSignal.isEnabled() );
+        assertTrue( conReceiveSignal.canBeDisabled() );
+        assertTrue( conReceiveSignal.isEnabled() );
+        assertTrue( stateTest2.canBeDisabled() );
+        assertTrue( stateTest2.isEnabled() );
+        assertTrue( conStateTest2.canBeDisabled() );
+        assertTrue( conStateTest2.isEnabled() );
+        assertTrue( sendSignal.canBeDisabled() );
+        assertTrue( sendSignal.isEnabled() );
+        assertTrue( conSendSignal.canBeDisabled() );
+        assertTrue( conSendSignal.isEnabled() );
+        assertTrue( stateTest3.canBeDisabled() );
+        assertFalse( stateTest3.isEnabled() );
+        assertTrue( conStateTest3.canBeDisabled() );
+        assertTrue( conStateTest3.isEnabled() );
+
+        assertFalse( stopElement.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( conStop.canBeDisabled() );
+        assertTrue( conStop.isEnabled() );
+
+        stateTest.setEnabled( true );
+        
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( startElement.isEnabled() );
+        assertTrue( compositeState1.canBeDisabled() );
+        assertTrue( compositeState1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertFalse( startElementState1.canBeDisabled() );
+        assertTrue( startElementState1.isEnabled() );
+        assertTrue( timerState11.canBeDisabled() );
+        assertTrue( timerState11.isEnabled() );
+        assertTrue( conState11.canBeDisabled() );
+        assertTrue( conState11.isEnabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() );
+        assertTrue( compositeState2.canBeDisabled() );
+        assertTrue( compositeState2.isEnabled() );
+        assertTrue( conState12.canBeDisabled() );
+        assertTrue( conState12.isEnabled() );
+        assertFalse( startElementState2.canBeDisabled() );
+        assertTrue( startElementState2.isEnabled() );
+        assertTrue( receiveSignalState2.canBeDisabled() );
+        assertTrue( receiveSignalState2.isEnabled() );
+        assertTrue( conState21.canBeDisabled() );
+        assertTrue( conState21.isEnabled() );
+        assertTrue( timerState12.canBeDisabled() );
+        assertTrue( timerState12.isEnabled() );
+        assertTrue( conState13.canBeDisabled() );
+        assertTrue( conState13.isEnabled() );
+        
+        assertTrue( stateTest.canBeDisabled() );
+        assertTrue( stateTest.isEnabled() );
+        assertTrue( conStateTest.canBeDisabled() );
+        assertTrue( conStateTest.isEnabled() );
+        assertTrue( receiveSignal.canBeDisabled() );
+        assertTrue( receiveSignal.isEnabled() );
+        assertTrue( conReceiveSignal.canBeDisabled() );
+        assertTrue( conReceiveSignal.isEnabled() );
+        assertTrue( stateTest2.canBeDisabled() );
+        assertTrue( stateTest2.isEnabled() );
+        assertTrue( conStateTest2.canBeDisabled() );
+        assertTrue( conStateTest2.isEnabled() );
+        assertTrue( sendSignal.canBeDisabled() );
+        assertTrue( sendSignal.isEnabled() );
+        assertTrue( conSendSignal.canBeDisabled() );
+        assertTrue( conSendSignal.isEnabled() );
+        assertTrue( stateTest3.canBeDisabled() );
+        assertTrue( stateTest3.isEnabled() );
+        assertTrue( conStateTest3.canBeDisabled() );
+        assertTrue( conStateTest3.isEnabled() );
+
+        assertFalse( stopElement.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( conStop.canBeDisabled() );
+        assertTrue( conStop.isEnabled() );
+	}
+
+	@Test
+    public void testDisableAvatarSMDStopState() {
+        final TGComponent startElement = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+        final TGComponent action = new AvatarSMDSetTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( action, action.getX(), action.getY(), false, true );
+
+        final TGComponent con1 = new AvatarSMDConnector( 	0, 
+	        												0,
+	        												diagramPanel.getMinX(),
+	        												diagramPanel.getMaxX(),
+	        												diagramPanel.getMinY(),
+	        												diagramPanel.getMaxY(),
+	        												false,
+	        												null,
+	        												diagramPanel,
+	        												startElement.getTGConnectingPointAtIndex( 0 ),
+	        												action.getTGConnectingPointAtIndex( 0 ),
+	        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent stopElement = new AvatarSMDStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true );
+
+        final TGComponent con2 = new AvatarSMDConnector( 	0, 
+	        												0,
+	        												diagramPanel.getMinX(),
+	        												diagramPanel.getMaxX(),
+	        												diagramPanel.getMinY(),
+	        												diagramPanel.getMaxY(),
+	        												false,
+	        												null,
+	        												diagramPanel,
+	        												action.getTGConnectingPointAtIndex( 1 ),
+	        												stopElement.getTGConnectingPointAtIndex( 0 ),
+	        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+        
+        assertFalse( stopElement.canBeDisabled() );
+        assertFalse( con2.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableAvatarSMDTransitionInfo() {
+        final TGComponent startElement = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+        final TGComponent setTimer = new AvatarSMDSetTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( setTimer, setTimer.getX(), setTimer.getY(), false, true );
+
+        final AvatarSMDConnector con1 = new AvatarSMDConnector( 0, 
+		        												0,
+		        												diagramPanel.getMinX(),
+		        												diagramPanel.getMaxX(),
+		        												diagramPanel.getMinY(),
+		        												diagramPanel.getMaxY(),
+		        												false,
+		        												null,
+		        												diagramPanel,
+		        												startElement.getTGConnectingPointAtIndex( 0 ),
+		        												setTimer.getTGConnectingPointAtIndex( 0 ),
+		        												new Vector<Point>() );
+        final String guard = "false";
+        final String action = "a = b";
+        con1.setTransitionInfo( guard, action );
+        final String minAfter = "0";
+        final String maxAfter = "2";
+        final String minCompute = "1";
+        final String maxCompute = "10";
+        con1.setTransitionTime( minAfter, maxAfter, minCompute, maxCompute );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent stopElement = new AvatarSMDStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true );
+
+        final AvatarSMDConnector con2 = new AvatarSMDConnector( 0, 
+		        												0,
+		        												diagramPanel.getMinX(),
+		        												diagramPanel.getMaxX(),
+		        												diagramPanel.getMinY(),
+		        												diagramPanel.getMaxY(),
+		        												false,
+		        												null,
+		        												diagramPanel,
+		        												setTimer.getTGConnectingPointAtIndex( 1 ),
+		        												stopElement.getTGConnectingPointAtIndex( 0 ),
+		        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+        
+        assertTrue( con1.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( con2.getAvatarSMDTransitionInfo().canBeDisabled() );
+        
+        con1.setEnabled( false );
+        assertTrue( con1.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertTrue( con1.getAvatarSMDTransitionInfo().isEnabled() );
+        assertEquals( guard, con1.getEffectiveGuard() );
+        assertEquals( action, con1.getEffectiveActions().get( 0 ) );
+        assertEquals( minAfter, con1.getEffectiveAfterMinDelay() );
+        assertEquals( maxAfter, con1.getEffectiveAfterMaxDelay() );
+        assertEquals( minCompute, con1.getEffectiveComputeMinDelay() );
+        assertEquals( maxCompute, con1.getEffectiveComputeMaxDelay() );
+
+        con1.getAvatarSMDTransitionInfo().setEnabled( false );
+        assertTrue( con1.getAvatarSMDTransitionInfo().canBeDisabled() );
+        assertFalse( con1.getAvatarSMDTransitionInfo().isEnabled() );
+        assertEquals( AvatarSMDTransitionInfo.DISABLED_GUARD_EXPR, con1.getEffectiveGuard() );
+        
+        for ( final String expr : con1.getEffectiveActions() ) {
+            assertEquals( AvatarSMDTransitionInfo.DISABLED_ACTION_EXPR, expr );
+        }
+
+        assertEquals( AvatarSMDTransitionInfo.DISABLED_DELAY_EXPR, con1.getEffectiveAfterMinDelay() );
+        assertEquals( AvatarSMDTransitionInfo.DISABLED_DELAY_EXPR, con1.getEffectiveAfterMaxDelay() );
+        assertEquals( AvatarSMDTransitionInfo.DISABLED_DELAY_EXPR, con1.getEffectiveComputeMinDelay() );
+        assertEquals( AvatarSMDTransitionInfo.DISABLED_DELAY_EXPR, con1.getEffectiveComputeMaxDelay() );
+    }
+}
diff --git a/ttool/src/test/java/ui/tmlad/TestTMLADComponentsDisabling.java b/ttool/src/test/java/ui/tmlad/TestTMLADComponentsDisabling.java
new file mode 100644
index 0000000000000000000000000000000000000000..69f7e84ff54d3690958c59ed98f0e907286cb15e
--- /dev/null
+++ b/ttool/src/test/java/ui/tmlad/TestTMLADComponentsDisabling.java
@@ -0,0 +1,1287 @@
+package ui.tmlad;
+
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import java.awt.Point;
+import java.util.Vector;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import ui.AbstractUITest;
+import ui.CDElement;
+import ui.TGComponent;
+import ui.ad.TADForLoop;
+import ui.tmldd.TMLArchiDiagramPanel;
+import ui.tmldd.TMLArchiDiagramToolBar;
+
+public class TestTMLADComponentsDisabling extends AbstractUITest {
+
+	private TMLArchiDiagramPanel diagramPanel;
+	
+	public TestTMLADComponentsDisabling() {
+		super();
+	}
+	
+	@Before
+    public void setUp() {
+		final TMLArchiDiagramToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI );
+        diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar );
+    }
+	
+	@Test
+    public void testDisableTGConnectingPointTMLAD() {
+        final CDElement element = new TGConnectingPointTMLAD( null, 0, -5, true, false, 0.5, 0.0 );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+	
+	@Test
+    public void testDisableTGConnectorTMLAD() {
+        final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TGComponent requestElement = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestElement, requestElement.getX(), requestElement.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElement.getTGConnectingPointAtIndex( 0 ),
+        												requestElement.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent actionElement = new TMLADActionState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( actionElement, actionElement.getX(), actionElement.getY(), false, true );
+        
+        final TGComponent con2 = new TGConnectorTMLAD( 	0, 
+														0,
+														diagramPanel.getMinX(),
+														diagramPanel.getMaxX(),
+														diagramPanel.getMinY(),
+														diagramPanel.getMaxY(),
+														false,
+														null,
+														diagramPanel,
+														requestElement.getTGConnectingPointAtIndex( 1 ),
+														actionElement.getTGConnectingPointAtIndex( 0 ),
+														new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElement = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true );
+        
+        final TGComponent con3 = new TGConnectorTMLAD( 	0, 
+														0,
+														diagramPanel.getMinX(),
+														diagramPanel.getMaxX(),
+														diagramPanel.getMinY(),
+														diagramPanel.getMaxY(),
+														false,
+														null,
+														diagramPanel,
+														actionElement.getTGConnectingPointAtIndex( 1 ),
+														stopElement.getTGConnectingPointAtIndex( 0 ),
+														new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+        
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( con3.canBeDisabled() );
+        
+        con1.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( requestElement.isEnabled() );
+        assertTrue( requestElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( actionElement.isEnabled() );
+        assertTrue( actionElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+        
+        con1.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestElement.isEnabled() );
+        assertTrue( requestElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( actionElement.isEnabled() );
+        assertTrue( actionElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        
+        con2.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestElement.isEnabled() );
+        assertTrue( requestElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( actionElement.isEnabled() );
+        assertTrue( actionElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+        
+        con2.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestElement.isEnabled() );
+        assertTrue( requestElement.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( actionElement.isEnabled() );
+        assertTrue( actionElement.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+	}
+	
+//	@Test
+//    public void testDisableTGConnectorTMLADWithChoice() {
+//        final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+//        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+//
+//        final TGComponent requestElement = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+//        diagramPanel.addComponent( requestElement, requestElement.getX(), requestElement.getY(), false, true );
+//
+//        final TGComponent con1 = new TGConnectorTMLAD( 	0, 
+//        												0,
+//        												diagramPanel.getMinX(),
+//        												diagramPanel.getMaxX(),
+//        												diagramPanel.getMinY(),
+//        												diagramPanel.getMaxY(),
+//        												false,
+//        												null,
+//        												diagramPanel,
+//        												startElement.getTGConnectingPointAtIndex( 0 ),
+//        												requestElement.getTGConnectingPointAtIndex( 0 ),
+//        												new Vector<Point>() );
+//        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+//
+//        final TGComponent actionElement = new TMLADActionState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+//        diagramPanel.addComponent( actionElement, actionElement.getX(), actionElement.getY(), false, true );
+//        
+//        final TGComponent con2 = new TGConnectorTMLAD( 	0, 
+//														0,
+//														diagramPanel.getMinX(),
+//														diagramPanel.getMaxX(),
+//														diagramPanel.getMinY(),
+//														diagramPanel.getMaxY(),
+//														false,
+//														null,
+//														diagramPanel,
+//														requestElement.getTGConnectingPointAtIndex( 1 ),
+//														actionElement.getTGConnectingPointAtIndex( 0 ),
+//														new Vector<Point>() );
+//        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+//
+//        final TGComponent stopElement = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+//        diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true );
+//        
+//        final TGComponent con3 = new TGConnectorTMLAD( 	0, 
+//														0,
+//														diagramPanel.getMinX(),
+//														diagramPanel.getMaxX(),
+//														diagramPanel.getMinY(),
+//														diagramPanel.getMaxY(),
+//														false,
+//														null,
+//														diagramPanel,
+//														actionElement.getTGConnectingPointAtIndex( 1 ),
+//														stopElement.getTGConnectingPointAtIndex( 0 ),
+//														new Vector<Point>() );
+//        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+//        
+//        assertTrue( con1.canBeDisabled() );
+//        assertTrue( con2.canBeDisabled() );
+//        assertFalse( con3.canBeDisabled() );
+//        
+//        con1.setEnabled( false );
+//        assertTrue( startElement.isEnabled() );
+//        assertTrue( con1.isEnabled() );
+//        assertFalse( requestElement.isEnabled() );
+//        assertTrue( con2.isEnabled() );
+//        assertFalse( actionElement.isEnabled() );
+//        assertTrue( con3.isEnabled() );
+//        assertTrue( stopElement.isEnabled() );
+//        
+//        con1.setEnabled( true );
+//        assertTrue( startElement.isEnabled() );
+//        assertTrue( con1.isEnabled() );
+//        assertTrue( requestElement.isEnabled() );
+//        assertTrue( con2.isEnabled() );
+//        assertTrue( actionElement.isEnabled() );
+//        assertTrue( con3.isEnabled() );
+//        assertTrue( stopElement.isEnabled() );
+//        
+//        con2.setEnabled( false );
+//        assertTrue( startElement.isEnabled() );
+//        assertTrue( con1.isEnabled() );
+//        assertTrue( requestElement.isEnabled() );
+//        assertTrue( con2.isEnabled() );
+//        assertFalse( actionElement.isEnabled() );
+//        assertTrue( con3.isEnabled() );
+//        assertTrue( stopElement.isEnabled() );
+//        
+//        con2.setEnabled( true );
+//        assertTrue( startElement.isEnabled() );
+//        assertTrue( con1.isEnabled() );
+//        assertTrue( requestElement.isEnabled() );
+//        assertTrue( con2.isEnabled() );
+//        assertTrue( actionElement.isEnabled() );
+//        assertTrue( con3.isEnabled() );
+//        assertTrue( stopElement.isEnabled() );
+//	}
+
+	@Test
+    public void testDisableTMLADActionState() {
+        final CDElement element = new TMLADActionState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADChoice() {
+        final TMLADChoice element = new TMLADChoice( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+        
+        element.setGuard( Boolean.TRUE.toString(), 0 );
+        TGComponent guard = element.getInternalTGComponent( 0 );
+        assertTrue( guard.canBeDisabled() );
+        
+        guard.setEnabled( false );
+        assertFalse( guard.isEnabled() );
+
+        guard.setEnabled( true );
+        assertTrue( guard.isEnabled() );
+
+        element.setGuard( null, 0 );
+        guard = element.getInternalTGComponent( 0 );
+        assertFalse( guard.canBeDisabled() );
+
+        element.setGuard( "", 0 );
+        guard = element.getInternalTGComponent( 0 );
+        assertFalse( guard.canBeDisabled() );
+
+        element.setGuard( TMLADChoice.EMPTY_GUARD_TEXT, 0 );
+        guard = element.getInternalTGComponent( 0 );
+        assertFalse( guard.canBeDisabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADDecrypt() {
+        final CDElement element = new TMLADDecrypt( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADDelay() {
+        final CDElement element = new TMLADDelay( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADDelayInterval() {
+        final CDElement element = new TMLADDelayInterval( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADEncrypt() {
+        final CDElement element = new TMLADEncrypt( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADExecC() {
+        final CDElement element = new TMLADExecC( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADExecCInterval() {
+        final CDElement element = new TMLADExecCInterval( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADExecI() {
+        final CDElement element = new TMLADExecI( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADExecIInterval() {
+        final CDElement element = new TMLADExecIInterval( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADForEverLoop() {
+        final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TADForLoop forLoop = new TMLADForEverLoop( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( forLoop, forLoop.getX(), forLoop.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElement.getTGConnectingPointAtIndex( 0 ),
+        												forLoop.getEnterLoopConnectingPoint(),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent requestInLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestInLoop, requestInLoop.getX(),requestInLoop.getY(), false, true );
+
+        final TGComponent con2 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												forLoop.getInsideLoopConnectingPoint(),
+        												requestInLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElementInLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementInLoop, stopElementInLoop.getX(), stopElementInLoop.getY(), false, true );
+
+        final TGComponent con3 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestInLoop.getTGConnectingPointAtIndex( 1 ),
+        												stopElementInLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+        
+        assertTrue( forLoop.canBeDisabled() );
+        
+        forLoop.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertFalse( forLoop.isEnabled() );
+        assertTrue( forLoop.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( requestInLoop.isEnabled() );
+        assertFalse( requestInLoop.canBeDisabled() );
+        assertFalse( con2.isEnabled() );
+        assertFalse( con2.canBeDisabled() );
+        assertFalse( stopElementInLoop.isEnabled() );
+        assertFalse( stopElementInLoop.canBeDisabled() );
+        assertFalse( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+
+        forLoop.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( forLoop.isEnabled() );
+        assertTrue( forLoop.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestInLoop.isEnabled() );
+        assertTrue( requestInLoop.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementInLoop.isEnabled() );
+        assertFalse( stopElementInLoop.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADForLoop() {
+        final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TADForLoop forLoop = new TMLADForLoop( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( forLoop, forLoop.getX(), forLoop.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElement.getTGConnectingPointAtIndex( 0 ),
+        												forLoop.getEnterLoopConnectingPoint(),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent requestInLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestInLoop, requestInLoop.getX(),requestInLoop.getY(), false, true );
+
+        final TGComponent con2 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												forLoop.getInsideLoopConnectingPoint(),
+        												requestInLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElementInLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementInLoop, stopElementInLoop.getX(), stopElementInLoop.getY(), false, true );
+
+        final TGComponent con3 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestInLoop.getTGConnectingPointAtIndex( 1 ),
+        												stopElementInLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+
+        final TGComponent requestExitLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestExitLoop, requestExitLoop.getX(),requestExitLoop.getY(), false, true );
+
+        final TGComponent con4 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												forLoop.getExitLoopConnectingPoint(),
+        												requestExitLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true );
+
+        final TGComponent stopElementExitLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementExitLoop, stopElementExitLoop.getX(), stopElementExitLoop.getY(), false, true );
+
+        final TGComponent con5 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestExitLoop.getTGConnectingPointAtIndex( 1 ),
+        												stopElementExitLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true );
+        
+        assertTrue( forLoop.canBeDisabled() );
+        
+        forLoop.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertFalse( forLoop.isEnabled() );
+        assertTrue( forLoop.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( requestInLoop.isEnabled() );
+        assertFalse( requestInLoop.canBeDisabled() );
+        assertFalse( con2.isEnabled() );
+        assertFalse( con2.canBeDisabled() );
+        assertFalse( stopElementInLoop.isEnabled() );
+        assertFalse( stopElementInLoop.canBeDisabled() );
+        assertFalse( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( requestExitLoop.isEnabled() );
+        assertTrue( requestExitLoop.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementExitLoop.isEnabled() );
+        assertFalse( stopElementExitLoop.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+
+        forLoop.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( forLoop.isEnabled() );
+        assertTrue( forLoop.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestInLoop.isEnabled() );
+        assertTrue( requestInLoop.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementInLoop.isEnabled() );
+        assertFalse( stopElementInLoop.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( requestExitLoop.isEnabled() );
+        assertTrue( requestExitLoop.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementExitLoop.isEnabled() );
+        assertFalse( stopElementExitLoop.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+    }
+	
+	@Test
+    public void testDisableTMLADForStaticLoop() {
+        final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TADForLoop forLoop = new TMLADForStaticLoop( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( forLoop, forLoop.getX(), forLoop.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElement.getTGConnectingPointAtIndex( 0 ),
+        												forLoop.getEnterLoopConnectingPoint(),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent requestInLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestInLoop, requestInLoop.getX(),requestInLoop.getY(), false, true );
+
+        final TGComponent con2 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												forLoop.getInsideLoopConnectingPoint(),
+        												requestInLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElementInLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementInLoop, stopElementInLoop.getX(), stopElementInLoop.getY(), false, true );
+
+        final TGComponent con3 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestInLoop.getTGConnectingPointAtIndex( 1 ),
+        												stopElementInLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+
+        final TGComponent requestExitLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestExitLoop, requestExitLoop.getX(),requestExitLoop.getY(), false, true );
+
+        final TGComponent con4 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												forLoop.getExitLoopConnectingPoint(),
+        												requestExitLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true );
+
+        final TGComponent stopElementExitLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementExitLoop, stopElementExitLoop.getX(), stopElementExitLoop.getY(), false, true );
+
+        final TGComponent con5 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestExitLoop.getTGConnectingPointAtIndex( 1 ),
+        												stopElementExitLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true );
+        
+        assertTrue( forLoop.canBeDisabled() );
+        
+        forLoop.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertFalse( forLoop.isEnabled() );
+        assertTrue( forLoop.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( requestInLoop.isEnabled() );
+        assertFalse( requestInLoop.canBeDisabled() );
+        assertFalse( con2.isEnabled() );
+        assertFalse( con2.canBeDisabled() );
+        assertFalse( stopElementInLoop.isEnabled() );
+        assertFalse( stopElementInLoop.canBeDisabled() );
+        assertFalse( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( requestExitLoop.isEnabled() );
+        assertTrue( requestExitLoop.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementExitLoop.isEnabled() );
+        assertFalse( stopElementExitLoop.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+
+        forLoop.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( forLoop.isEnabled() );
+        assertTrue( forLoop.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestInLoop.isEnabled() );
+        assertTrue( requestInLoop.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementInLoop.isEnabled() );
+        assertFalse( stopElementInLoop.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( requestExitLoop.isEnabled() );
+        assertTrue( requestExitLoop.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementExitLoop.isEnabled() );
+        assertFalse( stopElementExitLoop.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLADNotifiedEvent() {
+        final CDElement element = new TMLADNotifiedEvent( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableTMLADRandom() {
+        final CDElement element = new TMLADRandom( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableTMLADReadChannel() {
+        final CDElement element = new TMLADReadChannel( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableTMLADReadRequestArg() {
+        final CDElement element = new TMLADReadRequestArg( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableTMLADSelectEvt() {
+        final CDElement element = new TMLADSelectEvt( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLADSendEvent() {
+        final CDElement element = new TMLADSendEvent( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableTMLADSendRequest() {
+        final CDElement element = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableTMLADSequence() {
+        final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TMLADSequence sequence = new TMLADSequence( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( sequence, sequence.getX(), sequence.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElement.getTGConnectingPointAtIndex( 0 ),
+        												sequence.getEnterConnectingPoint(),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent requestBranch1 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestBranch1, requestBranch1.getX(),requestBranch1.getY(), false, true );
+
+        final TGComponent con2 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												sequence.getExitConnectingPoints().get( 0 ),
+        												requestBranch1.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElementBranch1 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch1, stopElementBranch1.getX(), stopElementBranch1.getY(), false, true );
+
+        final TGComponent con3 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestBranch1.getTGConnectingPointAtIndex( 1 ),
+        												stopElementBranch1.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+
+
+        final TGComponent requestBranch2 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestBranch2, requestBranch2.getX(),requestBranch2.getY(), false, true );
+
+        final TGComponent con4 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												sequence.getExitConnectingPoints().get( 1 ),
+        												requestBranch2.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true );
+
+        final TGComponent stopElementBranch2 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch2, stopElementBranch2.getX(), stopElementBranch2.getY(), false, true );
+
+        final TGComponent con5 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestBranch2.getTGConnectingPointAtIndex( 1 ),
+        												stopElementBranch2.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true );
+
+        final TGComponent requestBranch3 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestBranch3, requestBranch3.getX(),requestBranch3.getY(), false, true );
+
+        final TGComponent con6 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												sequence.getExitConnectingPoints().get( 2 ),
+        												requestBranch3.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true );
+
+        final TGComponent stopElementBranch3 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch1, stopElementBranch3.getX(), stopElementBranch3.getY(), false, true );
+
+        final TGComponent con7 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestBranch3.getTGConnectingPointAtIndex( 1 ),
+        												stopElementBranch3.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true );
+        
+        assertTrue( sequence.canBeDisabled() );
+        
+        sequence.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertFalse( sequence.isEnabled() );
+        assertTrue( sequence.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( requestBranch1.isEnabled() );
+        assertTrue( requestBranch1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementBranch1.isEnabled() );
+        assertFalse( stopElementBranch1.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertFalse( requestBranch2.isEnabled() );
+        assertTrue( requestBranch2.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementBranch2.isEnabled() );
+        assertFalse( stopElementBranch2.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+        assertFalse( requestBranch3.isEnabled() );
+        assertTrue( requestBranch3.canBeDisabled() );
+        assertTrue( con6.isEnabled() );
+        assertTrue( con6.canBeDisabled() );
+        assertTrue( stopElementBranch3.isEnabled() );
+        assertFalse( stopElementBranch3.canBeDisabled() );
+        assertTrue( con7.isEnabled() );
+        assertFalse( con7.canBeDisabled() );
+
+        sequence.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( sequence.isEnabled() );
+        assertTrue( sequence.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestBranch1.isEnabled() );
+        assertTrue( requestBranch1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementBranch1.isEnabled() );
+        assertFalse( stopElementBranch1.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( requestBranch2.isEnabled() );
+        assertTrue( requestBranch2.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementBranch2.isEnabled() );
+        assertFalse( stopElementBranch2.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+        assertTrue( requestBranch3.isEnabled() );
+        assertTrue( requestBranch3.canBeDisabled() );
+        assertTrue( con6.isEnabled() );
+        assertTrue( con6.canBeDisabled() );
+        assertTrue( stopElementBranch3.isEnabled() );
+        assertFalse( stopElementBranch3.canBeDisabled() );
+        assertTrue( con7.isEnabled() );
+        assertFalse( con7.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLADStartState() {
+        final CDElement element = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLADStopState() {
+        final CDElement element = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLADUnorderedSequence() {
+        final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TMLADUnorderedSequence sequence = new TMLADUnorderedSequence( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( sequence, sequence.getX(), sequence.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElement.getTGConnectingPointAtIndex( 0 ),
+        												sequence.getEnterConnectingPoint(),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent requestBranch1 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestBranch1, requestBranch1.getX(),requestBranch1.getY(), false, true );
+
+        final TGComponent con2 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												sequence.getExitConnectingPoints().get( 0 ),
+        												requestBranch1.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElementBranch1 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch1, stopElementBranch1.getX(), stopElementBranch1.getY(), false, true );
+
+        final TGComponent con3 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestBranch1.getTGConnectingPointAtIndex( 1 ),
+        												stopElementBranch1.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+
+
+        final TGComponent requestBranch2 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestBranch2, requestBranch2.getX(),requestBranch2.getY(), false, true );
+
+        final TGComponent con4 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												sequence.getExitConnectingPoints().get( 1 ),
+        												requestBranch2.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true );
+
+        final TGComponent stopElementBranch2 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch2, stopElementBranch2.getX(), stopElementBranch2.getY(), false, true );
+
+        final TGComponent con5 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestBranch2.getTGConnectingPointAtIndex( 1 ),
+        												stopElementBranch2.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true );
+
+        final TGComponent requestBranch3 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( requestBranch3, requestBranch3.getX(),requestBranch3.getY(), false, true );
+
+        final TGComponent con6 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												sequence.getExitConnectingPoints().get( 2 ),
+        												requestBranch3.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true );
+
+        final TGComponent stopElementBranch3 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch1, stopElementBranch3.getX(), stopElementBranch3.getY(), false, true );
+
+        final TGComponent con7 = new TGConnectorTMLAD( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												requestBranch3.getTGConnectingPointAtIndex( 1 ),
+        												stopElementBranch3.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true );
+        
+        assertTrue( sequence.canBeDisabled() );
+        
+        sequence.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertFalse( sequence.isEnabled() );
+        assertTrue( sequence.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( requestBranch1.isEnabled() );
+        assertTrue( requestBranch1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementBranch1.isEnabled() );
+        assertFalse( stopElementBranch1.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertFalse( requestBranch2.isEnabled() );
+        assertTrue( requestBranch2.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementBranch2.isEnabled() );
+        assertFalse( stopElementBranch2.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+        assertFalse( requestBranch3.isEnabled() );
+        assertTrue( requestBranch3.canBeDisabled() );
+        assertTrue( con6.isEnabled() );
+        assertTrue( con6.canBeDisabled() );
+        assertTrue( stopElementBranch3.isEnabled() );
+        assertFalse( stopElementBranch3.canBeDisabled() );
+        assertTrue( con7.isEnabled() );
+        assertFalse( con7.canBeDisabled() );
+
+        sequence.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( sequence.isEnabled() );
+        assertTrue( sequence.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( requestBranch1.isEnabled() );
+        assertTrue( requestBranch1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementBranch1.isEnabled() );
+        assertFalse( stopElementBranch1.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( requestBranch2.isEnabled() );
+        assertTrue( requestBranch2.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementBranch2.isEnabled() );
+        assertFalse( stopElementBranch2.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+        assertTrue( requestBranch3.isEnabled() );
+        assertTrue( requestBranch3.canBeDisabled() );
+        assertTrue( con6.isEnabled() );
+        assertTrue( con6.canBeDisabled() );
+        assertTrue( stopElementBranch3.isEnabled() );
+        assertFalse( stopElementBranch3.canBeDisabled() );
+        assertTrue( con7.isEnabled() );
+        assertFalse( con7.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLADWaitEvent() {
+        final CDElement element = new TMLADWaitEvent( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+
+	@Test
+    public void testDisableTMLADWriteChannel() {
+        final CDElement element = new TMLADWriteChannel( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        assertFalse( element.isEnabled() );
+
+        element.setEnabled( true );
+        assertTrue( element.isEnabled() );
+    }
+}
diff --git a/ttool/src/test/java/ui/tmlcp/TestTMLCPComponentsDisabling.java b/ttool/src/test/java/ui/tmlcp/TestTMLCPComponentsDisabling.java
new file mode 100644
index 0000000000000000000000000000000000000000..99b3aa7684450b84fd637d2e3c0c0da7cb8abc9e
--- /dev/null
+++ b/ttool/src/test/java/ui/tmlcp/TestTMLCPComponentsDisabling.java
@@ -0,0 +1,737 @@
+package ui.tmlcp;
+
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import java.awt.Point;
+import java.util.Vector;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import ui.AbstractUITest;
+import ui.CDElement;
+import ui.TGComponent;
+import ui.ad.TADForLoop;
+import ui.tmldd.TMLArchiDiagramPanel;
+import ui.tmldd.TMLArchiDiagramToolBar;
+
+public class TestTMLCPComponentsDisabling extends AbstractUITest {
+
+	private TMLArchiDiagramPanel diagramPanel;
+	
+	public TestTMLCPComponentsDisabling() {
+		super();
+	}
+	
+	@Before
+    public void setUp() {
+		final TMLArchiDiagramToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI );
+        diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar );
+    }
+	
+	@Test
+    public void testDisableTGConnectingPointTMLCP() {
+        final CDElement element = new TGConnectingPointTMLCP( null, 0, -5, true, false, 0.5, 0.0 );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+	
+	@Test
+    public void testDisableTGConnectorTMLCP() {
+        final TGComponent startElement = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TGComponent refElement1 = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( refElement1, refElement1.getX(), refElement1.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElement.getTGConnectingPointAtIndex( 0 ),
+        												refElement1.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent refElement2 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( refElement2, refElement2.getX(), refElement2.getY(), false, true );
+        
+        final TGComponent con2 = new TGConnectorTMLCP( 	0, 
+														0,
+														diagramPanel.getMinX(),
+														diagramPanel.getMaxX(),
+														diagramPanel.getMinY(),
+														diagramPanel.getMaxY(),
+														false,
+														null,
+														diagramPanel,
+														refElement1.getTGConnectingPointAtIndex( 1 ),
+														refElement2.getTGConnectingPointAtIndex( 0 ),
+														new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElement = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true );
+        
+        final TGComponent con3 = new TGConnectorTMLCP( 	0, 
+														0,
+														diagramPanel.getMinX(),
+														diagramPanel.getMaxX(),
+														diagramPanel.getMinY(),
+														diagramPanel.getMaxY(),
+														false,
+														null,
+														diagramPanel,
+														refElement2.getTGConnectingPointAtIndex( 1 ),
+														stopElement.getTGConnectingPointAtIndex( 0 ),
+														new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+        
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( con3.canBeDisabled() );
+        
+        con1.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( refElement1.isEnabled() );
+        assertTrue( refElement1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( refElement2.isEnabled() );
+        assertTrue( refElement2.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+        
+        con1.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( refElement1.isEnabled() );
+        assertTrue( refElement1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( refElement2.isEnabled() );
+        assertTrue( refElement2.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        
+        con2.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( refElement1.isEnabled() );
+        assertTrue( refElement1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertFalse( refElement2.isEnabled() );
+        assertTrue( refElement2.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+        
+        con2.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( refElement1.isEnabled() );
+        assertTrue( refElement1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( refElement2.isEnabled() );
+        assertTrue( refElement2.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( stopElement.isEnabled() );
+        assertFalse( stopElement.canBeDisabled() );
+	}
+	
+	@Test
+    public void testDisableTMLADChoice() {
+        final TMLCPChoice element = new TMLCPChoice( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+        
+        element.setGuard( Boolean.TRUE.toString(), 0 );
+        TGComponent guard = element.getInternalTGComponent( 0 );
+        assertTrue( guard.canBeDisabled() );
+        
+        guard.setEnabled( false );
+        assertFalse( guard.isEnabled() );
+
+        guard.setEnabled( true );
+        assertTrue( guard.isEnabled() );
+
+        element.setGuard( null, 0 );
+        guard = element.getInternalTGComponent( 0 );
+        assertFalse( guard.canBeDisabled() );
+
+        element.setGuard( "", 0 );
+        guard = element.getInternalTGComponent( 0 );
+        assertFalse( guard.canBeDisabled() );
+
+        element.setGuard( TMLCPChoice.EMPTY_GUARD_TEXT, 0 );
+        guard = element.getInternalTGComponent( 0 );
+        assertFalse( guard.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLCPFork() {
+        final TGComponent startElement = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TMLCPFork fork = new TMLCPFork( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( fork, fork.getX(), fork.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElement.getTGConnectingPointAtIndex( 0 ),
+        												fork.getEnterConnectingPoint(),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent elementBranch1 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementBranch1, elementBranch1.getX(),elementBranch1.getY(), false, true );
+
+        final TGComponent con2 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												fork.getExitConnectingPoints().get( 0 ),
+        												elementBranch1.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElementBranch1 = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranch1, stopElementBranch1.getX(), stopElementBranch1.getY(), false, true );
+
+        final TGComponent con3 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementBranch1.getTGConnectingPointAtIndex( 1 ),
+        												stopElementBranch1.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+
+
+        final TGComponent elementBranch2 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementBranch2, elementBranch2.getX(), elementBranch2.getY(), false, true );
+
+        final TGComponent con4 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												fork.getExitConnectingPoints().get( 1 ),
+        												elementBranch2.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true );
+
+        final TMLCPJoin elementJoinBranch23 = new TMLCPJoin( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementJoinBranch23, elementJoinBranch23.getX(), elementJoinBranch23.getY(), false, true );
+
+        final TGComponent con5 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementBranch2.getTGConnectingPointAtIndex( 1 ),
+        												elementJoinBranch23.getEnterConnectingPoints().get( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true );
+
+        final TGComponent elementBranch3 = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementBranch3, elementBranch3.getX(),elementBranch3.getY(), false, true );
+
+        final TGComponent con6 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												fork.getExitConnectingPoints().get( 2 ),
+        												elementBranch3.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true );
+
+        final TGComponent con7 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementBranch3.getTGConnectingPointAtIndex( 1 ),
+        												elementJoinBranch23.getEnterConnectingPoints().get( 1 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true );
+
+        final TGComponent stopElementJoin = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementJoin, stopElementJoin.getX(), stopElementJoin.getY(), false, true );
+
+        final TGComponent con8 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementJoinBranch23.getExitConnectingPoint(),
+        												stopElementJoin.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con8, con8.getX(), con8.getY(), false, true );
+        
+        assertTrue( fork.canBeDisabled() );
+        
+        fork.setEnabled( false );
+        
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertFalse( fork.isEnabled() );
+        assertTrue( fork.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( elementBranch1.isEnabled() );
+        assertTrue( elementBranch1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementBranch1.isEnabled() );
+        assertFalse( stopElementBranch1.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertFalse( elementBranch2.isEnabled() );
+        assertTrue( elementBranch2.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( elementJoinBranch23.isEnabled() );
+        assertFalse( elementJoinBranch23.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertTrue( con5.canBeDisabled() );
+        assertFalse( elementBranch3.isEnabled() );
+        assertTrue( elementBranch3.canBeDisabled() );
+        assertTrue( con6.isEnabled() );
+        assertTrue( con6.canBeDisabled() );
+        assertTrue( con7.isEnabled() );
+        assertTrue( con7.canBeDisabled() );
+        assertTrue( stopElementJoin.isEnabled() );
+        assertFalse( stopElementJoin.canBeDisabled() );
+        assertTrue( con8.isEnabled() );
+        assertFalse( con8.canBeDisabled() );
+
+        fork.setEnabled( true );
+
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( fork.isEnabled() );
+        assertTrue( fork.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( elementBranch1.isEnabled() );
+        assertTrue( elementBranch1.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementBranch1.isEnabled() );
+        assertFalse( stopElementBranch1.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( elementBranch2.isEnabled() );
+        assertTrue( elementBranch2.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( elementJoinBranch23.isEnabled() );
+        assertFalse( elementJoinBranch23.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertTrue( con5.canBeDisabled() );
+        assertTrue( elementBranch3.isEnabled() );
+        assertTrue( elementBranch3.canBeDisabled() );
+        assertTrue( con6.isEnabled() );
+        assertTrue( con6.canBeDisabled() );
+        assertTrue( con7.isEnabled() );
+        assertTrue( con7.canBeDisabled() );
+        assertTrue( stopElementJoin.isEnabled() );
+        assertFalse( stopElementJoin.canBeDisabled() );
+        assertTrue( con8.isEnabled() );
+        assertFalse( con8.canBeDisabled() );
+    }
+	
+	@Test
+    public void testDisableTMLCPForLoop() {
+        final TGComponent startElement = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true );
+
+        final TADForLoop forLoop = new TMLCPForLoop( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( forLoop, forLoop.getX(), forLoop.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLCP( 	0,
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElement.getTGConnectingPointAtIndex( 0 ),
+        												forLoop.getEnterLoopConnectingPoint(),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TGComponent elementInLoop = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementInLoop, elementInLoop.getX(),elementInLoop.getY(), false, true );
+
+        final TGComponent con2 = new TGConnectorTMLCP( 	0,
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												forLoop.getInsideLoopConnectingPoint(),
+        												elementInLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent stopElementInLoop = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementInLoop, stopElementInLoop.getX(), stopElementInLoop.getY(), false, true );
+
+        final TGComponent con3 = new TGConnectorTMLCP( 	0,
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementInLoop.getTGConnectingPointAtIndex( 1 ),
+        												stopElementInLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+
+        final TGComponent elementExitLoop = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementExitLoop, elementExitLoop.getX(),elementExitLoop.getY(), false, true );
+
+        final TGComponent con4 = new TGConnectorTMLCP( 	0,
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												forLoop.getExitLoopConnectingPoint(),
+        												elementExitLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true );
+
+        final TGComponent stopElementExitLoop = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementExitLoop, stopElementExitLoop.getX(), stopElementExitLoop.getY(), false, true );
+
+        final TGComponent con5 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementExitLoop.getTGConnectingPointAtIndex( 1 ),
+        												stopElementExitLoop.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true );
+        
+        assertTrue( forLoop.canBeDisabled() );
+        
+        forLoop.setEnabled( false );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertFalse( forLoop.isEnabled() );
+        assertTrue( forLoop.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertFalse( elementInLoop.isEnabled() );
+        assertFalse( elementInLoop.canBeDisabled() );
+        assertFalse( con2.isEnabled() );
+        assertFalse( con2.canBeDisabled() );
+        assertFalse( stopElementInLoop.isEnabled() );
+        assertFalse( stopElementInLoop.canBeDisabled() );
+        assertFalse( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( elementExitLoop.isEnabled() );
+        assertTrue( elementExitLoop.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementExitLoop.isEnabled() );
+        assertFalse( stopElementExitLoop.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+
+        forLoop.setEnabled( true );
+        assertTrue( startElement.isEnabled() );
+        assertFalse( startElement.canBeDisabled() );
+        assertTrue( forLoop.isEnabled() );
+        assertTrue( forLoop.canBeDisabled() );
+        assertTrue( con1.isEnabled() );
+        assertTrue( con1.canBeDisabled() );
+        assertTrue( elementInLoop.isEnabled() );
+        assertTrue( elementInLoop.canBeDisabled() );
+        assertTrue( con2.isEnabled() );
+        assertTrue( con2.canBeDisabled() );
+        assertTrue( stopElementInLoop.isEnabled() );
+        assertFalse( stopElementInLoop.canBeDisabled() );
+        assertTrue( con3.isEnabled() );
+        assertFalse( con3.canBeDisabled() );
+        assertTrue( elementExitLoop.isEnabled() );
+        assertTrue( elementExitLoop.canBeDisabled() );
+        assertTrue( con4.isEnabled() );
+        assertTrue( con4.canBeDisabled() );
+        assertTrue( stopElementExitLoop.isEnabled() );
+        assertFalse( stopElementExitLoop.canBeDisabled() );
+        assertTrue( con5.isEnabled() );
+        assertFalse( con5.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLCPJoin() {
+        final TGComponent startElementBranch1 = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElementBranch1, startElementBranch1.getX(), startElementBranch1.getY(), false, true );
+
+        final TGComponent elementBranch1 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementBranch1, elementBranch1.getX(), elementBranch1.getY(), false, true );
+
+        final TGComponent con1 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElementBranch1.getTGConnectingPointAtIndex( 0 ),
+        												elementBranch1.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true );
+
+        final TMLCPJoin join = new TMLCPJoin( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( join, join.getX(), join.getY(), false, true );
+
+        final TGComponent con2 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementBranch1.getTGConnectingPointAtIndex( 1 ),
+        												join.getEnterConnectingPoints().get( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true );
+
+        final TGComponent startElementBranch2 = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElementBranch2, startElementBranch2.getX(), startElementBranch2.getY(), false, true );
+
+        final TGComponent elementBranch2 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementBranch2, elementBranch2.getX(), elementBranch2.getY(), false, true );
+
+        final TGComponent con3 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElementBranch2.getTGConnectingPointAtIndex( 0 ),
+        												elementBranch2.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true );
+
+        final TGComponent con4 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementBranch2.getTGConnectingPointAtIndex( 1 ),
+        												join.getEnterConnectingPoints().get( 1 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true );
+
+        final TGComponent startElementBranch3 = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( startElementBranch3, startElementBranch3.getX(), startElementBranch3.getY(), false, true );
+
+        final TGComponent elementBranch3 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementBranch3, elementBranch3.getX(), elementBranch3.getY(), false, true );
+
+        final TGComponent con5 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												startElementBranch3.getTGConnectingPointAtIndex( 0 ),
+        												elementBranch3.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true );
+
+        final TGComponent con6 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementBranch3.getTGConnectingPointAtIndex( 1 ),
+        												join.getEnterConnectingPoints().get( 2 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true );
+
+        final TGComponent elementBranchExit = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( elementBranchExit, elementBranchExit.getX(),elementBranchExit.getY(), false, true );
+
+        final TGComponent con7 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												join.getExitConnectingPoint(),
+        												elementBranch3.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true );
+
+        final TGComponent stopElementBranchExit = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        diagramPanel.addComponent( stopElementBranchExit, stopElementBranchExit.getX(), stopElementBranchExit.getY(), false, true );
+
+        final TGComponent con8 = new TGConnectorTMLCP( 	0, 
+        												0,
+        												diagramPanel.getMinX(),
+        												diagramPanel.getMaxX(),
+        												diagramPanel.getMinY(),
+        												diagramPanel.getMaxY(),
+        												false,
+        												null,
+        												diagramPanel,
+        												elementBranch3.getTGConnectingPointAtIndex( 1 ),
+        												stopElementBranchExit.getTGConnectingPointAtIndex( 0 ),
+        												new Vector<Point>() );
+        diagramPanel.addComponent( con8, con8.getX(), con8.getY(), false, true );
+        
+        assertTrue( join.isEnabled() );
+        assertFalse( join.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLCPRefAD() {
+        final CDElement element = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        
+        assertFalse( element.isEnabled() );
+        assertTrue( element.canBeDisabled() );
+
+        element.setEnabled( true );
+
+        assertTrue( element.isEnabled() );
+        assertTrue( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLCPRefSD() {
+        final CDElement element = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertTrue( element.canBeDisabled() );
+        
+        element.setEnabled( false );
+        
+        assertFalse( element.isEnabled() );
+        assertTrue( element.canBeDisabled() );
+
+        element.setEnabled( true );
+
+        assertTrue( element.isEnabled() );
+        assertTrue( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLCPStartState() {
+        final CDElement element = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+
+	@Test
+    public void testDisableTMLCPStopState() {
+        final CDElement element = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel );
+        
+        assertFalse( element.canBeDisabled() );
+    }
+}
diff --git a/ttool/src/test/java/ui/tmldd/TestTDiagramPanel.java b/ttool/src/test/java/ui/tmldd/TestTDiagramPanel.java
deleted file mode 100644
index b30d3df2da78d23ca66077a839a2740db42f8f58..0000000000000000000000000000000000000000
--- a/ttool/src/test/java/ui/tmldd/TestTDiagramPanel.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package ui.tmldd;
-
-import static org.junit.Assert.assertTrue;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import ui.AbstractUITest;
-
-public class TestTDiagramPanel extends AbstractUITest {
-//	static MainGUI mgui;
-	static TMLArchiDiagramToolBar tb;
-	static TMLArchiDiagramPanel tdp;
-	static TMLArchiBUSNode tgc;
-	
-	public TestTDiagramPanel() {
-		super();
-	}
-	
-	@Before
-    public void setUp() throws Exception {
-//		mgui = new MainGUI(false, false, false, false, false, false, false, false, false, false, false, true);
-//		mgui.build();	
-		//PluginManager.pluginManager = new PluginManager();
-		tb = new TMLArchiDiagramToolBar( mainGui );
-        tdp = new TMLArchiDiagramPanel( mainGui, tb);
-        tgc = new TMLArchiBUSNode(500, 500, 0, 1400, 0, 1900, true, null, tdp);
-        tdp.setComponentPointed(null);
-    }
-	
-	@Test
-    public void testMoveUp() {
-       tdp.upComponent();
-       tdp.setComponentPointed(tgc);
-       tdp.upComponent();
-       assertTrue(tgc.getY() == 499);
-       assertTrue(tgc.getX() == 500);
-    }
-	
-	@Test
-    public void testMoveDown() {
-       tdp.downComponent();
-       tdp.setComponentPointed(tgc);
-       tdp.downComponent();
-       assertTrue(tgc.getY() == 501);
-       assertTrue(tgc.getX() == 500);
-    }
-	
-	@Test
-    public void testMoveRight() {
-       tdp.rightComponent();
-       tdp.setComponentPointed(tgc);
-       tdp.rightComponent();
-       assertTrue(tgc.getX() == 501);
-       assertTrue(tgc.getY() == 500);
-    }
-	
-	@Test
-    public void testMoveLeft() {
-       tdp.leftComponent();
-       tdp.setComponentPointed(tgc);
-       tdp.leftComponent();
-       assertTrue(tgc.getX() == 499);
-       assertTrue(tgc.getY() == 500);
-    }
-
-}
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeButton.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeButton.txt
new file mode 100644
index 0000000000000000000000000000000000000000..440a15456e31c53a6e0bb533fbdc5c894acff523
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeButton.txt
@@ -0,0 +1,32 @@
+State machine Id=31
+start ID=117 / top level operator
+ nexts= 0:avatar transition/ ID=123 
+main ID=118 / top level operator
+ nexts= 0:avatar transition/ ID=124 
+state0 ID=119 / top level operator
+ nexts= 
+start ID=120 / in state state0 ID=119
+ nexts= 0:avatar transition/ ID=122 
+action_on_signal:push ID=121 / in state state0 ID=119
+ nexts= 0:avatar transition/ ID=125 
+avatar transition ID=122 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=121 
+weight=1.0
+
+avatar transition ID=123 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:main/ ID=118 
+weight=1.0
+
+avatar transition ID=124 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:state0/ ID=119 
+weight=1.0
+
+avatar transition ID=125 / top level operator
+ value:Transition (delay=(mechanicalDelay, ), ...) weight:1.0
+ nexts= 0:main/ ID=118 
+minDelay=mechanicalDelay maxDelay=mechanicalDelay
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeMachine.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeMachine.txt
new file mode 100644
index 0000000000000000000000000000000000000000..0343a9d3830258fbb599497faf42a27c0e917a7b
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeMachine.txt
@@ -0,0 +1,106 @@
+State machine Id=15
+start ID=71 / top level operator
+ nexts= 0:avatar transition/ ID=116 
+WaitingForFirstCoin ID=72 / top level operator
+ nexts= 0:avatar transition/ ID=115 
+action_on_signal:getCoin ID=73 / top level operator
+ nexts= 0:avatar transition/ ID=109 
+WaitingForSecondCoin ID=74 / top level operator
+ nexts= 0:avatar transition/ ID=106 1:avatar transition/ ID=108 
+ejectState ID=75 / top level operator
+ nexts= 0:avatar transition/ ID=84 
+action_on_signal:ejectCoin ID=76 / top level operator
+ nexts= 0:avatar transition/ ID=103 
+action_on_signal:getCoin ID=77 / top level operator
+ nexts= 0:avatar transition/ ID=107 
+Beverage ID=78 / top level operator
+ nexts= 
+start ID=79 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=102 
+WaitingForSelection ID=80 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=89 1:avatar transition/ ID=95 2:avatar transition/ ID=101 
+action_on_signal:ejectCoin ID=81 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=85 
+action_on_signal:pushCoffeeButton ID=82 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=96 
+action_on_signal:pushTeaButton ID=83 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=90 
+avatar transition ID=84 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=76 
+weight=1.0
+
+avatar transition ID=85 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+nbOfCoins = 0 / 
+avatar transition ID=89 / top level operator
+ value:Transition (delay=(coinDelay, ), ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=81 
+minDelay=coinDelay maxDelay=coinDelay
+weight=1.0
+
+avatar transition ID=90 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+minCompute=teaMinDelay maxcompute=teaMaxDelay
+weight=1.0
+nbOfCoins = 0 / beverageReady () / 
+avatar transition ID=95 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=83 
+weight=1.0
+
+avatar transition ID=96 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+minCompute=coffeeMinDelay maxcompute=coffeeMaxDelay
+weight=1.0
+nbOfCoins = 0 / beverageReady () / 
+avatar transition ID=101 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=82 
+weight=1.0
+
+avatar transition ID=102 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForSelection/ ID=80 
+weight=1.0
+
+avatar transition ID=103 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+nbOfCoins = 0 / 
+avatar transition ID=106 / top level operator
+ value:Transition (delay=(coinDelay, ), ...) weight:1.0
+ nexts= 0:ejectState/ ID=75 
+minDelay=coinDelay maxDelay=coinDelay
+weight=1.0
+
+avatar transition ID=107 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:Beverage/ ID=78 
+weight=1.0
+
+avatar transition ID=108 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=77 
+weight=1.0
+
+avatar transition ID=109 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:WaitingForSecondCoin/ ID=74 
+weight=1.0
+nbOfCoins = nbOfCoins+x / 
+avatar transition ID=115 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=73 
+weight=1.0
+
+avatar transition ID=116 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/TeaButton.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/TeaButton.txt
new file mode 100644
index 0000000000000000000000000000000000000000..b3b4cc674ff5961c08138c4853cdf8217b475794
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/TeaButton.txt
@@ -0,0 +1,23 @@
+State machine Id=35
+start ID=126 / top level operator
+ nexts= 0:avatar transition/ ID=131 
+main ID=127 / top level operator
+ nexts= 0:avatar transition/ ID=130 
+action_on_signal:push ID=128 / top level operator
+ nexts= 0:avatar transition/ ID=129 
+avatar transition ID=129 / top level operator
+ value:Transition (delay=(mechanicalDelay, ), ...) weight:1.0
+ nexts= 0:main/ ID=127 
+minDelay=mechanicalDelay maxDelay=mechanicalDelay
+weight=1.0
+
+avatar transition ID=130 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=128 
+weight=1.0
+
+avatar transition ID=131 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:main/ ID=127 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/Wallet.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/Wallet.txt
new file mode 100644
index 0000000000000000000000000000000000000000..71869bf80797d07a9da4bcddff5493282be9d120
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/Wallet.txt
@@ -0,0 +1,35 @@
+State machine Id=3
+start ID=41 / top level operator
+ nexts= 0:avatar transition/ ID=67 
+main ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=54 1:avatar transition/ ID=64 
+action_on_signal:putCoin ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=55 
+action_on_signal:getCoin ID=44 / top level operator
+ nexts= 0:avatar transition/ ID=45 
+avatar transition ID=45 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=54 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=44 
+weight=1.0
+
+avatar transition ID=55 / top level operator
+ value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0
+ nexts= 0:main/ ID=42 
+minDelay=minUserDelay maxDelay=maxUserDelay
+weight=1.0
+nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=64 / top level operator
+ value:Transition (guard=nbOfCoins>0, ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=43 
+weight=1.0
+guard nbOfCoins>0 / 
+avatar transition ID=67 / top level operator
+ value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+contentOfWallet (nbOfCoins) / 
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Alice_Disable_LibraryFunctionCall.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Alice_Disable_LibraryFunctionCall.txt
new file mode 100644
index 0000000000000000000000000000000000000000..139fb02882526f707c9ffeb45921c8bbaadc36de
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Alice_Disable_LibraryFunctionCall.txt
@@ -0,0 +1,17 @@
+State machine Id=22
+start ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=45 
+state0 ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=48 
+stop ID=44 / top level operator
+ nexts= 
+avatar transition ID=45 / top level operator
+ value:Transition (send__data = secretData, ...) weight:1.0
+ nexts= 0:state0/ ID=43 
+weight=1.0
+send__data = secretData / 
+avatar transition ID=48 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:stop/ ID=44 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompoInOutTransitions.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompoInOutTransitions.txt
new file mode 100644
index 0000000000000000000000000000000000000000..7f5731ab06e2a59c246c89da19e970ffbdde7e2d
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompoInOutTransitions.txt
@@ -0,0 +1,98 @@
+State machine Id=15
+start ID=71 / top level operator
+ nexts= 0:avatar transition/ ID=112 
+WaitingForFirstCoin ID=72 / top level operator
+ nexts= 0:avatar transition/ ID=111 
+action_on_signal:getCoin ID=73 / top level operator
+ nexts= 0:avatar transition/ ID=105 
+WaitingForSecondCoin ID=74 / top level operator
+ nexts= 0:avatar transition/ ID=102 1:avatar transition/ ID=104 
+ejectState ID=75 / top level operator
+ nexts= 0:avatar transition/ ID=83 
+action_on_signal:ejectCoin ID=76 / top level operator
+ nexts= 0:avatar transition/ ID=99 
+action_on_signal:getCoin ID=77 / top level operator
+ nexts= 0:avatar transition/ ID=103 
+Beverage ID=78 / top level operator
+ nexts= 
+start ID=79 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=98 
+WaitingForSelection ID=80 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=84 1:avatar transition/ ID=91 2:avatar transition/ ID=97 
+action_on_signal:pushCoffeeButton ID=81 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=92 
+action_on_signal:pushTeaButton ID=82 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=85 
+avatar transition ID=83 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=76 
+weight=1.0
+
+avatar transition ID=84 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+
+avatar transition ID=85 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+minCompute=teaMinDelay maxcompute=teaMaxDelay
+weight=1.0
+nbOfCoins = 0 / beverageReady () / 
+avatar transition ID=91 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=82 
+weight=1.0
+
+avatar transition ID=92 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+minCompute=coffeeMinDelay maxcompute=coffeeMaxDelay
+weight=1.0
+nbOfCoins = 0 / beverageReady () / 
+avatar transition ID=97 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=81 
+weight=1.0
+
+avatar transition ID=98 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForSelection/ ID=80 
+weight=1.0
+
+avatar transition ID=99 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+nbOfCoins = 0 / 
+avatar transition ID=102 / top level operator
+ value:Transition (delay=(coinDelay, ), ...) weight:1.0
+ nexts= 0:ejectState/ ID=75 
+minDelay=coinDelay maxDelay=coinDelay
+weight=1.0
+
+avatar transition ID=103 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:Beverage/ ID=78 
+weight=1.0
+
+avatar transition ID=104 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=77 
+weight=1.0
+
+avatar transition ID=105 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:WaitingForSecondCoin/ ID=74 
+weight=1.0
+nbOfCoins = nbOfCoins+x / 
+avatar transition ID=111 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=73 
+weight=1.0
+
+avatar transition ID=112 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_ComponentBranch.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_ComponentBranch.txt
new file mode 100644
index 0000000000000000000000000000000000000000..027c26caae351a2879f48134b0c22911c35d452e
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_ComponentBranch.txt
@@ -0,0 +1,92 @@
+State machine Id=15
+start ID=71 / top level operator
+ nexts= 0:avatar transition/ ID=112 
+WaitingForFirstCoin ID=72 / top level operator
+ nexts= 0:avatar transition/ ID=106 
+WaitingForSecondCoin_converted_to_dummy_state ID=73 / top level operator
+ nexts= 0:avatar transition/ ID=103 1:avatar transition/ ID=105 
+action_on_signal:ejectCoin_converted_to_dummy_state ID=74 / top level operator
+ nexts= 0:avatar transition/ ID=100 
+action_on_signal:getCoin ID=75 / top level operator
+ nexts= 0:avatar transition/ ID=104 
+Beverage ID=76 / top level operator
+ nexts= 
+start ID=77 / in state Beverage ID=76
+ nexts= 0:avatar transition/ ID=99 
+WaitingForSelection ID=78 / in state Beverage ID=76
+ nexts= 0:avatar transition/ ID=86 1:avatar transition/ ID=92 2:avatar transition/ ID=98 
+action_on_signal:ejectCoin ID=79 / in state Beverage ID=76
+ nexts= 0:avatar transition/ ID=82 
+action_on_signal:pushCoffeeButton ID=80 / in state Beverage ID=76
+ nexts= 0:avatar transition/ ID=93 
+action_on_signal:pushTeaButton ID=81 / in state Beverage ID=76
+ nexts= 0:avatar transition/ ID=87 
+avatar transition ID=82 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+nbOfCoins = 0 / 
+avatar transition ID=86 / top level operator
+ value:Transition (delay=(coinDelay, ), ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=79 
+minDelay=coinDelay maxDelay=coinDelay
+weight=1.0
+
+avatar transition ID=87 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+minCompute=teaMinDelay maxcompute=teaMaxDelay
+weight=1.0
+nbOfCoins = 0 / beverageReady () / 
+avatar transition ID=92 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=81 
+weight=1.0
+
+avatar transition ID=93 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+minCompute=coffeeMinDelay maxcompute=coffeeMaxDelay
+weight=1.0
+nbOfCoins = 0 / beverageReady () / 
+avatar transition ID=98 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=80 
+weight=1.0
+
+avatar transition ID=99 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForSelection/ ID=78 
+weight=1.0
+
+avatar transition ID=100 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+nbOfCoins = 0 / 
+avatar transition ID=103 / top level operator
+ value:Transition (delay=(coinDelay, ), ...) weight:1.0
+ nexts= 0:action_on_signal:ejectCoin_converted_to_dummy_state/ ID=74 
+minDelay=coinDelay maxDelay=coinDelay
+weight=1.0
+
+avatar transition ID=104 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:Beverage/ ID=76 
+weight=1.0
+
+avatar transition ID=105 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=75 
+weight=1.0
+
+avatar transition ID=106 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:WaitingForSecondCoin_converted_to_dummy_state/ ID=73 
+weight=1.0
+nbOfCoins = nbOfCoins+x / 
+avatar transition ID=112 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompositeState.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompositeState.txt
new file mode 100644
index 0000000000000000000000000000000000000000..fc34247a55fb7451821ee62a37ff9bf525307348
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompositeState.txt
@@ -0,0 +1,56 @@
+State machine Id=15
+start ID=71 / top level operator
+ nexts= 0:avatar transition/ ID=93 
+WaitingForFirstCoin ID=72 / top level operator
+ nexts= 0:avatar transition/ ID=92 
+action_on_signal:getCoin ID=73 / top level operator
+ nexts= 0:avatar transition/ ID=86 
+WaitingForSecondCoin ID=74 / top level operator
+ nexts= 0:avatar transition/ ID=84 1:avatar transition/ ID=85 
+ejectState ID=75 / top level operator
+ nexts= 0:avatar transition/ ID=78 
+action_on_signal:ejectCoin ID=76 / top level operator
+ nexts= 0:avatar transition/ ID=80 
+action_on_signal:getCoin ID=77 / top level operator
+ nexts= 0:avatar transition/ ID=79 
+avatar transition ID=78 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=76 
+weight=1.0
+
+avatar transition ID=79 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+
+avatar transition ID=80 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+nbOfCoins = 0 / 
+avatar transition ID=84 / top level operator
+ value:Transition (delay=(coinDelay, ), ...) weight:1.0
+ nexts= 0:ejectState/ ID=75 
+minDelay=coinDelay maxDelay=coinDelay
+weight=1.0
+
+avatar transition ID=85 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=77 
+weight=1.0
+
+avatar transition ID=86 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:WaitingForSecondCoin/ ID=74 
+weight=1.0
+nbOfCoins = nbOfCoins+x / 
+avatar transition ID=92 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=73 
+weight=1.0
+
+avatar transition ID=93 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_TransitionInfoComputeFor.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_TransitionInfoComputeFor.txt
new file mode 100644
index 0000000000000000000000000000000000000000..4d3373cbe1e252a15a894dada437ba7c919b262a
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_TransitionInfoComputeFor.txt
@@ -0,0 +1,105 @@
+State machine Id=15
+start ID=71 / top level operator
+ nexts= 0:avatar transition/ ID=112 
+WaitingForFirstCoin ID=72 / top level operator
+ nexts= 0:avatar transition/ ID=111 
+action_on_signal:getCoin ID=73 / top level operator
+ nexts= 0:avatar transition/ ID=105 
+WaitingForSecondCoin ID=74 / top level operator
+ nexts= 0:avatar transition/ ID=102 1:avatar transition/ ID=104 
+ejectState ID=75 / top level operator
+ nexts= 0:avatar transition/ ID=84 
+action_on_signal:ejectCoin ID=76 / top level operator
+ nexts= 0:avatar transition/ ID=99 
+action_on_signal:getCoin ID=77 / top level operator
+ nexts= 0:avatar transition/ ID=103 
+Beverage ID=78 / top level operator
+ nexts= 
+start ID=79 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=98 
+WaitingForSelection ID=80 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=89 1:avatar transition/ ID=95 2:avatar transition/ ID=97 
+action_on_signal:ejectCoin ID=81 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=85 
+action_on_signal:pushCoffeeButton ID=82 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=96 
+action_on_signal:pushTeaButton ID=83 / in state Beverage ID=78
+ nexts= 0:avatar transition/ ID=90 
+avatar transition ID=84 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=76 
+weight=1.0
+
+avatar transition ID=85 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+nbOfCoins = 0 / 
+avatar transition ID=89 / top level operator
+ value:Transition (delay=(coinDelay, ), ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=81 
+minDelay=coinDelay maxDelay=coinDelay
+weight=1.0
+
+avatar transition ID=90 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+minCompute=teaMinDelay maxcompute=teaMaxDelay
+weight=1.0
+nbOfCoins = 0 / beverageReady () / 
+avatar transition ID=95 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=83 
+weight=1.0
+
+avatar transition ID=96 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+
+avatar transition ID=97 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=82 
+weight=1.0
+
+avatar transition ID=98 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForSelection/ ID=80 
+weight=1.0
+
+avatar transition ID=99 / top level operator
+ value:Transition (nbOfCoins = 0, ...) weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+nbOfCoins = 0 / 
+avatar transition ID=102 / top level operator
+ value:Transition (delay=(coinDelay, ), ...) weight:1.0
+ nexts= 0:ejectState/ ID=75 
+minDelay=coinDelay maxDelay=coinDelay
+weight=1.0
+
+avatar transition ID=103 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:Beverage/ ID=78 
+weight=1.0
+
+avatar transition ID=104 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=77 
+weight=1.0
+
+avatar transition ID=105 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:WaitingForSecondCoin/ ID=74 
+weight=1.0
+nbOfCoins = nbOfCoins+x / 
+avatar transition ID=111 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=73 
+weight=1.0
+
+avatar transition ID=112 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForFirstCoin/ ID=72 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ExpireTimer.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ExpireTimer.txt
new file mode 100644
index 0000000000000000000000000000000000000000..8dbb0391aaf11f8b18070144fdc40d2a95fe5a27
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ExpireTimer.txt
@@ -0,0 +1,108 @@
+State machine Id=3
+start ID=35 / top level operator
+ nexts= 0:avatar transition/ ID=63 
+IDLE ID=36 / top level operator
+ nexts= 0:avatar transition/ ID=62 
+action_on_signal:INconreq ID=37 / top level operator
+ nexts= 0:avatar transition/ ID=56 
+SEND ID=38 / top level operator
+ nexts= 0:avatar transition/ ID=55 
+settimer__ATST1 ID=39 / top level operator
+ nexts= 0:avatar transition/ ID=54 
+  timer: ATST1
+action_on_signal:CR ID=40 / top level operator
+ nexts= 0:avatar transition/ ID=61 
+WAIT_FOR_CONF ID=41 / top level operator
+ nexts= 0:avatar transition/ ID=51 1:avatar transition/ ID=60 
+choice__0 ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=50 1:avatar transition/ ID=65 
+action_on_signal:INerror ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=74 
+action_on_signal:DR ID=44 / top level operator
+ nexts= 0:avatar transition/ ID=75 
+ERROR ID=45 / top level operator
+ nexts= 
+action_on_signal:CC ID=46 / top level operator
+ nexts= 0:avatar transition/ ID=53 
+resettimer__ATST1 ID=47 / top level operator
+ nexts= 0:avatar transition/ ID=52 
+  timer: ATST1
+action_on_signal:INconconf ID=48 / top level operator
+ nexts= 0:avatar transition/ ID=64 
+CONNECTED ID=49 / top level operator
+ nexts= 
+avatar transition ID=50 / top level operator
+ value:Transition (guard=not(retransmissionCounter<maxRetransmissions), ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=43 
+weight=1.0
+guard not(retransmissionCounter<maxRetransmissions) / 
+avatar transition ID=51 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:choice__0/ ID=42 
+weight=1.0
+
+avatar transition ID=52 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=48 
+weight=1.0
+
+avatar transition ID=53 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:resettimer__ATST1/ ID=47 
+weight=1.0
+
+avatar transition ID=54 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=40 
+weight=1.0
+
+avatar transition ID=55 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:settimer__ATST1/ ID=39 
+weight=1.0
+
+avatar transition ID=56 / top level operator
+ value:Transition (retransmissionCounter = 0, ...) weight:1.0
+ nexts= 0:SEND/ ID=38 
+weight=1.0
+retransmissionCounter = 0 / 
+avatar transition ID=60 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=46 
+weight=1.0
+
+avatar transition ID=61 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WAIT_FOR_CONF/ ID=41 
+weight=1.0
+
+avatar transition ID=62 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=37 
+weight=1.0
+
+avatar transition ID=63 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:IDLE/ ID=36 
+weight=1.0
+
+avatar transition ID=64 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:CONNECTED/ ID=49 
+weight=1.0
+
+avatar transition ID=65 / top level operator
+ value:Transition (guard=retransmissionCounter<maxRetransmissions, ...) weight:1.0
+ nexts= 0:SEND/ ID=38 
+weight=1.0
+retransmissionCounter = retransmissionCounter+1 / guard retransmissionCounter<maxRetransmissions / 
+avatar transition ID=74 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=44 
+weight=1.0
+
+avatar transition ID=75 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:ERROR/ ID=45 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ResetTimer.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ResetTimer.txt
new file mode 100644
index 0000000000000000000000000000000000000000..2e83968444daaa252bc4247ae1316380da8f6ce1
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ResetTimer.txt
@@ -0,0 +1,108 @@
+State machine Id=3
+start ID=35 / top level operator
+ nexts= 0:avatar transition/ ID=63 
+IDLE ID=36 / top level operator
+ nexts= 0:avatar transition/ ID=62 
+action_on_signal:INconreq ID=37 / top level operator
+ nexts= 0:avatar transition/ ID=56 
+SEND ID=38 / top level operator
+ nexts= 0:avatar transition/ ID=54 
+settimer__ATST1 ID=39 / top level operator
+ nexts= 0:avatar transition/ ID=53 
+  timer: ATST1
+action_on_signal:CR ID=40 / top level operator
+ nexts= 0:avatar transition/ ID=61 
+WAIT_FOR_CONF ID=41 / top level operator
+ nexts= 0:avatar transition/ ID=55 1:avatar transition/ ID=60 
+expiretimer__ATST1 ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=51 
+  timer: ATST1
+choice__0 ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=50 1:avatar transition/ ID=65 
+action_on_signal:INerror ID=44 / top level operator
+ nexts= 0:avatar transition/ ID=74 
+action_on_signal:DR ID=45 / top level operator
+ nexts= 0:avatar transition/ ID=75 
+ERROR ID=46 / top level operator
+ nexts= 
+action_on_signal:CC ID=47 / top level operator
+ nexts= 0:avatar transition/ ID=52 
+action_on_signal:INconconf ID=48 / top level operator
+ nexts= 0:avatar transition/ ID=64 
+CONNECTED ID=49 / top level operator
+ nexts= 
+avatar transition ID=50 / top level operator
+ value:Transition (guard=not(retransmissionCounter<maxRetransmissions), ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=44 
+weight=1.0
+guard not(retransmissionCounter<maxRetransmissions) / 
+avatar transition ID=51 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:choice__0/ ID=43 
+weight=1.0
+
+avatar transition ID=52 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=48 
+weight=1.0
+
+avatar transition ID=53 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=40 
+weight=1.0
+
+avatar transition ID=54 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:settimer__ATST1/ ID=39 
+weight=1.0
+
+avatar transition ID=55 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:expiretimer__ATST1/ ID=42 
+weight=1.0
+
+avatar transition ID=56 / top level operator
+ value:Transition (retransmissionCounter = 0, ...) weight:1.0
+ nexts= 0:SEND/ ID=38 
+weight=1.0
+retransmissionCounter = 0 / 
+avatar transition ID=60 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=47 
+weight=1.0
+
+avatar transition ID=61 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WAIT_FOR_CONF/ ID=41 
+weight=1.0
+
+avatar transition ID=62 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=37 
+weight=1.0
+
+avatar transition ID=63 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:IDLE/ ID=36 
+weight=1.0
+
+avatar transition ID=64 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:CONNECTED/ ID=49 
+weight=1.0
+
+avatar transition ID=65 / top level operator
+ value:Transition (guard=retransmissionCounter<maxRetransmissions, ...) weight:1.0
+ nexts= 0:SEND/ ID=38 
+weight=1.0
+retransmissionCounter = retransmissionCounter+1 / guard retransmissionCounter<maxRetransmissions / 
+avatar transition ID=74 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=45 
+weight=1.0
+
+avatar transition ID=75 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:ERROR/ ID=46 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_SetTimer.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_SetTimer.txt
new file mode 100644
index 0000000000000000000000000000000000000000..28e8d7fc16738e4ce19c864fff3172dc1094402a
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_SetTimer.txt
@@ -0,0 +1,108 @@
+State machine Id=3
+start ID=35 / top level operator
+ nexts= 0:avatar transition/ ID=63 
+IDLE ID=36 / top level operator
+ nexts= 0:avatar transition/ ID=62 
+action_on_signal:INconreq ID=37 / top level operator
+ nexts= 0:avatar transition/ ID=56 
+SEND ID=38 / top level operator
+ nexts= 0:avatar transition/ ID=54 
+action_on_signal:CR ID=39 / top level operator
+ nexts= 0:avatar transition/ ID=61 
+WAIT_FOR_CONF ID=40 / top level operator
+ nexts= 0:avatar transition/ ID=55 1:avatar transition/ ID=60 
+expiretimer__ATST1 ID=41 / top level operator
+ nexts= 0:avatar transition/ ID=51 
+  timer: ATST1
+choice__0 ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=50 1:avatar transition/ ID=65 
+action_on_signal:INerror ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=74 
+action_on_signal:DR ID=44 / top level operator
+ nexts= 0:avatar transition/ ID=75 
+ERROR ID=45 / top level operator
+ nexts= 
+action_on_signal:CC ID=46 / top level operator
+ nexts= 0:avatar transition/ ID=53 
+resettimer__ATST1 ID=47 / top level operator
+ nexts= 0:avatar transition/ ID=52 
+  timer: ATST1
+action_on_signal:INconconf ID=48 / top level operator
+ nexts= 0:avatar transition/ ID=64 
+CONNECTED ID=49 / top level operator
+ nexts= 
+avatar transition ID=50 / top level operator
+ value:Transition (guard=not(retransmissionCounter<maxRetransmissions), ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=43 
+weight=1.0
+guard not(retransmissionCounter<maxRetransmissions) / 
+avatar transition ID=51 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:choice__0/ ID=42 
+weight=1.0
+
+avatar transition ID=52 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=48 
+weight=1.0
+
+avatar transition ID=53 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:resettimer__ATST1/ ID=47 
+weight=1.0
+
+avatar transition ID=54 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=39 
+weight=1.0
+
+avatar transition ID=55 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:expiretimer__ATST1/ ID=41 
+weight=1.0
+
+avatar transition ID=56 / top level operator
+ value:Transition (retransmissionCounter = 0, ...) weight:1.0
+ nexts= 0:SEND/ ID=38 
+weight=1.0
+retransmissionCounter = 0 / 
+avatar transition ID=60 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=46 
+weight=1.0
+
+avatar transition ID=61 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WAIT_FOR_CONF/ ID=40 
+weight=1.0
+
+avatar transition ID=62 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=37 
+weight=1.0
+
+avatar transition ID=63 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:IDLE/ ID=36 
+weight=1.0
+
+avatar transition ID=64 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:CONNECTED/ ID=49 
+weight=1.0
+
+avatar transition ID=65 / top level operator
+ value:Transition (guard=retransmissionCounter<maxRetransmissions, ...) weight:1.0
+ nexts= 0:SEND/ ID=38 
+weight=1.0
+retransmissionCounter = retransmissionCounter+1 / guard retransmissionCounter<maxRetransmissions / 
+avatar transition ID=74 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=44 
+weight=1.0
+
+avatar transition ID=75 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:ERROR/ ID=45 
+weight=1.0
+
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/PageLoader_Disable_Random.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/PageLoader_Disable_Random.txt
new file mode 100644
index 0000000000000000000000000000000000000000..6c8a09190bacd96634bcd5db3478e22607af4342
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/PageLoader_Disable_Random.txt
@@ -0,0 +1,192 @@
+State machine Id=3
+start ID=80 / top level operator
+ nexts= 0:avatar transition/ ID=146 
+WaitingForPageToLoad ID=81 / top level operator
+ nexts= 0:avatar transition/ ID=147 
+action_on_signal:loadPage ID=82 / top level operator
+ nexts= 0:avatar transition/ ID=148 
+getFromMemory ID=83 / top level operator
+ nexts= 0:avatar transition/ ID=166 
+choice__0 ID=84 / top level operator
+ nexts= 0:avatar transition/ ID=132 1:avatar transition/ ID=133 2:avatar transition/ ID=138 3:avatar transition/ ID=167 
+gotItFromMemory ID=85 / top level operator
+ nexts= 0:avatar transition/ ID=172 
+PageReady ID=86 / top level operator
+ nexts= 0:avatar transition/ ID=173 
+action_on_signal:pageReady ID=87 / top level operator
+ nexts= 0:avatar transition/ ID=122 
+choice__1 ID=88 / top level operator
+ nexts= 0:avatar transition/ ID=104 1:avatar transition/ ID=175 
+Prefetching ID=89 / top level operator
+ nexts= 0:avatar transition/ ID=129 
+start ID=90 / in state Prefetching ID=89
+ nexts= 0:avatar transition/ ID=106 
+random ID=91 / in state Prefetching ID=89
+ nexts= 0:avatar transition/ ID=121 
+PagePrefetched ID=92 / in state Prefetching ID=89
+ nexts= 0:avatar transition/ ID=107 
+PutPrefetchInMemory ID=93 / top level operator
+ nexts= 0:avatar transition/ ID=108 
+PutPrefetchInMemoryDone ID=94 / top level operator
+ nexts= 0:avatar transition/ ID=105 
+action_on_signal:loadPage ID=95 / top level operator
+ nexts= 0:avatar transition/ ID=174 
+LoadingPage ID=96 / top level operator
+ nexts= 0:avatar transition/ ID=144 
+start ID=97 / in state LoadingPage ID=96
+ nexts= 0:avatar transition/ ID=149 
+random_converted_to_dummy_state ID=98 / in state LoadingPage ID=96
+ nexts= 0:avatar transition/ ID=150 
+PageLoaded ID=99 / top level operator
+ nexts= 0:avatar transition/ ID=143 
+PutPageInMemory ID=100 / top level operator
+ nexts= 0:avatar transition/ ID=153 
+PutPageInMemoryDone ID=101 / top level operator
+ nexts= 0:avatar transition/ ID=131 
+action_on_signal:loadPage ID=102 / top level operator
+ nexts= 0:avatar transition/ ID=145 
+Interrupted ID=103 / top level operator
+ nexts= 0:avatar transition/ ID=130 
+avatar transition ID=104 / top level operator
+ value:Transition (guard=not((pageid<doc__nbOfPages)and(not(memory__index1 == pageid))and(not(memory__index2 == pageid))and(not(memory__index3 == pageid))), ...) weight:1.0
+ nexts= 0:WaitingForPageToLoad/ ID=81 
+weight=1.0
+guard not((pageid<doc__nbOfPages)and(not(memory__index1 == pageid))and(not(memory__index2 == pageid))and(not(memory__index3 == pageid))) / 
+avatar transition ID=105 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForPageToLoad/ ID=81 
+weight=1.0
+
+avatar transition ID=106 / top level operator
+ value:Transition (delay=(minPageLoadingTime, maxPageLoadingTime), ...) weight:1.0
+ nexts= 0:random/ ID=91 
+minDelay=minPageLoadingTime maxDelay=maxPageLoadingTime
+weight=1.0
+
+avatar transition ID=107 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:PutPrefetchInMemory/ ID=93 
+weight=1.0
+
+avatar transition ID=108 / top level operator
+ value:Transition (memory__index1 = memory__index2, ...) weight:1.0
+ nexts= 0:PutPrefetchInMemoryDone/ ID=94 
+weight=1.0
+memory__index1 = memory__index2 / memory__data1 = memory__data2 / memory__index2 = memory__index3 / memory__data2 = memory__data3 / memory__index3 = pageid / memory__data3 = x / 
+avatar transition ID=121 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:PagePrefetched/ ID=92 
+weight=1.0
+
+avatar transition ID=122 / top level operator
+ value:Transition (pageid = pageid+1, ...) weight:1.0
+ nexts= 0:choice__1/ ID=88 
+weight=1.0
+pageid = pageid+1 / 
+avatar transition ID=129 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=95 
+weight=1.0
+
+avatar transition ID=130 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:getFromMemory/ ID=83 
+weight=1.0
+
+avatar transition ID=131 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:PageReady/ ID=86 
+weight=1.0
+
+avatar transition ID=132 / top level operator
+ value:Transition (guard=((not(pageid == memory__index3))and(not(pageid == memory__index1)))and(not(pageid == memory__index2)), ...) weight:1.0
+ nexts= 0:LoadingPage/ ID=96 
+weight=1.0
+guard ((not(pageid == memory__index3))and(not(pageid == memory__index1)))and(not(pageid == memory__index2)) / 
+avatar transition ID=133 / top level operator
+ value:Transition (guard=pageid == memory__index3, ...) weight:1.0
+ nexts= 0:gotItFromMemory/ ID=85 
+weight=1.0
+page__data = memory__data3 / guard pageid == memory__index3 / 
+avatar transition ID=138 / top level operator
+ value:Transition (guard=pageid == memory__index1, ...) weight:1.0
+ nexts= 0:gotItFromMemory/ ID=85 
+weight=1.0
+page__data = memory__data1 / guard pageid == memory__index1 / 
+avatar transition ID=143 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:PutPageInMemory/ ID=100 
+weight=1.0
+
+avatar transition ID=144 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=102 
+weight=1.0
+
+avatar transition ID=145 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:Interrupted/ ID=103 
+weight=1.0
+
+avatar transition ID=146 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForPageToLoad/ ID=81 
+weight=1.0
+
+avatar transition ID=147 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=82 
+weight=1.0
+
+avatar transition ID=148 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:getFromMemory/ ID=83 
+weight=1.0
+
+avatar transition ID=149 / top level operator
+ value:Transition (delay=(minPageLoadingTime, maxPageLoadingTime), ...) weight:1.0
+ nexts= 0:random_converted_to_dummy_state/ ID=98 
+minDelay=minPageLoadingTime maxDelay=maxPageLoadingTime
+weight=1.0
+
+avatar transition ID=150 / top level operator
+ value:Transition (page__data = x, ...) weight:1.0
+ nexts= 0:PageLoaded/ ID=99 
+weight=1.0
+page__data = x / 
+avatar transition ID=153 / top level operator
+ value:Transition (memory__index1 = memory__index2, ...) weight:1.0
+ nexts= 0:PutPageInMemoryDone/ ID=101 
+weight=1.0
+memory__index1 = memory__index2 / memory__data1 = memory__data2 / memory__index2 = memory__index3 / memory__data2 = memory__data3 / memory__index3 = pageid / memory__data3 = page__data / 
+avatar transition ID=166 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:choice__0/ ID=84 
+weight=1.0
+
+avatar transition ID=167 / top level operator
+ value:Transition (guard=pageid == memory__index2, ...) weight:1.0
+ nexts= 0:gotItFromMemory/ ID=85 
+weight=1.0
+page__data = memory__data2 / guard pageid == memory__index2 / 
+avatar transition ID=172 / top level operator
+ value:Transition (delay=(memoryPageAccessTime, memoryPageAccessTime), ...) weight:1.0
+ nexts= 0:PageReady/ ID=86 
+minDelay=memoryPageAccessTime maxDelay=memoryPageAccessTime
+weight=1.0
+
+avatar transition ID=173 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=87 
+weight=1.0
+
+avatar transition ID=174 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:WaitingForPageToLoad/ ID=81 
+weight=1.0
+
+avatar transition ID=175 / top level operator
+ value:Transition (guard=(pageid<doc__nbOfPages)and(not(memory__index1 == pageid))and(not(memory__index2 == pageid))and(not(memory__index3 == pageid)), ...) weight:1.0
+ nexts= 0:Prefetching/ ID=89 
+weight=1.0
+guard (pageid<doc__nbOfPages)and(not(memory__index1 == pageid))and(not(memory__index2 == pageid))and(not(memory__index3 == pageid)) / 
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_ReceiveSignal.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_ReceiveSignal.txt
new file mode 100644
index 0000000000000000000000000000000000000000..31fcddea18bc70ad1640e43b8217bed020cdc2b0
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_ReceiveSignal.txt
@@ -0,0 +1,28 @@
+State machine Id=3
+start ID=41 / top level operator
+ nexts= 0:avatar transition/ ID=65 
+main ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=44 1:avatar transition/ ID=62 
+action_on_signal:putCoin ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=53 
+avatar transition ID=44 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=53 / top level operator
+ value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0
+ nexts= 0:main/ ID=42 
+minDelay=minUserDelay maxDelay=maxUserDelay
+weight=1.0
+nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=62 / top level operator
+ value:Transition (guard=nbOfCoins>0, ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=43 
+weight=1.0
+guard nbOfCoins>0 / 
+avatar transition ID=65 / top level operator
+ value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+contentOfWallet (nbOfCoins) / 
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_SendSignal.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_SendSignal.txt
new file mode 100644
index 0000000000000000000000000000000000000000..fc9ca86c0c51397dbfe8134fb1479d2252eb0945
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_SendSignal.txt
@@ -0,0 +1,35 @@
+State machine Id=3
+start ID=41 / top level operator
+ nexts= 0:avatar transition/ ID=67 
+main ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=54 1:avatar transition/ ID=64 
+action_on_signal:putCoin_converted_to_dummy_state ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=55 
+action_on_signal:getCoin ID=44 / top level operator
+ nexts= 0:avatar transition/ ID=45 
+avatar transition ID=45 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=54 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=44 
+weight=1.0
+
+avatar transition ID=55 / top level operator
+ value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0
+ nexts= 0:main/ ID=42 
+minDelay=minUserDelay maxDelay=maxUserDelay
+weight=1.0
+nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=64 / top level operator
+ value:Transition (guard=nbOfCoins>0, ...) weight:1.0
+ nexts= 0:action_on_signal:putCoin_converted_to_dummy_state/ ID=43 
+weight=1.0
+guard nbOfCoins>0 / 
+avatar transition ID=67 / top level operator
+ value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+contentOfWallet (nbOfCoins) / 
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_State.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_State.txt
new file mode 100644
index 0000000000000000000000000000000000000000..43c9e450f96ffc68e0c22c3ce72c37298a325492
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_State.txt
@@ -0,0 +1,39 @@
+State machine Id=3
+start ID=41 / top level operator
+ nexts= 0:avatar transition/ ID=69 
+main_converted_to_dummy_state ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=56 1:avatar transition/ ID=66 
+action_on_signal:putCoin ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=57 
+main_state_converted_to_stop ID=44 / top level operator
+ nexts= 
+main_state_converted_to_stop ID=45 / top level operator
+ nexts= 
+action_on_signal:getCoin ID=46 / top level operator
+ nexts= 0:avatar transition/ ID=47 
+avatar transition ID=47 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:main_state_converted_to_stop/ ID=45 
+weight=1.0
+nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=56 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=46 
+weight=1.0
+
+avatar transition ID=57 / top level operator
+ value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0
+ nexts= 0:main_state_converted_to_stop/ ID=44 
+minDelay=minUserDelay maxDelay=maxUserDelay
+weight=1.0
+nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=66 / top level operator
+ value:Transition (guard=nbOfCoins>0, ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=43 
+weight=1.0
+guard nbOfCoins>0 / 
+avatar transition ID=69 / top level operator
+ value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0
+ nexts= 0:main_converted_to_dummy_state/ ID=42 
+weight=1.0
+contentOfWallet (nbOfCoins) / 
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoAfterActions.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoAfterActions.txt
new file mode 100644
index 0000000000000000000000000000000000000000..92880c5e8cbff7174d832eb36c0052106ff32265
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoAfterActions.txt
@@ -0,0 +1,34 @@
+State machine Id=3
+start ID=41 / top level operator
+ nexts= 0:avatar transition/ ID=59 
+main ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=54 1:avatar transition/ ID=56 
+action_on_signal:putCoin ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=55 
+action_on_signal:getCoin ID=44 / top level operator
+ nexts= 0:avatar transition/ ID=45 
+avatar transition ID=45 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=54 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=44 
+weight=1.0
+
+avatar transition ID=55 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+
+avatar transition ID=56 / top level operator
+ value:Transition (guard=nbOfCoins>0, ...) weight:1.0
+ nexts= 0:action_on_signal/ ID=43 
+weight=1.0
+guard nbOfCoins>0 / 
+avatar transition ID=59 / top level operator
+ value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+contentOfWallet (nbOfCoins) / 
diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoGuard.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoGuard.txt
new file mode 100644
index 0000000000000000000000000000000000000000..86b20254ba1de2c832084bfefac3d90976788007
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoGuard.txt
@@ -0,0 +1,35 @@
+State machine Id=3
+start ID=41 / top level operator
+ nexts= 0:avatar transition/ ID=65 
+main ID=42 / top level operator
+ nexts= 0:avatar transition/ ID=54 1:avatar transition/ ID=64 
+action_on_signal:putCoin ID=43 / top level operator
+ nexts= 0:avatar transition/ ID=55 
+action_on_signal:getCoin ID=44 / top level operator
+ nexts= 0:avatar transition/ ID=45 
+avatar transition ID=45 / top level operator
+ value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=54 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=44 
+weight=1.0
+
+avatar transition ID=55 / top level operator
+ value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0
+ nexts= 0:main/ ID=42 
+minDelay=minUserDelay maxDelay=maxUserDelay
+weight=1.0
+nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / 
+avatar transition ID=64 / top level operator
+ value:Empty transition weight:1.0
+ nexts= 0:action_on_signal/ ID=43 
+weight=1.0
+
+avatar transition ID=65 / top level operator
+ value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0
+ nexts= 0:main/ ID=42 
+weight=1.0
+contentOfWallet (nbOfCoins) / 
diff --git a/ttool/src/test/resources/ui/diagram2avatar/input/CoffeeMachine_Avatar.xml b/ttool/src/test/resources/ui/diagram2avatar/input/CoffeeMachine_Avatar.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4b806f16364b010281c0cdd8ea4121daef1f4501
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/input/CoffeeMachine_Avatar.xml
@@ -0,0 +1,5062 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<TURTLEGMODELING version="1.0beta">
+
+<Modeling type="Avatar Requirement" nameTab="AVATAR Requirements" >
+<AvatarRDPanel name="AVATAR RD" minX="10" maxX="1900" minY="10" maxY="900" zoom="1.0" >
+<COMPONENT type="5200" id="44" >
+<cdparam x="661" y="17" />
+<sizeparam width="278" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="59" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="Requirement" value="req00" />
+<TGConnectingPoint num="0" id="1" />
+<TGConnectingPoint num="1" id="2" />
+<TGConnectingPoint num="2" id="3" />
+<TGConnectingPoint num="3" id="4" />
+<TGConnectingPoint num="4" id="5" />
+<TGConnectingPoint num="5" id="6" />
+<TGConnectingPoint num="6" id="7" />
+<TGConnectingPoint num="7" id="8" />
+<TGConnectingPoint num="8" id="9" />
+<TGConnectingPoint num="9" id="10" />
+<TGConnectingPoint num="10" id="11" />
+<TGConnectingPoint num="11" id="12" />
+<TGConnectingPoint num="12" id="13" />
+<TGConnectingPoint num="13" id="14" />
+<TGConnectingPoint num="14" id="15" />
+<TGConnectingPoint num="15" id="16" />
+<TGConnectingPoint num="16" id="17" />
+<TGConnectingPoint num="17" id="18" />
+<TGConnectingPoint num="18" id="19" />
+<TGConnectingPoint num="19" id="20" />
+<TGConnectingPoint num="20" id="21" />
+<TGConnectingPoint num="21" id="22" />
+<TGConnectingPoint num="22" id="23" />
+<TGConnectingPoint num="23" id="24" />
+<TGConnectingPoint num="24" id="25" />
+<TGConnectingPoint num="25" id="26" />
+<TGConnectingPoint num="26" id="27" />
+<TGConnectingPoint num="27" id="28" />
+<TGConnectingPoint num="28" id="29" />
+<TGConnectingPoint num="29" id="30" />
+<TGConnectingPoint num="30" id="31" />
+<TGConnectingPoint num="31" id="32" />
+<TGConnectingPoint num="32" id="33" />
+<TGConnectingPoint num="33" id="34" />
+<TGConnectingPoint num="34" id="35" />
+<TGConnectingPoint num="35" id="36" />
+<TGConnectingPoint num="36" id="37" />
+<TGConnectingPoint num="37" id="38" />
+<TGConnectingPoint num="38" id="39" />
+<TGConnectingPoint num="39" id="40" />
+<TGConnectingPoint num="40" id="41" />
+<TGConnectingPoint num="41" id="42" />
+<TGConnectingPoint num="42" id="43" />
+<extraparam>
+<textline data="A coin not used within 50 seconds " />
+<textline data="must be ejected" />
+<kind data="Functional" />
+<criticality data="Low" />
+<reqType data="0" />
+<id data="0" />
+<satisfied data="false" />
+<verified data="false" />
+<attackTreeNode data="" />
+<violatedAction data="" />
+<referenceElements data="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5200" id="88" >
+<cdparam x="47" y="457" />
+<sizeparam width="301" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="113" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="Requirement" value="Req_Availability" />
+<TGConnectingPoint num="0" id="45" />
+<TGConnectingPoint num="1" id="46" />
+<TGConnectingPoint num="2" id="47" />
+<TGConnectingPoint num="3" id="48" />
+<TGConnectingPoint num="4" id="49" />
+<TGConnectingPoint num="5" id="50" />
+<TGConnectingPoint num="6" id="51" />
+<TGConnectingPoint num="7" id="52" />
+<TGConnectingPoint num="8" id="53" />
+<TGConnectingPoint num="9" id="54" />
+<TGConnectingPoint num="10" id="55" />
+<TGConnectingPoint num="11" id="56" />
+<TGConnectingPoint num="12" id="57" />
+<TGConnectingPoint num="13" id="58" />
+<TGConnectingPoint num="14" id="59" />
+<TGConnectingPoint num="15" id="60" />
+<TGConnectingPoint num="16" id="61" />
+<TGConnectingPoint num="17" id="62" />
+<TGConnectingPoint num="18" id="63" />
+<TGConnectingPoint num="19" id="64" />
+<TGConnectingPoint num="20" id="65" />
+<TGConnectingPoint num="21" id="66" />
+<TGConnectingPoint num="22" id="67" />
+<TGConnectingPoint num="23" id="68" />
+<TGConnectingPoint num="24" id="69" />
+<TGConnectingPoint num="25" id="70" />
+<TGConnectingPoint num="26" id="71" />
+<TGConnectingPoint num="27" id="72" />
+<TGConnectingPoint num="28" id="73" />
+<TGConnectingPoint num="29" id="74" />
+<TGConnectingPoint num="30" id="75" />
+<TGConnectingPoint num="31" id="76" />
+<TGConnectingPoint num="32" id="77" />
+<TGConnectingPoint num="33" id="78" />
+<TGConnectingPoint num="34" id="79" />
+<TGConnectingPoint num="35" id="80" />
+<TGConnectingPoint num="36" id="81" />
+<TGConnectingPoint num="37" id="82" />
+<TGConnectingPoint num="38" id="83" />
+<TGConnectingPoint num="39" id="84" />
+<TGConnectingPoint num="40" id="85" />
+<TGConnectingPoint num="41" id="86" />
+<TGConnectingPoint num="42" id="87" />
+<extraparam>
+<textline data="The availability of the machine shall be" />
+<textline data="no less than 99.99%" />
+<kind data="Functional" />
+<criticality data="Low" />
+<reqType data="0" />
+<id data="0" />
+<satisfied data="false" />
+<verified data="false" />
+<attackTreeNode data="" />
+<violatedAction data="" />
+<referenceElements data="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5200" id="132" >
+<cdparam x="10" y="182" />
+<sizeparam width="150" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="136" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="Requirement" value="Req_CoffeeMachine" />
+<TGConnectingPoint num="0" id="89" />
+<TGConnectingPoint num="1" id="90" />
+<TGConnectingPoint num="2" id="91" />
+<TGConnectingPoint num="3" id="92" />
+<TGConnectingPoint num="4" id="93" />
+<TGConnectingPoint num="5" id="94" />
+<TGConnectingPoint num="6" id="95" />
+<TGConnectingPoint num="7" id="96" />
+<TGConnectingPoint num="8" id="97" />
+<TGConnectingPoint num="9" id="98" />
+<TGConnectingPoint num="10" id="99" />
+<TGConnectingPoint num="11" id="100" />
+<TGConnectingPoint num="12" id="101" />
+<TGConnectingPoint num="13" id="102" />
+<TGConnectingPoint num="14" id="103" />
+<TGConnectingPoint num="15" id="104" />
+<TGConnectingPoint num="16" id="105" />
+<TGConnectingPoint num="17" id="106" />
+<TGConnectingPoint num="18" id="107" />
+<TGConnectingPoint num="19" id="108" />
+<TGConnectingPoint num="20" id="109" />
+<TGConnectingPoint num="21" id="110" />
+<TGConnectingPoint num="22" id="111" />
+<TGConnectingPoint num="23" id="112" />
+<TGConnectingPoint num="24" id="113" />
+<TGConnectingPoint num="25" id="114" />
+<TGConnectingPoint num="26" id="115" />
+<TGConnectingPoint num="27" id="116" />
+<TGConnectingPoint num="28" id="117" />
+<TGConnectingPoint num="29" id="118" />
+<TGConnectingPoint num="30" id="119" />
+<TGConnectingPoint num="31" id="120" />
+<TGConnectingPoint num="32" id="121" />
+<TGConnectingPoint num="33" id="122" />
+<TGConnectingPoint num="34" id="123" />
+<TGConnectingPoint num="35" id="124" />
+<TGConnectingPoint num="36" id="125" />
+<TGConnectingPoint num="37" id="126" />
+<TGConnectingPoint num="38" id="127" />
+<TGConnectingPoint num="39" id="128" />
+<TGConnectingPoint num="40" id="129" />
+<TGConnectingPoint num="41" id="130" />
+<TGConnectingPoint num="42" id="131" />
+<extraparam>
+<textline data="Requirements of the coffee machine" />
+<kind data="Functional" />
+<criticality data="Low" />
+<reqType data="0" />
+<id data="0" />
+<satisfied data="false" />
+<verified data="false" />
+<attackTreeNode data="" />
+<violatedAction data="" />
+<referenceElements data="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5201" id="148" >
+<cdparam x="627" y="376" />
+<sizeparam width="171" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="158" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="AvatarProperty" value="BeverageDeliverProperty" />
+<TGConnectingPoint num="0" id="133" />
+<TGConnectingPoint num="1" id="134" />
+<TGConnectingPoint num="2" id="135" />
+<TGConnectingPoint num="3" id="136" />
+<TGConnectingPoint num="4" id="137" />
+<TGConnectingPoint num="5" id="138" />
+<TGConnectingPoint num="6" id="139" />
+<TGConnectingPoint num="7" id="140" />
+<TGConnectingPoint num="8" id="141" />
+<TGConnectingPoint num="9" id="142" />
+<TGConnectingPoint num="10" id="143" />
+<TGConnectingPoint num="11" id="144" />
+<TGConnectingPoint num="12" id="145" />
+<TGConnectingPoint num="13" id="146" />
+<TGConnectingPoint num="14" id="147" />
+</COMPONENT>
+
+<COMPONENT type="5201" id="164" >
+<cdparam x="580" y="246" />
+<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="128" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="AvatarProperty" value="WalletCoinProperty" />
+<TGConnectingPoint num="0" id="149" />
+<TGConnectingPoint num="1" id="150" />
+<TGConnectingPoint num="2" id="151" />
+<TGConnectingPoint num="3" id="152" />
+<TGConnectingPoint num="4" id="153" />
+<TGConnectingPoint num="5" id="154" />
+<TGConnectingPoint num="6" id="155" />
+<TGConnectingPoint num="7" id="156" />
+<TGConnectingPoint num="8" id="157" />
+<TGConnectingPoint num="9" id="158" />
+<TGConnectingPoint num="10" id="159" />
+<TGConnectingPoint num="11" id="160" />
+<TGConnectingPoint num="12" id="161" />
+<TGConnectingPoint num="13" id="162" />
+<TGConnectingPoint num="14" id="163" />
+</COMPONENT>
+
+<COMPONENT type="5200" id="208" >
+<cdparam x="234" y="147" />
+<sizeparam width="271" height="104" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="Requirement" value="req1" />
+<TGConnectingPoint num="0" id="165" />
+<TGConnectingPoint num="1" id="166" />
+<TGConnectingPoint num="2" id="167" />
+<TGConnectingPoint num="3" id="168" />
+<TGConnectingPoint num="4" id="169" />
+<TGConnectingPoint num="5" id="170" />
+<TGConnectingPoint num="6" id="171" />
+<TGConnectingPoint num="7" id="172" />
+<TGConnectingPoint num="8" id="173" />
+<TGConnectingPoint num="9" id="174" />
+<TGConnectingPoint num="10" id="175" />
+<TGConnectingPoint num="11" id="176" />
+<TGConnectingPoint num="12" id="177" />
+<TGConnectingPoint num="13" id="178" />
+<TGConnectingPoint num="14" id="179" />
+<TGConnectingPoint num="15" id="180" />
+<TGConnectingPoint num="16" id="181" />
+<TGConnectingPoint num="17" id="182" />
+<TGConnectingPoint num="18" id="183" />
+<TGConnectingPoint num="19" id="184" />
+<TGConnectingPoint num="20" id="185" />
+<TGConnectingPoint num="21" id="186" />
+<TGConnectingPoint num="22" id="187" />
+<TGConnectingPoint num="23" id="188" />
+<TGConnectingPoint num="24" id="189" />
+<TGConnectingPoint num="25" id="190" />
+<TGConnectingPoint num="26" id="191" />
+<TGConnectingPoint num="27" id="192" />
+<TGConnectingPoint num="28" id="193" />
+<TGConnectingPoint num="29" id="194" />
+<TGConnectingPoint num="30" id="195" />
+<TGConnectingPoint num="31" id="196" />
+<TGConnectingPoint num="32" id="197" />
+<TGConnectingPoint num="33" id="198" />
+<TGConnectingPoint num="34" id="199" />
+<TGConnectingPoint num="35" id="200" />
+<TGConnectingPoint num="36" id="201" />
+<TGConnectingPoint num="37" id="202" />
+<TGConnectingPoint num="38" id="203" />
+<TGConnectingPoint num="39" id="204" />
+<TGConnectingPoint num="40" id="205" />
+<TGConnectingPoint num="41" id="206" />
+<TGConnectingPoint num="42" id="207" />
+<extraparam>
+<textline data="A wallet must never contain a " />
+<textline data="negative number of coins" />
+<kind data="Functional" />
+<criticality data="Low" />
+<reqType data="0" />
+<id data="0" />
+<satisfied data="false" />
+<verified data="false" />
+<attackTreeNode data="" />
+<violatedAction data="" />
+<referenceElements data="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5201" id="224" >
+<cdparam x="582" y="155" />
+<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="117" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="AvatarProperty" value="OneCoinProperty" />
+<TGConnectingPoint num="0" id="209" />
+<TGConnectingPoint num="1" id="210" />
+<TGConnectingPoint num="2" id="211" />
+<TGConnectingPoint num="3" id="212" />
+<TGConnectingPoint num="4" id="213" />
+<TGConnectingPoint num="5" id="214" />
+<TGConnectingPoint num="6" id="215" />
+<TGConnectingPoint num="7" id="216" />
+<TGConnectingPoint num="8" id="217" />
+<TGConnectingPoint num="9" id="218" />
+<TGConnectingPoint num="10" id="219" />
+<TGConnectingPoint num="11" id="220" />
+<TGConnectingPoint num="12" id="221" />
+<TGConnectingPoint num="13" id="222" />
+<TGConnectingPoint num="14" id="223" />
+</COMPONENT>
+
+<COMPONENT type="5200" id="268" >
+<cdparam x="192" y="16" />
+<sizeparam width="304" height="110" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="Requirement" value="req0" />
+<TGConnectingPoint num="0" id="225" />
+<TGConnectingPoint num="1" id="226" />
+<TGConnectingPoint num="2" id="227" />
+<TGConnectingPoint num="3" id="228" />
+<TGConnectingPoint num="4" id="229" />
+<TGConnectingPoint num="5" id="230" />
+<TGConnectingPoint num="6" id="231" />
+<TGConnectingPoint num="7" id="232" />
+<TGConnectingPoint num="8" id="233" />
+<TGConnectingPoint num="9" id="234" />
+<TGConnectingPoint num="10" id="235" />
+<TGConnectingPoint num="11" id="236" />
+<TGConnectingPoint num="12" id="237" />
+<TGConnectingPoint num="13" id="238" />
+<TGConnectingPoint num="14" id="239" />
+<TGConnectingPoint num="15" id="240" />
+<TGConnectingPoint num="16" id="241" />
+<TGConnectingPoint num="17" id="242" />
+<TGConnectingPoint num="18" id="243" />
+<TGConnectingPoint num="19" id="244" />
+<TGConnectingPoint num="20" id="245" />
+<TGConnectingPoint num="21" id="246" />
+<TGConnectingPoint num="22" id="247" />
+<TGConnectingPoint num="23" id="248" />
+<TGConnectingPoint num="24" id="249" />
+<TGConnectingPoint num="25" id="250" />
+<TGConnectingPoint num="26" id="251" />
+<TGConnectingPoint num="27" id="252" />
+<TGConnectingPoint num="28" id="253" />
+<TGConnectingPoint num="29" id="254" />
+<TGConnectingPoint num="30" id="255" />
+<TGConnectingPoint num="31" id="256" />
+<TGConnectingPoint num="32" id="257" />
+<TGConnectingPoint num="33" id="258" />
+<TGConnectingPoint num="34" id="259" />
+<TGConnectingPoint num="35" id="260" />
+<TGConnectingPoint num="36" id="261" />
+<TGConnectingPoint num="37" id="262" />
+<TGConnectingPoint num="38" id="263" />
+<TGConnectingPoint num="39" id="264" />
+<TGConnectingPoint num="40" id="265" />
+<TGConnectingPoint num="41" id="266" />
+<TGConnectingPoint num="42" id="267" />
+<extraparam>
+<textline data="The coffee machine never has one coin " />
+<textline data=" inserted more than 50 units of time" />
+<kind data="Functional" />
+<criticality data="Low" />
+<reqType data="0" />
+<id data="123" />
+<satisfied data="false" />
+<verified data="false" />
+<attackTreeNode data="" />
+<violatedAction data="" />
+<referenceElements data="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5200" id="312" >
+<cdparam x="206" y="294" />
+<sizeparam width="357" height="135" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="Requirement" value="req2" />
+<TGConnectingPoint num="0" id="269" />
+<TGConnectingPoint num="1" id="270" />
+<TGConnectingPoint num="2" id="271" />
+<TGConnectingPoint num="3" id="272" />
+<TGConnectingPoint num="4" id="273" />
+<TGConnectingPoint num="5" id="274" />
+<TGConnectingPoint num="6" id="275" />
+<TGConnectingPoint num="7" id="276" />
+<TGConnectingPoint num="8" id="277" />
+<TGConnectingPoint num="9" id="278" />
+<TGConnectingPoint num="10" id="279" />
+<TGConnectingPoint num="11" id="280" />
+<TGConnectingPoint num="12" id="281" />
+<TGConnectingPoint num="13" id="282" />
+<TGConnectingPoint num="14" id="283" />
+<TGConnectingPoint num="15" id="284" />
+<TGConnectingPoint num="16" id="285" />
+<TGConnectingPoint num="17" id="286" />
+<TGConnectingPoint num="18" id="287" />
+<TGConnectingPoint num="19" id="288" />
+<TGConnectingPoint num="20" id="289" />
+<TGConnectingPoint num="21" id="290" />
+<TGConnectingPoint num="22" id="291" />
+<TGConnectingPoint num="23" id="292" />
+<TGConnectingPoint num="24" id="293" />
+<TGConnectingPoint num="25" id="294" />
+<TGConnectingPoint num="26" id="295" />
+<TGConnectingPoint num="27" id="296" />
+<TGConnectingPoint num="28" id="297" />
+<TGConnectingPoint num="29" id="298" />
+<TGConnectingPoint num="30" id="299" />
+<TGConnectingPoint num="31" id="300" />
+<TGConnectingPoint num="32" id="301" />
+<TGConnectingPoint num="33" id="302" />
+<TGConnectingPoint num="34" id="303" />
+<TGConnectingPoint num="35" id="304" />
+<TGConnectingPoint num="36" id="305" />
+<TGConnectingPoint num="37" id="306" />
+<TGConnectingPoint num="38" id="307" />
+<TGConnectingPoint num="39" id="308" />
+<TGConnectingPoint num="40" id="309" />
+<TGConnectingPoint num="41" id="310" />
+<TGConnectingPoint num="42" id="311" />
+<extraparam>
+<textline data="When the application starts, if the wallet contains " />
+<textline data="at least 2 coins, then a beverage may be delivered. " />
+<textline data="On the contrary, if the wallet contains less than 2" />
+<textline data="coins, no beverage will be delivered by the" />
+<textline data="machine." />
+<kind data="Functional" />
+<criticality data="Low" />
+<reqType data="0" />
+<id data="0" />
+<satisfied data="false" />
+<verified data="false" />
+<attackTreeNode data="" />
+<violatedAction data="" />
+<referenceElements data="" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="5202" id="314" >
+<cdparam x="659" y="79" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Requirement to Requirement" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="313" />
+<P1  x="661" y="47" id="1" />
+<P2  x="496" y="43" id="228" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5205" id="316" >
+<cdparam x="124" y="457" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Requirement to Requirement" value="&lt;&lt;composition&gt;&gt;" />
+<TGConnectingPoint num="0" id="315" />
+<P1  x="122" y="457" id="51" />
+<P2  x="122" y="302" id="100" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5205" id="318" >
+<cdparam x="244" y="315" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Requirement to Requirement" value="&lt;&lt;composition&gt;&gt;" />
+<TGConnectingPoint num="0" id="317" />
+<P1  x="206" y="327" id="269" />
+<P2  x="160" y="272" id="94" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5205" id="320" >
+<cdparam x="249" y="199" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Requirement to Requirement" value="&lt;&lt;composition&gt;&gt;" />
+<TGConnectingPoint num="0" id="319" />
+<P1  x="234" y="199" id="166" />
+<P2  x="160" y="212" id="92" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5205" id="322" >
+<cdparam x="237" y="98" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Requirement to Requirement" value="&lt;&lt;composition&gt;&gt;" />
+<TGConnectingPoint num="0" id="321" />
+<P1  x="192" y="98" id="227" />
+<P2  x="122" y="182" id="97" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5203" id="324" >
+<cdparam x="538" y="537" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from AvatarProperty to Requirement" value="&lt;&lt;verify&gt;&gt;" />
+<TGConnectingPoint num="0" id="323" />
+<P1  x="627" y="391" id="134" />
+<P2  x="563" y="361" id="285" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5203" id="326" >
+<cdparam x="545" y="329" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from AvatarProperty to Requirement" value="&lt;&lt;verify&gt;&gt;" />
+<TGConnectingPoint num="0" id="325" />
+<P1  x="580" y="261" id="150" />
+<P2  x="505" y="199" id="181" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5203" id="328" >
+<cdparam x="563" y="148" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from AvatarProperty to Requirement" value="&lt;&lt;verify&gt;&gt;" />
+<TGConnectingPoint num="0" id="327" />
+<P1  x="582" y="170" id="210" />
+<P2  x="496" y="98" id="242" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</AvatarRDPanel>
+
+<AvatarPDPanel name="AVATAR PD" minX="10" maxX="1402" minY="10" maxY="902" zoom="1.0000000000000004" >
+<CONNECTOR type="5312" id="330" >
+<cdparam x="582" y="248" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="reg" />
+<TGConnectingPoint num="0" id="329" />
+<P1  x="502" y="258" id="455" />
+<P2  x="502" y="334" id="343" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5310" id="336" >
+<cdparam x="247" y="616" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="" />
+<TGConnectingPoint num="0" id="333" />
+<TGConnectingPoint num="1" id="334" />
+<TGConnectingPoint num="2" id="335" />
+<P1  x="492" y="126" id="418" />
+<P2  x="492" y="209" id="459" />
+<Point x="467" y="147" />
+<Point x="467" y="192" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="331" >
+<father id="336" num="0" />
+<cdparam x="467" y="147" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="332" >
+<father id="336" num="1" />
+<cdparam x="467" y="192" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5311" id="338" >
+<cdparam x="280" y="200" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="" />
+<TGConnectingPoint num="0" id="337" />
+<P1  x="313" y="261" id="381" />
+<P2  x="361" y="261" id="356" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5312" id="340" >
+<cdparam x="473" y="190" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="reg" />
+<TGConnectingPoint num="0" id="339" />
+<P1  x="390" y="286" id="354" />
+<P2  x="390" y="331" id="348" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5311" id="342" >
+<cdparam x="276" y="190" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="" />
+<TGConnectingPoint num="0" id="341" />
+<P1  x="309" y="211" id="368" />
+<P2  x="361" y="211" id="355" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<COMPONENT type="5308" id="347" >
+<cdparam x="446" y="334" />
+<sizeparam width="112" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" />
+<infoparam name="TGComponent" value="WalletCoinProperty" />
+<TGConnectingPoint num="0" id="343" />
+<TGConnectingPoint num="1" id="344" />
+<TGConnectingPoint num="2" id="345" />
+<TGConnectingPoint num="3" id="346" />
+<extraparam>
+<liveness data="0" />
+<not data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5308" id="352" >
+<cdparam x="340" y="331" />
+<sizeparam width="100" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" />
+<infoparam name="TGComponent" value="oneCoinProperty" />
+<TGConnectingPoint num="0" id="348" />
+<TGConnectingPoint num="1" id="349" />
+<TGConnectingPoint num="2" id="350" />
+<TGConnectingPoint num="3" id="351" />
+<extraparam>
+<liveness data="1" />
+<not data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5302" id="365" >
+<cdparam x="361" y="187" />
+<sizeparam width="59" height="99" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" />
+<infoparam name="TGComponent" value="&gt;50" />
+<TGConnectingPoint num="0" id="353" />
+<TGConnectingPoint num="1" id="354" />
+<TGConnectingPoint num="2" id="355" />
+<TGConnectingPoint num="3" id="356" />
+<TGConnectingPoint num="4" id="357" />
+<TGConnectingPoint num="5" id="358" />
+<TGConnectingPoint num="6" id="359" />
+<TGConnectingPoint num="7" id="360" />
+<TGConnectingPoint num="8" id="361" />
+<TGConnectingPoint num="9" id="362" />
+<TGConnectingPoint num="10" id="363" />
+<TGConnectingPoint num="11" id="364" />
+</COMPONENT>
+
+<COMPONENT type="5300" id="416" >
+<cdparam x="150" y="142" />
+<sizeparam width="168" height="154" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" />
+<infoparam name="Block0" value="CoffeeMachine" />
+<TGConnectingPoint num="0" id="392" />
+<TGConnectingPoint num="1" id="393" />
+<TGConnectingPoint num="2" id="394" />
+<TGConnectingPoint num="3" id="395" />
+<TGConnectingPoint num="4" id="396" />
+<TGConnectingPoint num="5" id="397" />
+<TGConnectingPoint num="6" id="398" />
+<TGConnectingPoint num="7" id="399" />
+<TGConnectingPoint num="8" id="400" />
+<TGConnectingPoint num="9" id="401" />
+<TGConnectingPoint num="10" id="402" />
+<TGConnectingPoint num="11" id="403" />
+<TGConnectingPoint num="12" id="404" />
+<TGConnectingPoint num="13" id="405" />
+<TGConnectingPoint num="14" id="406" />
+<TGConnectingPoint num="15" id="407" />
+<TGConnectingPoint num="16" id="408" />
+<TGConnectingPoint num="17" id="409" />
+<TGConnectingPoint num="18" id="410" />
+<TGConnectingPoint num="19" id="411" />
+<TGConnectingPoint num="20" id="412" />
+<TGConnectingPoint num="21" id="413" />
+<TGConnectingPoint num="22" id="414" />
+<TGConnectingPoint num="23" id="415" />
+</COMPONENT>
+<SUBCOMPONENT type="5304" id="378" >
+<father id="416" num="0" />
+<cdparam x="170" y="191" />
+<sizeparam width="139" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="29" minY="0" maxY="114" />
+<infoparam name="TGComponent" value="WaitingForFirstCoin_exit" />
+<TGConnectingPoint num="0" id="366" />
+<TGConnectingPoint num="1" id="367" />
+<TGConnectingPoint num="2" id="368" />
+<TGConnectingPoint num="3" id="369" />
+<TGConnectingPoint num="4" id="370" />
+<TGConnectingPoint num="5" id="371" />
+<TGConnectingPoint num="6" id="372" />
+<TGConnectingPoint num="7" id="373" />
+<TGConnectingPoint num="8" id="374" />
+<TGConnectingPoint num="9" id="375" />
+<TGConnectingPoint num="10" id="376" />
+<TGConnectingPoint num="11" id="377" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5304" id="391" >
+<father id="416" num="1" />
+<cdparam x="165" y="241" />
+<sizeparam width="148" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="20" minY="0" maxY="114" />
+<infoparam name="TGComponent" value="WaitingForFirstCoin_enter" />
+<TGConnectingPoint num="0" id="379" />
+<TGConnectingPoint num="1" id="380" />
+<TGConnectingPoint num="2" id="381" />
+<TGConnectingPoint num="3" id="382" />
+<TGConnectingPoint num="4" id="383" />
+<TGConnectingPoint num="5" id="384" />
+<TGConnectingPoint num="6" id="385" />
+<TGConnectingPoint num="7" id="386" />
+<TGConnectingPoint num="8" id="387" />
+<TGConnectingPoint num="9" id="388" />
+<TGConnectingPoint num="10" id="389" />
+<TGConnectingPoint num="11" id="390" />
+</SUBCOMPONENT>
+
+<COMPONENT type="5300" id="454" >
+<cdparam x="459" y="61" />
+<sizeparam width="150" height="116" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" />
+<infoparam name="Block0" value="Wallet" />
+<TGConnectingPoint num="0" id="430" />
+<TGConnectingPoint num="1" id="431" />
+<TGConnectingPoint num="2" id="432" />
+<TGConnectingPoint num="3" id="433" />
+<TGConnectingPoint num="4" id="434" />
+<TGConnectingPoint num="5" id="435" />
+<TGConnectingPoint num="6" id="436" />
+<TGConnectingPoint num="7" id="437" />
+<TGConnectingPoint num="8" id="438" />
+<TGConnectingPoint num="9" id="439" />
+<TGConnectingPoint num="10" id="440" />
+<TGConnectingPoint num="11" id="441" />
+<TGConnectingPoint num="12" id="442" />
+<TGConnectingPoint num="13" id="443" />
+<TGConnectingPoint num="14" id="444" />
+<TGConnectingPoint num="15" id="445" />
+<TGConnectingPoint num="16" id="446" />
+<TGConnectingPoint num="17" id="447" />
+<TGConnectingPoint num="18" id="448" />
+<TGConnectingPoint num="19" id="449" />
+<TGConnectingPoint num="20" id="450" />
+<TGConnectingPoint num="21" id="451" />
+<TGConnectingPoint num="22" id="452" />
+<TGConnectingPoint num="23" id="453" />
+</COMPONENT>
+<SUBCOMPONENT type="5303" id="429" >
+<father id="454" num="0" />
+<cdparam x="492" y="102" />
+<sizeparam width="100" height="49" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="50" minY="0" maxY="67" />
+<infoparam name="TGComponent" value="nbOfCoins" />
+<TGConnectingPoint num="0" id="417" />
+<TGConnectingPoint num="1" id="418" />
+<TGConnectingPoint num="2" id="419" />
+<TGConnectingPoint num="3" id="420" />
+<TGConnectingPoint num="4" id="421" />
+<TGConnectingPoint num="5" id="422" />
+<TGConnectingPoint num="6" id="423" />
+<TGConnectingPoint num="7" id="424" />
+<TGConnectingPoint num="8" id="425" />
+<TGConnectingPoint num="9" id="426" />
+<TGConnectingPoint num="10" id="427" />
+<TGConnectingPoint num="11" id="428" />
+<extraparam>
+<Toggle value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5306" id="466" >
+<cdparam x="467" y="209" />
+<sizeparam width="100" height="49" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" />
+<infoparam name="TGComponent" value="nbOfCoins &gt;= 0" />
+<TGConnectingPoint num="0" id="455" />
+<TGConnectingPoint num="1" id="456" />
+<TGConnectingPoint num="2" id="457" />
+<TGConnectingPoint num="3" id="458" />
+<TGConnectingPoint num="4" id="459" />
+<TGConnectingPoint num="5" id="460" />
+<TGConnectingPoint num="6" id="461" />
+<TGConnectingPoint num="7" id="462" />
+<TGConnectingPoint num="8" id="463" />
+<TGConnectingPoint num="9" id="464" />
+<TGConnectingPoint num="10" id="465" />
+<extraparam>
+<Toggle value="" />
+</extraparam>
+</COMPONENT>
+
+
+</AvatarPDPanel>
+
+<AvatarPDPanel name="AVATAR PD" minX="10" maxX="1400" minY="10" maxY="1400" zoom="1.0" >
+<CONNECTOR type="5312" id="468" >
+<cdparam x="580" y="547" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="reg" />
+<TGConnectingPoint num="0" id="467" />
+<P1  x="634" y="495" id="643" />
+<P2  x="635" y="562" id="500" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5312" id="470" >
+<cdparam x="506" y="493" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="reg" />
+<TGConnectingPoint num="0" id="469" />
+<P1  x="577" y="471" id="654" />
+<P2  x="654" y="495" id="644" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5312" id="472" >
+<cdparam x="694" y="460" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="reg" />
+<TGConnectingPoint num="0" id="471" />
+<P1  x="694" y="472" id="496" />
+<P2  x="674" y="505" id="645" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5311" id="478" >
+<cdparam x="581" y="133" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="" />
+<TGConnectingPoint num="0" id="475" />
+<TGConnectingPoint num="1" id="476" />
+<TGConnectingPoint num="2" id="477" />
+<P1  x="581" y="154" id="551" />
+<P2  x="546" y="305" id="621" />
+<Point x="518" y="154" />
+<Point x="518" y="305" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="473" >
+<father id="478" num="0" />
+<cdparam x="518" y="154" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="474" >
+<father id="478" num="1" />
+<cdparam x="518" y="305" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5311" id="482" >
+<cdparam x="631" y="143" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="" />
+<TGConnectingPoint num="0" id="480" />
+<TGConnectingPoint num="1" id="481" />
+<P1  x="631" y="164" id="546" />
+<P2  x="667" y="310" id="608" />
+<Point x="631" y="310" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="479" >
+<father id="482" num="0" />
+<cdparam x="631" y="310" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5312" id="484" >
+<cdparam x="695" y="396" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="reg" />
+<TGConnectingPoint num="0" id="483" />
+<P1  x="696" y="385" id="607" />
+<P2  x="694" y="417" id="495" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5310" id="488" >
+<cdparam x="877" y="168" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="" />
+<TGConnectingPoint num="0" id="486" />
+<TGConnectingPoint num="1" id="487" />
+<P1  x="721" y="158" id="557" />
+<P2  x="700" y="204" id="598" />
+<Point x="700" y="158" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="485" >
+<father id="488" num="0" />
+<cdparam x="700" y="158" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5312" id="490" >
+<cdparam x="915" y="307" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="reg" />
+<TGConnectingPoint num="0" id="489" />
+<P1  x="710" y="254" id="594" />
+<P2  x="711" y="285" id="606" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5312" id="492" >
+<cdparam x="993" y="581" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="reg" />
+<TGConnectingPoint num="0" id="491" />
+<P1  x="576" y="385" id="620" />
+<P2  x="577" y="416" id="653" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5311" id="494" >
+<cdparam x="426" y="264" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="" />
+<TGConnectingPoint num="0" id="493" />
+<P1  x="491" y="345" id="507" />
+<P2  x="546" y="345" id="625" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<COMPONENT type="5308" id="499" >
+<cdparam x="644" y="417" />
+<sizeparam width="100" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="TGComponent" value="prop01" />
+<TGConnectingPoint num="0" id="495" />
+<TGConnectingPoint num="1" id="496" />
+<TGConnectingPoint num="2" id="497" />
+<TGConnectingPoint num="3" id="498" />
+<extraparam>
+<liveness data="1" />
+<not data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5308" id="504" >
+<cdparam x="562" y="562" />
+<sizeparam width="146" height="54" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="TGComponent" value="BeverageDeliverProperty" />
+<TGConnectingPoint num="0" id="500" />
+<TGConnectingPoint num="1" id="501" />
+<TGConnectingPoint num="2" id="502" />
+<TGConnectingPoint num="3" id="503" />
+<extraparam>
+<liveness data="0" />
+<not data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5300" id="542" >
+<cdparam x="372" y="227" />
+<sizeparam width="132" height="153" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Block0" value="CoffeeMachine" />
+<TGConnectingPoint num="0" id="518" />
+<TGConnectingPoint num="1" id="519" />
+<TGConnectingPoint num="2" id="520" />
+<TGConnectingPoint num="3" id="521" />
+<TGConnectingPoint num="4" id="522" />
+<TGConnectingPoint num="5" id="523" />
+<TGConnectingPoint num="6" id="524" />
+<TGConnectingPoint num="7" id="525" />
+<TGConnectingPoint num="8" id="526" />
+<TGConnectingPoint num="9" id="527" />
+<TGConnectingPoint num="10" id="528" />
+<TGConnectingPoint num="11" id="529" />
+<TGConnectingPoint num="12" id="530" />
+<TGConnectingPoint num="13" id="531" />
+<TGConnectingPoint num="14" id="532" />
+<TGConnectingPoint num="15" id="533" />
+<TGConnectingPoint num="16" id="534" />
+<TGConnectingPoint num="17" id="535" />
+<TGConnectingPoint num="18" id="536" />
+<TGConnectingPoint num="19" id="537" />
+<TGConnectingPoint num="20" id="538" />
+<TGConnectingPoint num="21" id="539" />
+<TGConnectingPoint num="22" id="540" />
+<TGConnectingPoint num="23" id="541" />
+</COMPONENT>
+<SUBCOMPONENT type="5304" id="517" >
+<father id="542" num="0" />
+<cdparam x="391" y="326" />
+<sizeparam width="100" height="39" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="32" minY="0" maxY="114" />
+<infoparam name="TGComponent" value="beverageReady" />
+<TGConnectingPoint num="0" id="505" />
+<TGConnectingPoint num="1" id="506" />
+<TGConnectingPoint num="2" id="507" />
+<TGConnectingPoint num="3" id="508" />
+<TGConnectingPoint num="4" id="509" />
+<TGConnectingPoint num="5" id="510" />
+<TGConnectingPoint num="6" id="511" />
+<TGConnectingPoint num="7" id="512" />
+<TGConnectingPoint num="8" id="513" />
+<TGConnectingPoint num="9" id="514" />
+<TGConnectingPoint num="10" id="515" />
+<TGConnectingPoint num="11" id="516" />
+</SUBCOMPONENT>
+
+<COMPONENT type="5300" id="593" >
+<cdparam x="563" y="78" />
+<sizeparam width="268" height="115" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Block0" value="Wallet" />
+<TGConnectingPoint num="0" id="569" />
+<TGConnectingPoint num="1" id="570" />
+<TGConnectingPoint num="2" id="571" />
+<TGConnectingPoint num="3" id="572" />
+<TGConnectingPoint num="4" id="573" />
+<TGConnectingPoint num="5" id="574" />
+<TGConnectingPoint num="6" id="575" />
+<TGConnectingPoint num="7" id="576" />
+<TGConnectingPoint num="8" id="577" />
+<TGConnectingPoint num="9" id="578" />
+<TGConnectingPoint num="10" id="579" />
+<TGConnectingPoint num="11" id="580" />
+<TGConnectingPoint num="12" id="581" />
+<TGConnectingPoint num="13" id="582" />
+<TGConnectingPoint num="14" id="583" />
+<TGConnectingPoint num="15" id="584" />
+<TGConnectingPoint num="16" id="585" />
+<TGConnectingPoint num="17" id="586" />
+<TGConnectingPoint num="18" id="587" />
+<TGConnectingPoint num="19" id="588" />
+<TGConnectingPoint num="20" id="589" />
+<TGConnectingPoint num="21" id="590" />
+<TGConnectingPoint num="22" id="591" />
+<TGConnectingPoint num="23" id="592" />
+</COMPONENT>
+<SUBCOMPONENT type="5304" id="555" >
+<father id="593" num="0" />
+<cdparam x="581" y="125" />
+<sizeparam width="100" height="39" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="168" minY="0" maxY="76" />
+<infoparam name="TGComponent" value="Start" />
+<TGConnectingPoint num="0" id="543" />
+<TGConnectingPoint num="1" id="544" />
+<TGConnectingPoint num="2" id="545" />
+<TGConnectingPoint num="3" id="546" />
+<TGConnectingPoint num="4" id="547" />
+<TGConnectingPoint num="5" id="548" />
+<TGConnectingPoint num="6" id="549" />
+<TGConnectingPoint num="7" id="550" />
+<TGConnectingPoint num="8" id="551" />
+<TGConnectingPoint num="9" id="552" />
+<TGConnectingPoint num="10" id="553" />
+<TGConnectingPoint num="11" id="554" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5303" id="568" >
+<father id="593" num="1" />
+<cdparam x="721" y="133" />
+<sizeparam width="100" height="50" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="168" minY="0" maxY="65" />
+<infoparam name="TGComponent" value="nbOfCoins" />
+<TGConnectingPoint num="0" id="556" />
+<TGConnectingPoint num="1" id="557" />
+<TGConnectingPoint num="2" id="558" />
+<TGConnectingPoint num="3" id="559" />
+<TGConnectingPoint num="4" id="560" />
+<TGConnectingPoint num="5" id="561" />
+<TGConnectingPoint num="6" id="562" />
+<TGConnectingPoint num="7" id="563" />
+<TGConnectingPoint num="8" id="564" />
+<TGConnectingPoint num="9" id="565" />
+<TGConnectingPoint num="10" id="566" />
+<TGConnectingPoint num="11" id="567" />
+<extraparam>
+<Toggle value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5306" id="605" >
+<cdparam x="675" y="204" />
+<sizeparam width="100" height="50" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="TGComponent" value="nbOfCoins &gt; 1" />
+<TGConnectingPoint num="0" id="594" />
+<TGConnectingPoint num="1" id="595" />
+<TGConnectingPoint num="2" id="596" />
+<TGConnectingPoint num="3" id="597" />
+<TGConnectingPoint num="4" id="598" />
+<TGConnectingPoint num="5" id="599" />
+<TGConnectingPoint num="6" id="600" />
+<TGConnectingPoint num="7" id="601" />
+<TGConnectingPoint num="8" id="602" />
+<TGConnectingPoint num="9" id="603" />
+<TGConnectingPoint num="10" id="604" />
+<extraparam>
+<Toggle value="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5302" id="618" >
+<cdparam x="667" y="285" />
+<sizeparam width="59" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="TGComponent" value="=0" />
+<TGConnectingPoint num="0" id="606" />
+<TGConnectingPoint num="1" id="607" />
+<TGConnectingPoint num="2" id="608" />
+<TGConnectingPoint num="3" id="609" />
+<TGConnectingPoint num="4" id="610" />
+<TGConnectingPoint num="5" id="611" />
+<TGConnectingPoint num="6" id="612" />
+<TGConnectingPoint num="7" id="613" />
+<TGConnectingPoint num="8" id="614" />
+<TGConnectingPoint num="9" id="615" />
+<TGConnectingPoint num="10" id="616" />
+<TGConnectingPoint num="11" id="617" />
+</COMPONENT>
+
+<COMPONENT type="5301" id="639" >
+<cdparam x="546" y="285" />
+<sizeparam width="60" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="TGComponent" value="&lt;&lt;LS&gt;&gt;" />
+<TGConnectingPoint num="0" id="619" />
+<TGConnectingPoint num="1" id="620" />
+<TGConnectingPoint num="2" id="621" />
+<TGConnectingPoint num="3" id="622" />
+<TGConnectingPoint num="4" id="623" />
+<TGConnectingPoint num="5" id="624" />
+<TGConnectingPoint num="6" id="625" />
+<TGConnectingPoint num="7" id="626" />
+<TGConnectingPoint num="8" id="627" />
+<TGConnectingPoint num="9" id="628" />
+<TGConnectingPoint num="10" id="629" />
+<TGConnectingPoint num="11" id="630" />
+<TGConnectingPoint num="12" id="631" />
+<TGConnectingPoint num="13" id="632" />
+<TGConnectingPoint num="14" id="633" />
+<TGConnectingPoint num="15" id="634" />
+<TGConnectingPoint num="16" id="635" />
+<TGConnectingPoint num="17" id="636" />
+<TGConnectingPoint num="18" id="637" />
+<TGConnectingPoint num="19" id="638" />
+</COMPONENT>
+
+<COMPONENT type="5309" id="652" >
+<cdparam x="594" y="495" />
+<sizeparam width="80" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="TGComponent" value="&lt;=&gt;" />
+<TGConnectingPoint num="0" id="640" />
+<TGConnectingPoint num="1" id="641" />
+<TGConnectingPoint num="2" id="642" />
+<TGConnectingPoint num="3" id="643" />
+<TGConnectingPoint num="4" id="644" />
+<TGConnectingPoint num="5" id="645" />
+<TGConnectingPoint num="6" id="646" />
+<TGConnectingPoint num="7" id="647" />
+<TGConnectingPoint num="8" id="648" />
+<TGConnectingPoint num="9" id="649" />
+<TGConnectingPoint num="10" id="650" />
+<TGConnectingPoint num="11" id="651" />
+</COMPONENT>
+
+<COMPONENT type="5308" id="657" >
+<cdparam x="527" y="416" />
+<sizeparam width="100" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="TGComponent" value="prop02" />
+<TGConnectingPoint num="0" id="653" />
+<TGConnectingPoint num="1" id="654" />
+<TGConnectingPoint num="2" id="655" />
+<TGConnectingPoint num="3" id="656" />
+<extraparam>
+<liveness data="1" />
+<not data="false" />
+</extraparam>
+</COMPONENT>
+
+
+</AvatarPDPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="AVATAR Design" nameTab="MainDesign" >
+<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" >
+<MainCode value="void __user_init() {"/>
+<MainCode value="}"/>
+<Optimized value="true" />
+<Validated value="" />
+<Ignored value="" />
+
+<CONNECTOR type="5002" id="659" >
+<cdparam x="321" y="567" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block1 to Block0" value="" />
+<TGConnectingPoint num="0" id="658" />
+<P1  x="559" y="330" id="720" />
+<P2  x="560" y="377" id="753" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<isd value="in pushCoffeeButton()" />
+<oso value="out push()" />
+<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="5002" id="661" >
+<cdparam x="275" y="114" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block0 to Block0" value="" />
+<TGConnectingPoint num="0" id="660" />
+<P1  x="306" y="109" id="675" />
+<P2  x="445" y="108" id="749" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in getCoin(int nbOfCoins)" />
+<osd value="out ejectCoin(int nbOfCoins)" />
+<isd value="in getCoin(int nbOfCoins)" />
+<oso value="out putCoin(int nbOfCoins)" />
+<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="5002" id="663" >
+<cdparam x="623" y="565" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block1 to Block0" value="" />
+<TGConnectingPoint num="0" id="662" />
+<P1  x="789" y="326" id="695" />
+<P2  x="790" y="377" id="754" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<isd value="in pushTeaButton()" />
+<oso value="out push()" />
+<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<COMPONENT type="5000" id="688" >
+<cdparam x="106" y="55" />
+<sizeparam width="200" height="218" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="Wallet" />
+<TGConnectingPoint num="0" id="664" />
+<TGConnectingPoint num="1" id="665" />
+<TGConnectingPoint num="2" id="666" />
+<TGConnectingPoint num="3" id="667" />
+<TGConnectingPoint num="4" id="668" />
+<TGConnectingPoint num="5" id="669" />
+<TGConnectingPoint num="6" id="670" />
+<TGConnectingPoint num="7" id="671" />
+<TGConnectingPoint num="8" id="672" />
+<TGConnectingPoint num="9" id="673" />
+<TGConnectingPoint num="10" id="674" />
+<TGConnectingPoint num="11" id="675" />
+<TGConnectingPoint num="12" id="676" />
+<TGConnectingPoint num="13" id="677" />
+<TGConnectingPoint num="14" id="678" />
+<TGConnectingPoint num="15" id="679" />
+<TGConnectingPoint num="16" id="680" />
+<TGConnectingPoint num="17" id="681" />
+<TGConnectingPoint num="18" id="682" />
+<TGConnectingPoint num="19" id="683" />
+<TGConnectingPoint num="20" id="684" />
+<TGConnectingPoint num="21" id="685" />
+<TGConnectingPoint num="22" id="686" />
+<TGConnectingPoint num="23" id="687" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="nbOfCoins" value="2" type="8" typeOther="" />
+<Attribute access="0" id="x" value="1" type="8" typeOther="" />
+<Attribute access="0" id="minUserDelay" value="50" type="8" typeOther="" />
+<Attribute access="0" id="maxUserDelay" value="70" type="8" typeOther="" />
+<Method value="contentOfWallet(int nbOfCoins)" />
+<Signal value="in getCoin(int nbOfCoins)" attached="false" />
+<Signal value="out putCoin(int nbOfCoins)" attached="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="763" >
+<cdparam x="445" y="19" />
+<sizeparam width="461" height="358" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="CoffeeMachine" />
+<TGConnectingPoint num="0" id="739" />
+<TGConnectingPoint num="1" id="740" />
+<TGConnectingPoint num="2" id="741" />
+<TGConnectingPoint num="3" id="742" />
+<TGConnectingPoint num="4" id="743" />
+<TGConnectingPoint num="5" id="744" />
+<TGConnectingPoint num="6" id="745" />
+<TGConnectingPoint num="7" id="746" />
+<TGConnectingPoint num="8" id="747" />
+<TGConnectingPoint num="9" id="748" />
+<TGConnectingPoint num="10" id="749" />
+<TGConnectingPoint num="11" id="750" />
+<TGConnectingPoint num="12" id="751" />
+<TGConnectingPoint num="13" id="752" />
+<TGConnectingPoint num="14" id="753" />
+<TGConnectingPoint num="15" id="754" />
+<TGConnectingPoint num="16" id="755" />
+<TGConnectingPoint num="17" id="756" />
+<TGConnectingPoint num="18" id="757" />
+<TGConnectingPoint num="19" id="758" />
+<TGConnectingPoint num="20" id="759" />
+<TGConnectingPoint num="21" id="760" />
+<TGConnectingPoint num="22" id="761" />
+<TGConnectingPoint num="23" id="762" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="teaMinDelay" value="3" type="8" typeOther="" />
+<Attribute access="0" id="teaMaxDelay" value="8" type="8" typeOther="" />
+<Attribute access="0" id="coffeeMinDelay" value="5" type="8" typeOther="" />
+<Attribute access="0" id="coffeeMaxDelay" value="10" type="8" typeOther="" />
+<Attribute access="0" id="coinDelay" value="50" type="8" typeOther="" />
+<Attribute access="0" id="x" value="0" type="8" typeOther="" />
+<Attribute access="0" id="nbOfCoins" value="0" type="8" typeOther="" />
+<Method value="beverageReady()" />
+<Signal value="in pushCoffeeButton()" attached="false" />
+<Signal value="in pushTeaButton()" attached="false" />
+<Signal value="in getCoin(int nbOfCoins)" attached="false" />
+<Signal value="out ejectCoin(int nbOfCoins)" attached="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="5000" id="713" >
+<father id="763" num="0" />
+<cdparam x="695" y="224" />
+<sizeparam width="189" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="272" minY="0" maxY="256" />
+<infoparam name="Block1" value="TeaButton" />
+<TGConnectingPoint num="0" id="689" />
+<TGConnectingPoint num="1" id="690" />
+<TGConnectingPoint num="2" id="691" />
+<TGConnectingPoint num="3" id="692" />
+<TGConnectingPoint num="4" id="693" />
+<TGConnectingPoint num="5" id="694" />
+<TGConnectingPoint num="6" id="695" />
+<TGConnectingPoint num="7" id="696" />
+<TGConnectingPoint num="8" id="697" />
+<TGConnectingPoint num="9" id="698" />
+<TGConnectingPoint num="10" id="699" />
+<TGConnectingPoint num="11" id="700" />
+<TGConnectingPoint num="12" id="701" />
+<TGConnectingPoint num="13" id="702" />
+<TGConnectingPoint num="14" id="703" />
+<TGConnectingPoint num="15" id="704" />
+<TGConnectingPoint num="16" id="705" />
+<TGConnectingPoint num="17" id="706" />
+<TGConnectingPoint num="18" id="707" />
+<TGConnectingPoint num="19" id="708" />
+<TGConnectingPoint num="20" id="709" />
+<TGConnectingPoint num="21" id="710" />
+<TGConnectingPoint num="22" id="711" />
+<TGConnectingPoint num="23" id="712" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="mechanicalDelay" value="10" type="8" typeOther="" />
+<Signal value="out push()" attached="false" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5000" id="738" >
+<father id="763" num="1" />
+<cdparam x="464" y="228" />
+<sizeparam width="190" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="271" minY="0" maxY="256" />
+<infoparam name="Block1" value="CoffeeButton" />
+<TGConnectingPoint num="0" id="714" />
+<TGConnectingPoint num="1" id="715" />
+<TGConnectingPoint num="2" id="716" />
+<TGConnectingPoint num="3" id="717" />
+<TGConnectingPoint num="4" id="718" />
+<TGConnectingPoint num="5" id="719" />
+<TGConnectingPoint num="6" id="720" />
+<TGConnectingPoint num="7" id="721" />
+<TGConnectingPoint num="8" id="722" />
+<TGConnectingPoint num="9" id="723" />
+<TGConnectingPoint num="10" id="724" />
+<TGConnectingPoint num="11" id="725" />
+<TGConnectingPoint num="12" id="726" />
+<TGConnectingPoint num="13" id="727" />
+<TGConnectingPoint num="14" id="728" />
+<TGConnectingPoint num="15" id="729" />
+<TGConnectingPoint num="16" id="730" />
+<TGConnectingPoint num="17" id="731" />
+<TGConnectingPoint num="18" id="732" />
+<TGConnectingPoint num="19" id="733" />
+<TGConnectingPoint num="20" id="734" />
+<TGConnectingPoint num="21" id="735" />
+<TGConnectingPoint num="22" id="736" />
+<TGConnectingPoint num="23" id="737" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="mechanicalDelay" value="80" type="8" typeOther="" />
+<Signal value="out push()" attached="false" />
+</extraparam>
+</SUBCOMPONENT>
+
+
+</AVATARBlockDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Wallet" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="770" >
+<cdparam x="516" y="264" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="769" />
+<P1  x="485" y="219" id="811" />
+<P2  x="485" y="274" id="822" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="768" >
+<father id="770" num="0" />
+<cdparam x="493" y="251" />
+<sizeparam width="173" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="764" />
+<TGConnectingPoint num="1" id="765" />
+<TGConnectingPoint num="2" id="766" />
+<TGConnectingPoint num="3" id="767" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = nbOfCoins + x" />
+<actions value="contentOfWallet(nbOfCoins)" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="777" >
+<cdparam x="382" y="165" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="776" />
+<P1  x="382" y="165" id="918" />
+<P2  x="485" y="189" id="810" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="775" >
+<father id="777" num="0" />
+<cdparam x="382" y="205" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="771" />
+<TGConnectingPoint num="1" id="772" />
+<TGConnectingPoint num="2" id="773" />
+<TGConnectingPoint num="3" id="774" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="784" >
+<cdparam x="223" y="260" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="783" />
+<P1  x="251" y="231" id="800" />
+<P2  x="252" y="300" id="863" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="782" >
+<father id="784" num="0" />
+<cdparam x="163" y="252" />
+<sizeparam width="221" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="778" />
+<TGConnectingPoint num="1" id="779" />
+<TGConnectingPoint num="2" id="780" />
+<TGConnectingPoint num="3" id="781" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="minUserDelay" />
+<afterMax value="maxUserDelay" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = nbOfCoins - x" />
+<actions value="contentOfWallet(nbOfCoins)" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="791" >
+<cdparam x="357" y="165" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="790" />
+<P1  x="357" y="165" id="917" />
+<P2  x="251" y="201" id="799" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="789" >
+<father id="791" num="0" />
+<cdparam x="220" y="174" />
+<sizeparam width="99" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="785" />
+<TGConnectingPoint num="1" id="786" />
+<TGConnectingPoint num="2" id="787" />
+<TGConnectingPoint num="3" id="788" />
+<extraparam>
+<guard value="[nbOfCoins &gt; 0]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="798" >
+<cdparam x="369" y="115" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="797" />
+<P1  x="370" y="64" id="944" />
+<P2  x="370" y="135" id="904" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="796" >
+<father id="798" num="0" />
+<cdparam x="376" y="105" />
+<sizeparam width="173" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="792" />
+<TGConnectingPoint num="1" id="793" />
+<TGConnectingPoint num="2" id="794" />
+<TGConnectingPoint num="3" id="795" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="contentOfWallet(nbOfCoins)" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="809" >
+<cdparam x="214" y="206" />
+<sizeparam width="74" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="putCoin(x)" />
+<TGConnectingPoint num="0" id="799" />
+<TGConnectingPoint num="1" id="800" />
+<TGConnectingPoint num="2" id="801" />
+<TGConnectingPoint num="3" id="802" />
+<TGConnectingPoint num="4" id="803" />
+<TGConnectingPoint num="5" id="804" />
+<TGConnectingPoint num="6" id="805" />
+<TGConnectingPoint num="7" id="806" />
+<TGConnectingPoint num="8" id="807" />
+<TGConnectingPoint num="9" id="808" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="820" >
+<cdparam x="444" y="194" />
+<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="getCoin(x)" />
+<TGConnectingPoint num="0" id="810" />
+<TGConnectingPoint num="1" id="811" />
+<TGConnectingPoint num="2" id="812" />
+<TGConnectingPoint num="3" id="813" />
+<TGConnectingPoint num="4" id="814" />
+<TGConnectingPoint num="5" id="815" />
+<TGConnectingPoint num="6" id="816" />
+<TGConnectingPoint num="7" id="817" />
+<TGConnectingPoint num="8" id="818" />
+<TGConnectingPoint num="9" id="819" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="861" >
+<cdparam x="460" y="274" />
+<sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="821" />
+<TGConnectingPoint num="1" id="822" />
+<TGConnectingPoint num="2" id="823" />
+<TGConnectingPoint num="3" id="824" />
+<TGConnectingPoint num="4" id="825" />
+<TGConnectingPoint num="5" id="826" />
+<TGConnectingPoint num="6" id="827" />
+<TGConnectingPoint num="7" id="828" />
+<TGConnectingPoint num="8" id="829" />
+<TGConnectingPoint num="9" id="830" />
+<TGConnectingPoint num="10" id="831" />
+<TGConnectingPoint num="11" id="832" />
+<TGConnectingPoint num="12" id="833" />
+<TGConnectingPoint num="13" id="834" />
+<TGConnectingPoint num="14" id="835" />
+<TGConnectingPoint num="15" id="836" />
+<TGConnectingPoint num="16" id="837" />
+<TGConnectingPoint num="17" id="838" />
+<TGConnectingPoint num="18" id="839" />
+<TGConnectingPoint num="19" id="840" />
+<TGConnectingPoint num="20" id="841" />
+<TGConnectingPoint num="21" id="842" />
+<TGConnectingPoint num="22" id="843" />
+<TGConnectingPoint num="23" id="844" />
+<TGConnectingPoint num="24" id="845" />
+<TGConnectingPoint num="25" id="846" />
+<TGConnectingPoint num="26" id="847" />
+<TGConnectingPoint num="27" id="848" />
+<TGConnectingPoint num="28" id="849" />
+<TGConnectingPoint num="29" id="850" />
+<TGConnectingPoint num="30" id="851" />
+<TGConnectingPoint num="31" id="852" />
+<TGConnectingPoint num="32" id="853" />
+<TGConnectingPoint num="33" id="854" />
+<TGConnectingPoint num="34" id="855" />
+<TGConnectingPoint num="35" id="856" />
+<TGConnectingPoint num="36" id="857" />
+<TGConnectingPoint num="37" id="858" />
+<TGConnectingPoint num="38" id="859" />
+<TGConnectingPoint num="39" id="860" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="902" >
+<cdparam x="227" y="300" />
+<sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="862" />
+<TGConnectingPoint num="1" id="863" />
+<TGConnectingPoint num="2" id="864" />
+<TGConnectingPoint num="3" id="865" />
+<TGConnectingPoint num="4" id="866" />
+<TGConnectingPoint num="5" id="867" />
+<TGConnectingPoint num="6" id="868" />
+<TGConnectingPoint num="7" id="869" />
+<TGConnectingPoint num="8" id="870" />
+<TGConnectingPoint num="9" id="871" />
+<TGConnectingPoint num="10" id="872" />
+<TGConnectingPoint num="11" id="873" />
+<TGConnectingPoint num="12" id="874" />
+<TGConnectingPoint num="13" id="875" />
+<TGConnectingPoint num="14" id="876" />
+<TGConnectingPoint num="15" id="877" />
+<TGConnectingPoint num="16" id="878" />
+<TGConnectingPoint num="17" id="879" />
+<TGConnectingPoint num="18" id="880" />
+<TGConnectingPoint num="19" id="881" />
+<TGConnectingPoint num="20" id="882" />
+<TGConnectingPoint num="21" id="883" />
+<TGConnectingPoint num="22" id="884" />
+<TGConnectingPoint num="23" id="885" />
+<TGConnectingPoint num="24" id="886" />
+<TGConnectingPoint num="25" id="887" />
+<TGConnectingPoint num="26" id="888" />
+<TGConnectingPoint num="27" id="889" />
+<TGConnectingPoint num="28" id="890" />
+<TGConnectingPoint num="29" id="891" />
+<TGConnectingPoint num="30" id="892" />
+<TGConnectingPoint num="31" id="893" />
+<TGConnectingPoint num="32" id="894" />
+<TGConnectingPoint num="33" id="895" />
+<TGConnectingPoint num="34" id="896" />
+<TGConnectingPoint num="35" id="897" />
+<TGConnectingPoint num="36" id="898" />
+<TGConnectingPoint num="37" id="899" />
+<TGConnectingPoint num="38" id="900" />
+<TGConnectingPoint num="39" id="901" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="943" >
+<cdparam x="345" y="135" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="903" />
+<TGConnectingPoint num="1" id="904" />
+<TGConnectingPoint num="2" id="905" />
+<TGConnectingPoint num="3" id="906" />
+<TGConnectingPoint num="4" id="907" />
+<TGConnectingPoint num="5" id="908" />
+<TGConnectingPoint num="6" id="909" />
+<TGConnectingPoint num="7" id="910" />
+<TGConnectingPoint num="8" id="911" />
+<TGConnectingPoint num="9" id="912" />
+<TGConnectingPoint num="10" id="913" />
+<TGConnectingPoint num="11" id="914" />
+<TGConnectingPoint num="12" id="915" />
+<TGConnectingPoint num="13" id="916" />
+<TGConnectingPoint num="14" id="917" />
+<TGConnectingPoint num="15" id="918" />
+<TGConnectingPoint num="16" id="919" />
+<TGConnectingPoint num="17" id="920" />
+<TGConnectingPoint num="18" id="921" />
+<TGConnectingPoint num="19" id="922" />
+<TGConnectingPoint num="20" id="923" />
+<TGConnectingPoint num="21" id="924" />
+<TGConnectingPoint num="22" id="925" />
+<TGConnectingPoint num="23" id="926" />
+<TGConnectingPoint num="24" id="927" />
+<TGConnectingPoint num="25" id="928" />
+<TGConnectingPoint num="26" id="929" />
+<TGConnectingPoint num="27" id="930" />
+<TGConnectingPoint num="28" id="931" />
+<TGConnectingPoint num="29" id="932" />
+<TGConnectingPoint num="30" id="933" />
+<TGConnectingPoint num="31" id="934" />
+<TGConnectingPoint num="32" id="935" />
+<TGConnectingPoint num="33" id="936" />
+<TGConnectingPoint num="34" id="937" />
+<TGConnectingPoint num="35" id="938" />
+<TGConnectingPoint num="36" id="939" />
+<TGConnectingPoint num="37" id="940" />
+<TGConnectingPoint num="38" id="941" />
+<TGConnectingPoint num="39" id="942" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="945" >
+<cdparam x="363" y="44" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="944" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="CoffeeMachine" minX="10" maxX="1400" minY="10" maxY="1400" >
+<CONNECTOR type="5102" id="952" >
+<cdparam x="691" y="288" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="951" />
+<P1  x="699" y="289" id="1090" />
+<P2  x="699" y="316" id="1062" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="950" >
+<father id="952" num="0" />
+<cdparam x="691" y="328" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="946" />
+<TGConnectingPoint num="1" id="947" />
+<TGConnectingPoint num="2" id="948" />
+<TGConnectingPoint num="3" id="949" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="959" >
+<cdparam x="481" y="501" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to stop state" value="null" />
+<TGConnectingPoint num="0" id="958" />
+<P1  x="437" y="525" id="1292" />
+<P2  x="323" y="748" id="1218" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="957" >
+<father id="959" num="0" />
+<cdparam x="420" y="552" />
+<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="953" />
+<TGConnectingPoint num="1" id="954" />
+<TGConnectingPoint num="2" id="955" />
+<TGConnectingPoint num="3" id="956" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = 0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="966" >
+<cdparam x="555" y="559" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="965" />
+<P1  x="321" y="455" id="1319" />
+<P2  x="437" y="495" id="1291" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="964" >
+<father id="966" num="0" />
+<cdparam x="395" y="448" />
+<sizeparam width="104" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="960" />
+<TGConnectingPoint num="1" id="961" />
+<TGConnectingPoint num="2" id="962" />
+<TGConnectingPoint num="3" id="963" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="coinDelay" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="973" >
+<cdparam x="355" y="545" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to stop state" value="null" />
+<TGConnectingPoint num="0" id="972" />
+<P1  x="293" y="552" id="1357" />
+<P2  x="289" y="748" id="1210" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="971" >
+<father id="973" num="0" />
+<cdparam x="284" y="594" />
+<sizeparam width="248" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="967" />
+<TGConnectingPoint num="1" id="968" />
+<TGConnectingPoint num="2" id="969" />
+<TGConnectingPoint num="3" id="970" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="teaMinDelay" />
+<computeMax value="teaMaxDelay" />
+<actions value="nbOfCoins = 0" />
+<actions value="beverageReady()" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="980" >
+<cdparam x="295" y="465" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="979" />
+<P1  x="288" y="475" id="1330" />
+<P2  x="293" y="522" id="1356" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="978" >
+<father id="980" num="0" />
+<cdparam x="295" y="505" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="974" />
+<TGConnectingPoint num="1" id="975" />
+<TGConnectingPoint num="2" id="976" />
+<TGConnectingPoint num="3" id="977" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="987" >
+<cdparam x="148" y="549" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to stop state" value="null" />
+<TGConnectingPoint num="0" id="986" />
+<P1  x="121" y="552" id="1303" />
+<P2  x="255" y="748" id="1217" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="985" >
+<father id="987" num="0" />
+<cdparam x="32" y="587" />
+<sizeparam width="284" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="981" />
+<TGConnectingPoint num="1" id="982" />
+<TGConnectingPoint num="2" id="983" />
+<TGConnectingPoint num="3" id="984" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="coffeeMinDelay" />
+<computeMax value="coffeeMaxDelay" />
+<actions value="nbOfCoins = 0" />
+<actions value="beverageReady()" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="994" >
+<cdparam x="229" y="465" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="993" />
+<P1  x="222" y="475" id="1329" />
+<P2  x="121" y="522" id="1302" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="992" >
+<father id="994" num="0" />
+<cdparam x="229" y="505" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="988" />
+<TGConnectingPoint num="1" id="989" />
+<TGConnectingPoint num="2" id="990" />
+<TGConnectingPoint num="3" id="991" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1001" >
+<cdparam x="280" y="420" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="1000" />
+<P1  x="256" y="419" id="1313" />
+<P2  x="255" y="435" id="1316" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="999" >
+<father id="1001" num="0" />
+<cdparam x="280" y="460" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="995" />
+<TGConnectingPoint num="1" id="996" />
+<TGConnectingPoint num="2" id="997" />
+<TGConnectingPoint num="3" id="998" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1008" >
+<cdparam x="667" y="346" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1007" />
+<P1  x="699" y="346" id="1063" />
+<P2  x="699" y="381" id="1251" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1006" >
+<father id="1008" num="0" />
+<cdparam x="707" y="368" />
+<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1002" />
+<TGConnectingPoint num="1" id="1003" />
+<TGConnectingPoint num="2" id="1004" />
+<TGConnectingPoint num="3" id="1005" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = 0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1015" >
+<cdparam x="348" y="228" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1014" />
+<P1  x="388" y="208" id="1129" />
+<P2  x="649" y="264" id="1087" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1013" >
+<father id="1015" num="0" />
+<cdparam x="411" y="206" />
+<sizeparam width="104" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1009" />
+<TGConnectingPoint num="1" id="1010" />
+<TGConnectingPoint num="2" id="1011" />
+<TGConnectingPoint num="3" id="1012" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="coinDelay" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1022" >
+<cdparam x="243" y="319" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1021" />
+<P1  x="277" y="305" id="1074" />
+<P2  x="306" y="370" id="1368" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1020" >
+<father id="1022" num="0" />
+<cdparam x="243" y="359" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1016" />
+<TGConnectingPoint num="1" id="1017" />
+<TGConnectingPoint num="2" id="1018" />
+<TGConnectingPoint num="3" id="1019" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1029" >
+<cdparam x="270" y="224" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1028" />
+<P1  x="270" y="228" id="1139" />
+<P2  x="277" y="275" id="1073" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1027" >
+<father id="1029" num="0" />
+<cdparam x="270" y="264" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1023" />
+<TGConnectingPoint num="1" id="1024" />
+<TGConnectingPoint num="2" id="1025" />
+<TGConnectingPoint num="3" id="1026" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1036" >
+<cdparam x="309" y="160" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1035" />
+<P1  x="306" y="166" id="1052" />
+<P2  x="309" y="188" id="1126" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1034" >
+<father id="1036" num="0" />
+<cdparam x="328" y="178" />
+<sizeparam width="168" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1030" />
+<TGConnectingPoint num="1" id="1031" />
+<TGConnectingPoint num="2" id="1032" />
+<TGConnectingPoint num="3" id="1033" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = nbOfCoins + x" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1043" >
+<cdparam x="303" y="103" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1042" />
+<P1  x="303" y="103" id="1174" />
+<P2  x="306" y="136" id="1051" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1041" >
+<father id="1043" num="0" />
+<cdparam x="303" y="143" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1037" />
+<TGConnectingPoint num="1" id="1038" />
+<TGConnectingPoint num="2" id="1039" />
+<TGConnectingPoint num="3" id="1040" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1050" >
+<cdparam x="303" y="40" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="1049" />
+<P1  x="303" y="40" id="1166" />
+<P2  x="303" y="63" id="1169" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1048" >
+<father id="1050" num="0" />
+<cdparam x="303" y="80" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1044" />
+<TGConnectingPoint num="1" id="1045" />
+<TGConnectingPoint num="2" id="1046" />
+<TGConnectingPoint num="3" id="1047" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5104" id="1061" >
+<cdparam x="265" y="141" />
+<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="getCoin(x)" />
+<TGConnectingPoint num="0" id="1051" />
+<TGConnectingPoint num="1" id="1052" />
+<TGConnectingPoint num="2" id="1053" />
+<TGConnectingPoint num="3" id="1054" />
+<TGConnectingPoint num="4" id="1055" />
+<TGConnectingPoint num="5" id="1056" />
+<TGConnectingPoint num="6" id="1057" />
+<TGConnectingPoint num="7" id="1058" />
+<TGConnectingPoint num="8" id="1059" />
+<TGConnectingPoint num="9" id="1060" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="1072" >
+<cdparam x="629" y="321" />
+<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" />
+<TGConnectingPoint num="0" id="1062" />
+<TGConnectingPoint num="1" id="1063" />
+<TGConnectingPoint num="2" id="1064" />
+<TGConnectingPoint num="3" id="1065" />
+<TGConnectingPoint num="4" id="1066" />
+<TGConnectingPoint num="5" id="1067" />
+<TGConnectingPoint num="6" id="1068" />
+<TGConnectingPoint num="7" id="1069" />
+<TGConnectingPoint num="8" id="1070" />
+<TGConnectingPoint num="9" id="1071" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="1083" >
+<cdparam x="236" y="280" />
+<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="getCoin(x)" />
+<TGConnectingPoint num="0" id="1073" />
+<TGConnectingPoint num="1" id="1074" />
+<TGConnectingPoint num="2" id="1075" />
+<TGConnectingPoint num="3" id="1076" />
+<TGConnectingPoint num="4" id="1077" />
+<TGConnectingPoint num="5" id="1078" />
+<TGConnectingPoint num="6" id="1079" />
+<TGConnectingPoint num="7" id="1080" />
+<TGConnectingPoint num="8" id="1081" />
+<TGConnectingPoint num="9" id="1082" />
+<accessibility />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1124" >
+<cdparam x="649" y="239" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="ejectState" />
+<TGConnectingPoint num="0" id="1084" />
+<TGConnectingPoint num="1" id="1085" />
+<TGConnectingPoint num="2" id="1086" />
+<TGConnectingPoint num="3" id="1087" />
+<TGConnectingPoint num="4" id="1088" />
+<TGConnectingPoint num="5" id="1089" />
+<TGConnectingPoint num="6" id="1090" />
+<TGConnectingPoint num="7" id="1091" />
+<TGConnectingPoint num="8" id="1092" />
+<TGConnectingPoint num="9" id="1093" />
+<TGConnectingPoint num="10" id="1094" />
+<TGConnectingPoint num="11" id="1095" />
+<TGConnectingPoint num="12" id="1096" />
+<TGConnectingPoint num="13" id="1097" />
+<TGConnectingPoint num="14" id="1098" />
+<TGConnectingPoint num="15" id="1099" />
+<TGConnectingPoint num="16" id="1100" />
+<TGConnectingPoint num="17" id="1101" />
+<TGConnectingPoint num="18" id="1102" />
+<TGConnectingPoint num="19" id="1103" />
+<TGConnectingPoint num="20" id="1104" />
+<TGConnectingPoint num="21" id="1105" />
+<TGConnectingPoint num="22" id="1106" />
+<TGConnectingPoint num="23" id="1107" />
+<TGConnectingPoint num="24" id="1108" />
+<TGConnectingPoint num="25" id="1109" />
+<TGConnectingPoint num="26" id="1110" />
+<TGConnectingPoint num="27" id="1111" />
+<TGConnectingPoint num="28" id="1112" />
+<TGConnectingPoint num="29" id="1113" />
+<TGConnectingPoint num="30" id="1114" />
+<TGConnectingPoint num="31" id="1115" />
+<TGConnectingPoint num="32" id="1116" />
+<TGConnectingPoint num="33" id="1117" />
+<TGConnectingPoint num="34" id="1118" />
+<TGConnectingPoint num="35" id="1119" />
+<TGConnectingPoint num="36" id="1120" />
+<TGConnectingPoint num="37" id="1121" />
+<TGConnectingPoint num="38" id="1122" />
+<TGConnectingPoint num="39" id="1123" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="1165" >
+<cdparam x="231" y="188" />
+<sizeparam width="157" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForSecondCoin" />
+<TGConnectingPoint num="0" id="1125" />
+<TGConnectingPoint num="1" id="1126" />
+<TGConnectingPoint num="2" id="1127" />
+<TGConnectingPoint num="3" id="1128" />
+<TGConnectingPoint num="4" id="1129" />
+<TGConnectingPoint num="5" id="1130" />
+<TGConnectingPoint num="6" id="1131" />
+<TGConnectingPoint num="7" id="1132" />
+<TGConnectingPoint num="8" id="1133" />
+<TGConnectingPoint num="9" id="1134" />
+<TGConnectingPoint num="10" id="1135" />
+<TGConnectingPoint num="11" id="1136" />
+<TGConnectingPoint num="12" id="1137" />
+<TGConnectingPoint num="13" id="1138" />
+<TGConnectingPoint num="14" id="1139" />
+<TGConnectingPoint num="15" id="1140" />
+<TGConnectingPoint num="16" id="1141" />
+<TGConnectingPoint num="17" id="1142" />
+<TGConnectingPoint num="18" id="1143" />
+<TGConnectingPoint num="19" id="1144" />
+<TGConnectingPoint num="20" id="1145" />
+<TGConnectingPoint num="21" id="1146" />
+<TGConnectingPoint num="22" id="1147" />
+<TGConnectingPoint num="23" id="1148" />
+<TGConnectingPoint num="24" id="1149" />
+<TGConnectingPoint num="25" id="1150" />
+<TGConnectingPoint num="26" id="1151" />
+<TGConnectingPoint num="27" id="1152" />
+<TGConnectingPoint num="28" id="1153" />
+<TGConnectingPoint num="29" id="1154" />
+<TGConnectingPoint num="30" id="1155" />
+<TGConnectingPoint num="31" id="1156" />
+<TGConnectingPoint num="32" id="1157" />
+<TGConnectingPoint num="33" id="1158" />
+<TGConnectingPoint num="34" id="1159" />
+<TGConnectingPoint num="35" id="1160" />
+<TGConnectingPoint num="36" id="1161" />
+<TGConnectingPoint num="37" id="1162" />
+<TGConnectingPoint num="38" id="1163" />
+<TGConnectingPoint num="39" id="1164" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="1167" >
+<cdparam x="296" y="20" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1166" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1208" >
+<cdparam x="235" y="63" />
+<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForFirstCoin" />
+<TGConnectingPoint num="0" id="1168" />
+<TGConnectingPoint num="1" id="1169" />
+<TGConnectingPoint num="2" id="1170" />
+<TGConnectingPoint num="3" id="1171" />
+<TGConnectingPoint num="4" id="1172" />
+<TGConnectingPoint num="5" id="1173" />
+<TGConnectingPoint num="6" id="1174" />
+<TGConnectingPoint num="7" id="1175" />
+<TGConnectingPoint num="8" id="1176" />
+<TGConnectingPoint num="9" id="1177" />
+<TGConnectingPoint num="10" id="1178" />
+<TGConnectingPoint num="11" id="1179" />
+<TGConnectingPoint num="12" id="1180" />
+<TGConnectingPoint num="13" id="1181" />
+<TGConnectingPoint num="14" id="1182" />
+<TGConnectingPoint num="15" id="1183" />
+<TGConnectingPoint num="16" id="1184" />
+<TGConnectingPoint num="17" id="1185" />
+<TGConnectingPoint num="18" id="1186" />
+<TGConnectingPoint num="19" id="1187" />
+<TGConnectingPoint num="20" id="1188" />
+<TGConnectingPoint num="21" id="1189" />
+<TGConnectingPoint num="22" id="1190" />
+<TGConnectingPoint num="23" id="1191" />
+<TGConnectingPoint num="24" id="1192" />
+<TGConnectingPoint num="25" id="1193" />
+<TGConnectingPoint num="26" id="1194" />
+<TGConnectingPoint num="27" id="1195" />
+<TGConnectingPoint num="28" id="1196" />
+<TGConnectingPoint num="29" id="1197" />
+<TGConnectingPoint num="30" id="1198" />
+<TGConnectingPoint num="31" id="1199" />
+<TGConnectingPoint num="32" id="1200" />
+<TGConnectingPoint num="33" id="1201" />
+<TGConnectingPoint num="34" id="1202" />
+<TGConnectingPoint num="35" id="1203" />
+<TGConnectingPoint num="36" id="1204" />
+<TGConnectingPoint num="37" id="1205" />
+<TGConnectingPoint num="38" id="1206" />
+<TGConnectingPoint num="39" id="1207" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="1249" >
+<cdparam x="221" y="748" />
+<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForFirstCoin" />
+<TGConnectingPoint num="0" id="1209" />
+<TGConnectingPoint num="1" id="1210" />
+<TGConnectingPoint num="2" id="1211" />
+<TGConnectingPoint num="3" id="1212" />
+<TGConnectingPoint num="4" id="1213" />
+<TGConnectingPoint num="5" id="1214" />
+<TGConnectingPoint num="6" id="1215" />
+<TGConnectingPoint num="7" id="1216" />
+<TGConnectingPoint num="8" id="1217" />
+<TGConnectingPoint num="9" id="1218" />
+<TGConnectingPoint num="10" id="1219" />
+<TGConnectingPoint num="11" id="1220" />
+<TGConnectingPoint num="12" id="1221" />
+<TGConnectingPoint num="13" id="1222" />
+<TGConnectingPoint num="14" id="1223" />
+<TGConnectingPoint num="15" id="1224" />
+<TGConnectingPoint num="16" id="1225" />
+<TGConnectingPoint num="17" id="1226" />
+<TGConnectingPoint num="18" id="1227" />
+<TGConnectingPoint num="19" id="1228" />
+<TGConnectingPoint num="20" id="1229" />
+<TGConnectingPoint num="21" id="1230" />
+<TGConnectingPoint num="22" id="1231" />
+<TGConnectingPoint num="23" id="1232" />
+<TGConnectingPoint num="24" id="1233" />
+<TGConnectingPoint num="25" id="1234" />
+<TGConnectingPoint num="26" id="1235" />
+<TGConnectingPoint num="27" id="1236" />
+<TGConnectingPoint num="28" id="1237" />
+<TGConnectingPoint num="29" id="1238" />
+<TGConnectingPoint num="30" id="1239" />
+<TGConnectingPoint num="31" id="1240" />
+<TGConnectingPoint num="32" id="1241" />
+<TGConnectingPoint num="33" id="1242" />
+<TGConnectingPoint num="34" id="1243" />
+<TGConnectingPoint num="35" id="1244" />
+<TGConnectingPoint num="36" id="1245" />
+<TGConnectingPoint num="37" id="1246" />
+<TGConnectingPoint num="38" id="1247" />
+<TGConnectingPoint num="39" id="1248" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="1290" >
+<cdparam x="631" y="381" />
+<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForFirstCoin" />
+<TGConnectingPoint num="0" id="1250" />
+<TGConnectingPoint num="1" id="1251" />
+<TGConnectingPoint num="2" id="1252" />
+<TGConnectingPoint num="3" id="1253" />
+<TGConnectingPoint num="4" id="1254" />
+<TGConnectingPoint num="5" id="1255" />
+<TGConnectingPoint num="6" id="1256" />
+<TGConnectingPoint num="7" id="1257" />
+<TGConnectingPoint num="8" id="1258" />
+<TGConnectingPoint num="9" id="1259" />
+<TGConnectingPoint num="10" id="1260" />
+<TGConnectingPoint num="11" id="1261" />
+<TGConnectingPoint num="12" id="1262" />
+<TGConnectingPoint num="13" id="1263" />
+<TGConnectingPoint num="14" id="1264" />
+<TGConnectingPoint num="15" id="1265" />
+<TGConnectingPoint num="16" id="1266" />
+<TGConnectingPoint num="17" id="1267" />
+<TGConnectingPoint num="18" id="1268" />
+<TGConnectingPoint num="19" id="1269" />
+<TGConnectingPoint num="20" id="1270" />
+<TGConnectingPoint num="21" id="1271" />
+<TGConnectingPoint num="22" id="1272" />
+<TGConnectingPoint num="23" id="1273" />
+<TGConnectingPoint num="24" id="1274" />
+<TGConnectingPoint num="25" id="1275" />
+<TGConnectingPoint num="26" id="1276" />
+<TGConnectingPoint num="27" id="1277" />
+<TGConnectingPoint num="28" id="1278" />
+<TGConnectingPoint num="29" id="1279" />
+<TGConnectingPoint num="30" id="1280" />
+<TGConnectingPoint num="31" id="1281" />
+<TGConnectingPoint num="32" id="1282" />
+<TGConnectingPoint num="33" id="1283" />
+<TGConnectingPoint num="34" id="1284" />
+<TGConnectingPoint num="35" id="1285" />
+<TGConnectingPoint num="36" id="1286" />
+<TGConnectingPoint num="37" id="1287" />
+<TGConnectingPoint num="38" id="1288" />
+<TGConnectingPoint num="39" id="1289" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="1407" >
+<cdparam x="18" y="370" />
+<sizeparam width="577" height="354" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="Beverage" />
+<TGConnectingPoint num="0" id="1367" />
+<TGConnectingPoint num="1" id="1368" />
+<TGConnectingPoint num="2" id="1369" />
+<TGConnectingPoint num="3" id="1370" />
+<TGConnectingPoint num="4" id="1371" />
+<TGConnectingPoint num="5" id="1372" />
+<TGConnectingPoint num="6" id="1373" />
+<TGConnectingPoint num="7" id="1374" />
+<TGConnectingPoint num="8" id="1375" />
+<TGConnectingPoint num="9" id="1376" />
+<TGConnectingPoint num="10" id="1377" />
+<TGConnectingPoint num="11" id="1378" />
+<TGConnectingPoint num="12" id="1379" />
+<TGConnectingPoint num="13" id="1380" />
+<TGConnectingPoint num="14" id="1381" />
+<TGConnectingPoint num="15" id="1382" />
+<TGConnectingPoint num="16" id="1383" />
+<TGConnectingPoint num="17" id="1384" />
+<TGConnectingPoint num="18" id="1385" />
+<TGConnectingPoint num="19" id="1386" />
+<TGConnectingPoint num="20" id="1387" />
+<TGConnectingPoint num="21" id="1388" />
+<TGConnectingPoint num="22" id="1389" />
+<TGConnectingPoint num="23" id="1390" />
+<TGConnectingPoint num="24" id="1391" />
+<TGConnectingPoint num="25" id="1392" />
+<TGConnectingPoint num="26" id="1393" />
+<TGConnectingPoint num="27" id="1394" />
+<TGConnectingPoint num="28" id="1395" />
+<TGConnectingPoint num="29" id="1396" />
+<TGConnectingPoint num="30" id="1397" />
+<TGConnectingPoint num="31" id="1398" />
+<TGConnectingPoint num="32" id="1399" />
+<TGConnectingPoint num="33" id="1400" />
+<TGConnectingPoint num="34" id="1401" />
+<TGConnectingPoint num="35" id="1402" />
+<TGConnectingPoint num="36" id="1403" />
+<TGConnectingPoint num="37" id="1404" />
+<TGConnectingPoint num="38" id="1405" />
+<TGConnectingPoint num="39" id="1406" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="5103" id="1301" >
+<father id="1407" num="0" />
+<cdparam x="367" y="500" />
+<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="447" minY="0" maxY="334" />
+<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" />
+<TGConnectingPoint num="0" id="1291" />
+<TGConnectingPoint num="1" id="1292" />
+<TGConnectingPoint num="2" id="1293" />
+<TGConnectingPoint num="3" id="1294" />
+<TGConnectingPoint num="4" id="1295" />
+<TGConnectingPoint num="5" id="1296" />
+<TGConnectingPoint num="6" id="1297" />
+<TGConnectingPoint num="7" id="1298" />
+<TGConnectingPoint num="8" id="1299" />
+<TGConnectingPoint num="9" id="1300" />
+<accessibility />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5104" id="1312" >
+<father id="1407" num="1" />
+<cdparam x="51" y="527" />
+<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="450" minY="0" maxY="334" />
+<infoparam name="Send signal" value="pushCoffeeButton()" />
+<TGConnectingPoint num="0" id="1302" />
+<TGConnectingPoint num="1" id="1303" />
+<TGConnectingPoint num="2" id="1304" />
+<TGConnectingPoint num="3" id="1305" />
+<TGConnectingPoint num="4" id="1306" />
+<TGConnectingPoint num="5" id="1307" />
+<TGConnectingPoint num="6" id="1308" />
+<TGConnectingPoint num="7" id="1309" />
+<TGConnectingPoint num="8" id="1310" />
+<TGConnectingPoint num="9" id="1311" />
+<accessibility />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5100" id="1314" >
+<father id="1407" num="2" />
+<cdparam x="249" y="399" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="562" minY="0" maxY="339" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1313" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5106" id="1355" >
+<father id="1407" num="3" />
+<cdparam x="189" y="435" />
+<sizeparam width="132" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="445" minY="0" maxY="314" />
+<infoparam name="state0" value="WaitingForSelection" />
+<TGConnectingPoint num="0" id="1315" />
+<TGConnectingPoint num="1" id="1316" />
+<TGConnectingPoint num="2" id="1317" />
+<TGConnectingPoint num="3" id="1318" />
+<TGConnectingPoint num="4" id="1319" />
+<TGConnectingPoint num="5" id="1320" />
+<TGConnectingPoint num="6" id="1321" />
+<TGConnectingPoint num="7" id="1322" />
+<TGConnectingPoint num="8" id="1323" />
+<TGConnectingPoint num="9" id="1324" />
+<TGConnectingPoint num="10" id="1325" />
+<TGConnectingPoint num="11" id="1326" />
+<TGConnectingPoint num="12" id="1327" />
+<TGConnectingPoint num="13" id="1328" />
+<TGConnectingPoint num="14" id="1329" />
+<TGConnectingPoint num="15" id="1330" />
+<TGConnectingPoint num="16" id="1331" />
+<TGConnectingPoint num="17" id="1332" />
+<TGConnectingPoint num="18" id="1333" />
+<TGConnectingPoint num="19" id="1334" />
+<TGConnectingPoint num="20" id="1335" />
+<TGConnectingPoint num="21" id="1336" />
+<TGConnectingPoint num="22" id="1337" />
+<TGConnectingPoint num="23" id="1338" />
+<TGConnectingPoint num="24" id="1339" />
+<TGConnectingPoint num="25" id="1340" />
+<TGConnectingPoint num="26" id="1341" />
+<TGConnectingPoint num="27" id="1342" />
+<TGConnectingPoint num="28" id="1343" />
+<TGConnectingPoint num="29" id="1344" />
+<TGConnectingPoint num="30" id="1345" />
+<TGConnectingPoint num="31" id="1346" />
+<TGConnectingPoint num="32" id="1347" />
+<TGConnectingPoint num="33" id="1348" />
+<TGConnectingPoint num="34" id="1349" />
+<TGConnectingPoint num="35" id="1350" />
+<TGConnectingPoint num="36" id="1351" />
+<TGConnectingPoint num="37" id="1352" />
+<TGConnectingPoint num="38" id="1353" />
+<TGConnectingPoint num="39" id="1354" />
+<extraparam>
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5104" id="1366" >
+<father id="1407" num="4" />
+<cdparam x="231" y="527" />
+<sizeparam width="124" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="465" minY="0" maxY="334" />
+<infoparam name="Send signal" value="pushTeaButton()" />
+<TGConnectingPoint num="0" id="1356" />
+<TGConnectingPoint num="1" id="1357" />
+<TGConnectingPoint num="2" id="1358" />
+<TGConnectingPoint num="3" id="1359" />
+<TGConnectingPoint num="4" id="1360" />
+<TGConnectingPoint num="5" id="1361" />
+<TGConnectingPoint num="6" id="1362" />
+<TGConnectingPoint num="7" id="1363" />
+<TGConnectingPoint num="8" id="1364" />
+<TGConnectingPoint num="9" id="1365" />
+<accessibility />
+</SUBCOMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="1414" >
+<cdparam x="177" y="199" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1413" />
+<P1  x="340" y="233" id="1520" />
+<P2  x="353" y="252" id="1522" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1412" >
+<father id="1414" num="0" />
+<cdparam x="177" y="239" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1408" />
+<TGConnectingPoint num="1" id="1409" />
+<TGConnectingPoint num="2" id="1410" />
+<TGConnectingPoint num="3" id="1411" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1421" >
+<cdparam x="322" y="69" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="1420" />
+<P1  x="322" y="69" id="1518" />
+<P2  x="323" y="88" id="1478" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1419" >
+<father id="1421" num="0" />
+<cdparam x="322" y="109" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1415" />
+<TGConnectingPoint num="1" id="1416" />
+<TGConnectingPoint num="2" id="1417" />
+<TGConnectingPoint num="3" id="1418" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1428" >
+<cdparam x="377" y="144" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1427" />
+<P1  x="323" y="118" id="1483" />
+<P2  x="356" y="174" id="1534" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1426" >
+<father id="1428" num="0" />
+<cdparam x="377" y="184" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1422" />
+<TGConnectingPoint num="1" id="1423" />
+<TGConnectingPoint num="2" id="1424" />
+<TGConnectingPoint num="3" id="1425" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1435" >
+<cdparam x="377" y="187" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1434" />
+<P1  x="353" y="282" id="1523" />
+<P2  x="399" y="352" id="1437" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1433" >
+<father id="1435" num="0" />
+<cdparam x="417" y="335" />
+<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1429" />
+<TGConnectingPoint num="1" id="1430" />
+<TGConnectingPoint num="2" id="1431" />
+<TGConnectingPoint num="3" id="1432" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="mechanicalDelay" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5106" id="1476" >
+<cdparam x="374" y="352" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="1436" />
+<TGConnectingPoint num="1" id="1437" />
+<TGConnectingPoint num="2" id="1438" />
+<TGConnectingPoint num="3" id="1439" />
+<TGConnectingPoint num="4" id="1440" />
+<TGConnectingPoint num="5" id="1441" />
+<TGConnectingPoint num="6" id="1442" />
+<TGConnectingPoint num="7" id="1443" />
+<TGConnectingPoint num="8" id="1444" />
+<TGConnectingPoint num="9" id="1445" />
+<TGConnectingPoint num="10" id="1446" />
+<TGConnectingPoint num="11" id="1447" />
+<TGConnectingPoint num="12" id="1448" />
+<TGConnectingPoint num="13" id="1449" />
+<TGConnectingPoint num="14" id="1450" />
+<TGConnectingPoint num="15" id="1451" />
+<TGConnectingPoint num="16" id="1452" />
+<TGConnectingPoint num="17" id="1453" />
+<TGConnectingPoint num="18" id="1454" />
+<TGConnectingPoint num="19" id="1455" />
+<TGConnectingPoint num="20" id="1456" />
+<TGConnectingPoint num="21" id="1457" />
+<TGConnectingPoint num="22" id="1458" />
+<TGConnectingPoint num="23" id="1459" />
+<TGConnectingPoint num="24" id="1460" />
+<TGConnectingPoint num="25" id="1461" />
+<TGConnectingPoint num="26" id="1462" />
+<TGConnectingPoint num="27" id="1463" />
+<TGConnectingPoint num="28" id="1464" />
+<TGConnectingPoint num="29" id="1465" />
+<TGConnectingPoint num="30" id="1466" />
+<TGConnectingPoint num="31" id="1467" />
+<TGConnectingPoint num="32" id="1468" />
+<TGConnectingPoint num="33" id="1469" />
+<TGConnectingPoint num="34" id="1470" />
+<TGConnectingPoint num="35" id="1471" />
+<TGConnectingPoint num="36" id="1472" />
+<TGConnectingPoint num="37" id="1473" />
+<TGConnectingPoint num="38" id="1474" />
+<TGConnectingPoint num="39" id="1475" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="1517" >
+<cdparam x="298" y="88" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="1477" />
+<TGConnectingPoint num="1" id="1478" />
+<TGConnectingPoint num="2" id="1479" />
+<TGConnectingPoint num="3" id="1480" />
+<TGConnectingPoint num="4" id="1481" />
+<TGConnectingPoint num="5" id="1482" />
+<TGConnectingPoint num="6" id="1483" />
+<TGConnectingPoint num="7" id="1484" />
+<TGConnectingPoint num="8" id="1485" />
+<TGConnectingPoint num="9" id="1486" />
+<TGConnectingPoint num="10" id="1487" />
+<TGConnectingPoint num="11" id="1488" />
+<TGConnectingPoint num="12" id="1489" />
+<TGConnectingPoint num="13" id="1490" />
+<TGConnectingPoint num="14" id="1491" />
+<TGConnectingPoint num="15" id="1492" />
+<TGConnectingPoint num="16" id="1493" />
+<TGConnectingPoint num="17" id="1494" />
+<TGConnectingPoint num="18" id="1495" />
+<TGConnectingPoint num="19" id="1496" />
+<TGConnectingPoint num="20" id="1497" />
+<TGConnectingPoint num="21" id="1498" />
+<TGConnectingPoint num="22" id="1499" />
+<TGConnectingPoint num="23" id="1500" />
+<TGConnectingPoint num="24" id="1501" />
+<TGConnectingPoint num="25" id="1502" />
+<TGConnectingPoint num="26" id="1503" />
+<TGConnectingPoint num="27" id="1504" />
+<TGConnectingPoint num="28" id="1505" />
+<TGConnectingPoint num="29" id="1506" />
+<TGConnectingPoint num="30" id="1507" />
+<TGConnectingPoint num="31" id="1508" />
+<TGConnectingPoint num="32" id="1509" />
+<TGConnectingPoint num="33" id="1510" />
+<TGConnectingPoint num="34" id="1511" />
+<TGConnectingPoint num="35" id="1512" />
+<TGConnectingPoint num="36" id="1513" />
+<TGConnectingPoint num="37" id="1514" />
+<TGConnectingPoint num="38" id="1515" />
+<TGConnectingPoint num="39" id="1516" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="1519" >
+<cdparam x="315" y="49" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1518" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1573" >
+<cdparam x="264" y="174" />
+<sizeparam width="184" height="130" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="state0" />
+<TGConnectingPoint num="0" id="1533" />
+<TGConnectingPoint num="1" id="1534" />
+<TGConnectingPoint num="2" id="1535" />
+<TGConnectingPoint num="3" id="1536" />
+<TGConnectingPoint num="4" id="1537" />
+<TGConnectingPoint num="5" id="1538" />
+<TGConnectingPoint num="6" id="1539" />
+<TGConnectingPoint num="7" id="1540" />
+<TGConnectingPoint num="8" id="1541" />
+<TGConnectingPoint num="9" id="1542" />
+<TGConnectingPoint num="10" id="1543" />
+<TGConnectingPoint num="11" id="1544" />
+<TGConnectingPoint num="12" id="1545" />
+<TGConnectingPoint num="13" id="1546" />
+<TGConnectingPoint num="14" id="1547" />
+<TGConnectingPoint num="15" id="1548" />
+<TGConnectingPoint num="16" id="1549" />
+<TGConnectingPoint num="17" id="1550" />
+<TGConnectingPoint num="18" id="1551" />
+<TGConnectingPoint num="19" id="1552" />
+<TGConnectingPoint num="20" id="1553" />
+<TGConnectingPoint num="21" id="1554" />
+<TGConnectingPoint num="22" id="1555" />
+<TGConnectingPoint num="23" id="1556" />
+<TGConnectingPoint num="24" id="1557" />
+<TGConnectingPoint num="25" id="1558" />
+<TGConnectingPoint num="26" id="1559" />
+<TGConnectingPoint num="27" id="1560" />
+<TGConnectingPoint num="28" id="1561" />
+<TGConnectingPoint num="29" id="1562" />
+<TGConnectingPoint num="30" id="1563" />
+<TGConnectingPoint num="31" id="1564" />
+<TGConnectingPoint num="32" id="1565" />
+<TGConnectingPoint num="33" id="1566" />
+<TGConnectingPoint num="34" id="1567" />
+<TGConnectingPoint num="35" id="1568" />
+<TGConnectingPoint num="36" id="1569" />
+<TGConnectingPoint num="37" id="1570" />
+<TGConnectingPoint num="38" id="1571" />
+<TGConnectingPoint num="39" id="1572" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="5100" id="1521" >
+<father id="1573" num="0" />
+<cdparam x="333" y="213" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="169" minY="0" maxY="115" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1520" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5103" id="1532" >
+<father id="1573" num="1" />
+<cdparam x="328" y="257" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="138" minY="0" maxY="110" />
+<infoparam name="Send signal" value="push()" />
+<TGConnectingPoint num="0" id="1522" />
+<TGConnectingPoint num="1" id="1523" />
+<TGConnectingPoint num="2" id="1524" />
+<TGConnectingPoint num="3" id="1525" />
+<TGConnectingPoint num="4" id="1526" />
+<TGConnectingPoint num="5" id="1527" />
+<TGConnectingPoint num="6" id="1528" />
+<TGConnectingPoint num="7" id="1529" />
+<TGConnectingPoint num="8" id="1530" />
+<TGConnectingPoint num="9" id="1531" />
+</SUBCOMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="TeaButton" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="1580" >
+<cdparam x="363" y="193" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1579" />
+<P1  x="363" y="204" id="1596" />
+<P2  x="362" y="257" id="1607" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1578" >
+<father id="1580" num="0" />
+<cdparam x="380" y="228" />
+<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1574" />
+<TGConnectingPoint num="1" id="1575" />
+<TGConnectingPoint num="2" id="1576" />
+<TGConnectingPoint num="3" id="1577" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="mechanicalDelay" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1587" >
+<cdparam x="363" y="150" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1586" />
+<P1  x="363" y="150" id="1653" />
+<P2  x="363" y="174" id="1595" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1585" >
+<father id="1587" num="0" />
+<cdparam x="363" y="190" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1581" />
+<TGConnectingPoint num="1" id="1582" />
+<TGConnectingPoint num="2" id="1583" />
+<TGConnectingPoint num="3" id="1584" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1594" >
+<cdparam x="362" y="101" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="1593" />
+<P1  x="362" y="101" id="1688" />
+<P2  x="363" y="120" id="1648" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1592" >
+<father id="1594" num="0" />
+<cdparam x="362" y="141" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1588" />
+<TGConnectingPoint num="1" id="1589" />
+<TGConnectingPoint num="2" id="1590" />
+<TGConnectingPoint num="3" id="1591" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="1605" >
+<cdparam x="338" y="179" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="push()" />
+<TGConnectingPoint num="0" id="1595" />
+<TGConnectingPoint num="1" id="1596" />
+<TGConnectingPoint num="2" id="1597" />
+<TGConnectingPoint num="3" id="1598" />
+<TGConnectingPoint num="4" id="1599" />
+<TGConnectingPoint num="5" id="1600" />
+<TGConnectingPoint num="6" id="1601" />
+<TGConnectingPoint num="7" id="1602" />
+<TGConnectingPoint num="8" id="1603" />
+<TGConnectingPoint num="9" id="1604" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1646" >
+<cdparam x="337" y="257" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="1606" />
+<TGConnectingPoint num="1" id="1607" />
+<TGConnectingPoint num="2" id="1608" />
+<TGConnectingPoint num="3" id="1609" />
+<TGConnectingPoint num="4" id="1610" />
+<TGConnectingPoint num="5" id="1611" />
+<TGConnectingPoint num="6" id="1612" />
+<TGConnectingPoint num="7" id="1613" />
+<TGConnectingPoint num="8" id="1614" />
+<TGConnectingPoint num="9" id="1615" />
+<TGConnectingPoint num="10" id="1616" />
+<TGConnectingPoint num="11" id="1617" />
+<TGConnectingPoint num="12" id="1618" />
+<TGConnectingPoint num="13" id="1619" />
+<TGConnectingPoint num="14" id="1620" />
+<TGConnectingPoint num="15" id="1621" />
+<TGConnectingPoint num="16" id="1622" />
+<TGConnectingPoint num="17" id="1623" />
+<TGConnectingPoint num="18" id="1624" />
+<TGConnectingPoint num="19" id="1625" />
+<TGConnectingPoint num="20" id="1626" />
+<TGConnectingPoint num="21" id="1627" />
+<TGConnectingPoint num="22" id="1628" />
+<TGConnectingPoint num="23" id="1629" />
+<TGConnectingPoint num="24" id="1630" />
+<TGConnectingPoint num="25" id="1631" />
+<TGConnectingPoint num="26" id="1632" />
+<TGConnectingPoint num="27" id="1633" />
+<TGConnectingPoint num="28" id="1634" />
+<TGConnectingPoint num="29" id="1635" />
+<TGConnectingPoint num="30" id="1636" />
+<TGConnectingPoint num="31" id="1637" />
+<TGConnectingPoint num="32" id="1638" />
+<TGConnectingPoint num="33" id="1639" />
+<TGConnectingPoint num="34" id="1640" />
+<TGConnectingPoint num="35" id="1641" />
+<TGConnectingPoint num="36" id="1642" />
+<TGConnectingPoint num="37" id="1643" />
+<TGConnectingPoint num="38" id="1644" />
+<TGConnectingPoint num="39" id="1645" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="1687" >
+<cdparam x="338" y="120" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="1647" />
+<TGConnectingPoint num="1" id="1648" />
+<TGConnectingPoint num="2" id="1649" />
+<TGConnectingPoint num="3" id="1650" />
+<TGConnectingPoint num="4" id="1651" />
+<TGConnectingPoint num="5" id="1652" />
+<TGConnectingPoint num="6" id="1653" />
+<TGConnectingPoint num="7" id="1654" />
+<TGConnectingPoint num="8" id="1655" />
+<TGConnectingPoint num="9" id="1656" />
+<TGConnectingPoint num="10" id="1657" />
+<TGConnectingPoint num="11" id="1658" />
+<TGConnectingPoint num="12" id="1659" />
+<TGConnectingPoint num="13" id="1660" />
+<TGConnectingPoint num="14" id="1661" />
+<TGConnectingPoint num="15" id="1662" />
+<TGConnectingPoint num="16" id="1663" />
+<TGConnectingPoint num="17" id="1664" />
+<TGConnectingPoint num="18" id="1665" />
+<TGConnectingPoint num="19" id="1666" />
+<TGConnectingPoint num="20" id="1667" />
+<TGConnectingPoint num="21" id="1668" />
+<TGConnectingPoint num="22" id="1669" />
+<TGConnectingPoint num="23" id="1670" />
+<TGConnectingPoint num="24" id="1671" />
+<TGConnectingPoint num="25" id="1672" />
+<TGConnectingPoint num="26" id="1673" />
+<TGConnectingPoint num="27" id="1674" />
+<TGConnectingPoint num="28" id="1675" />
+<TGConnectingPoint num="29" id="1676" />
+<TGConnectingPoint num="30" id="1677" />
+<TGConnectingPoint num="31" id="1678" />
+<TGConnectingPoint num="32" id="1679" />
+<TGConnectingPoint num="33" id="1680" />
+<TGConnectingPoint num="34" id="1681" />
+<TGConnectingPoint num="35" id="1682" />
+<TGConnectingPoint num="36" id="1683" />
+<TGConnectingPoint num="37" id="1684" />
+<TGConnectingPoint num="38" id="1685" />
+<TGConnectingPoint num="39" id="1686" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="1689" >
+<cdparam x="355" y="81" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1688" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="AVATAR Design" nameTab="DesignWithNoCompositeState" >
+<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" >
+<MainCode value="void __user_init() {"/>
+<MainCode value="}"/>
+<Optimized value="true" />
+<Validated value="Wallet;CoffeeMachine;TeaButton;CoffeeButton;" />
+<Ignored value="" />
+
+<CONNECTOR type="5002" id="1691" >
+<cdparam x="321" y="567" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block1 to Block0" value="" />
+<TGConnectingPoint num="0" id="1690" />
+<P1  x="559" y="330" id="1778" />
+<P2  x="560" y="377" id="1836" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<isd value="in pushCoffeeButton()" />
+<oso value="out push()" />
+<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="5002" id="1693" >
+<cdparam x="275" y="114" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block0 to Block0" value="" />
+<TGConnectingPoint num="0" id="1692" />
+<P1  x="306" y="109" id="1758" />
+<P2  x="445" y="108" id="1832" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in getCoin(int nbOfCoins)" />
+<osd value="out ejectCoin(int nbOfCoins)" />
+<isd value="in getCoin(int nbOfCoins)" />
+<oso value="out putCoin(int nbOfCoins)" />
+<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="5002" id="1695" >
+<cdparam x="623" y="565" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block1 to Block0" value="" />
+<TGConnectingPoint num="0" id="1694" />
+<P1  x="789" y="326" id="1803" />
+<P2  x="790" y="377" id="1837" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<isd value="in pushTeaButton()" />
+<oso value="out push()" />
+<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<COMPONENT type="303" id="1746" >
+<cdparam x="92" y="385" />
+<sizeparam width="334" height="84" minWidth="80" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UPPAAL Pragma" value="A[] Wallet.nbOfCoins&lt;3
+A[] CoffeeButton.main
+A&lt;&gt; CoffeeMachine.WaitingForSelection
+E&lt;&gt; CoffeeMachine.WaitingForSelection
+
+" />
+<TGConnectingPoint num="0" id="1730" />
+<TGConnectingPoint num="1" id="1731" />
+<TGConnectingPoint num="2" id="1732" />
+<TGConnectingPoint num="3" id="1733" />
+<TGConnectingPoint num="4" id="1734" />
+<TGConnectingPoint num="5" id="1735" />
+<TGConnectingPoint num="6" id="1736" />
+<TGConnectingPoint num="7" id="1737" />
+<TGConnectingPoint num="8" id="1738" />
+<TGConnectingPoint num="9" id="1739" />
+<TGConnectingPoint num="10" id="1740" />
+<TGConnectingPoint num="11" id="1741" />
+<TGConnectingPoint num="12" id="1742" />
+<TGConnectingPoint num="13" id="1743" />
+<TGConnectingPoint num="14" id="1744" />
+<TGConnectingPoint num="15" id="1745" />
+<extraparam>
+<Line value="A[] Wallet.nbOfCoins&lt;3" />
+<Line value="A[] CoffeeButton.main" />
+<Line value="A&lt;&gt; CoffeeMachine.WaitingForSelection" />
+<Line value="E&lt;&gt; CoffeeMachine.WaitingForSelection" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="1771" >
+<cdparam x="106" y="55" />
+<sizeparam width="200" height="218" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="Wallet" />
+<TGConnectingPoint num="0" id="1747" />
+<TGConnectingPoint num="1" id="1748" />
+<TGConnectingPoint num="2" id="1749" />
+<TGConnectingPoint num="3" id="1750" />
+<TGConnectingPoint num="4" id="1751" />
+<TGConnectingPoint num="5" id="1752" />
+<TGConnectingPoint num="6" id="1753" />
+<TGConnectingPoint num="7" id="1754" />
+<TGConnectingPoint num="8" id="1755" />
+<TGConnectingPoint num="9" id="1756" />
+<TGConnectingPoint num="10" id="1757" />
+<TGConnectingPoint num="11" id="1758" />
+<TGConnectingPoint num="12" id="1759" />
+<TGConnectingPoint num="13" id="1760" />
+<TGConnectingPoint num="14" id="1761" />
+<TGConnectingPoint num="15" id="1762" />
+<TGConnectingPoint num="16" id="1763" />
+<TGConnectingPoint num="17" id="1764" />
+<TGConnectingPoint num="18" id="1765" />
+<TGConnectingPoint num="19" id="1766" />
+<TGConnectingPoint num="20" id="1767" />
+<TGConnectingPoint num="21" id="1768" />
+<TGConnectingPoint num="22" id="1769" />
+<TGConnectingPoint num="23" id="1770" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="nbOfCoins" value="2" type="8" typeOther="" />
+<Attribute access="0" id="x" value="1" type="8" typeOther="" />
+<Attribute access="0" id="minUserDelay" value="50" type="8" typeOther="" />
+<Attribute access="0" id="maxUserDelay" value="70" type="8" typeOther="" />
+<Method value="contentOfWallet(int nbOfCoins)" />
+<Signal value="in getCoin(int nbOfCoins)" attached="true" />
+<Signal value="out putCoin(int nbOfCoins)" attached="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="1846" >
+<cdparam x="445" y="19" />
+<sizeparam width="461" height="358" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="CoffeeMachine" />
+<TGConnectingPoint num="0" id="1822" />
+<TGConnectingPoint num="1" id="1823" />
+<TGConnectingPoint num="2" id="1824" />
+<TGConnectingPoint num="3" id="1825" />
+<TGConnectingPoint num="4" id="1826" />
+<TGConnectingPoint num="5" id="1827" />
+<TGConnectingPoint num="6" id="1828" />
+<TGConnectingPoint num="7" id="1829" />
+<TGConnectingPoint num="8" id="1830" />
+<TGConnectingPoint num="9" id="1831" />
+<TGConnectingPoint num="10" id="1832" />
+<TGConnectingPoint num="11" id="1833" />
+<TGConnectingPoint num="12" id="1834" />
+<TGConnectingPoint num="13" id="1835" />
+<TGConnectingPoint num="14" id="1836" />
+<TGConnectingPoint num="15" id="1837" />
+<TGConnectingPoint num="16" id="1838" />
+<TGConnectingPoint num="17" id="1839" />
+<TGConnectingPoint num="18" id="1840" />
+<TGConnectingPoint num="19" id="1841" />
+<TGConnectingPoint num="20" id="1842" />
+<TGConnectingPoint num="21" id="1843" />
+<TGConnectingPoint num="22" id="1844" />
+<TGConnectingPoint num="23" id="1845" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="teaMinDelay" value="3" type="8" typeOther="" />
+<Attribute access="0" id="teaMaxDelay" value="8" type="8" typeOther="" />
+<Attribute access="0" id="coffeeMinDelay" value="5" type="8" typeOther="" />
+<Attribute access="0" id="coffeeMaxDelay" value="10" type="8" typeOther="" />
+<Attribute access="0" id="coinDelay" value="50" type="8" typeOther="" />
+<Attribute access="0" id="x" value="0" type="8" typeOther="" />
+<Attribute access="0" id="nbOfCoins" value="0" type="8" typeOther="" />
+<Method value="beverageReady()" />
+<Signal value="in pushCoffeeButton()" attached="true" />
+<Signal value="in pushTeaButton()" attached="true" />
+<Signal value="in getCoin(int nbOfCoins)" attached="true" />
+<Signal value="out ejectCoin(int nbOfCoins)" attached="true" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="5000" id="1796" >
+<father id="1846" num="0" />
+<cdparam x="464" y="228" />
+<sizeparam width="190" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="271" minY="0" maxY="256" />
+<infoparam name="Block1" value="CoffeeButton" />
+<TGConnectingPoint num="0" id="1772" />
+<TGConnectingPoint num="1" id="1773" />
+<TGConnectingPoint num="2" id="1774" />
+<TGConnectingPoint num="3" id="1775" />
+<TGConnectingPoint num="4" id="1776" />
+<TGConnectingPoint num="5" id="1777" />
+<TGConnectingPoint num="6" id="1778" />
+<TGConnectingPoint num="7" id="1779" />
+<TGConnectingPoint num="8" id="1780" />
+<TGConnectingPoint num="9" id="1781" />
+<TGConnectingPoint num="10" id="1782" />
+<TGConnectingPoint num="11" id="1783" />
+<TGConnectingPoint num="12" id="1784" />
+<TGConnectingPoint num="13" id="1785" />
+<TGConnectingPoint num="14" id="1786" />
+<TGConnectingPoint num="15" id="1787" />
+<TGConnectingPoint num="16" id="1788" />
+<TGConnectingPoint num="17" id="1789" />
+<TGConnectingPoint num="18" id="1790" />
+<TGConnectingPoint num="19" id="1791" />
+<TGConnectingPoint num="20" id="1792" />
+<TGConnectingPoint num="21" id="1793" />
+<TGConnectingPoint num="22" id="1794" />
+<TGConnectingPoint num="23" id="1795" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="mechanicalDelay" value="80" type="8" typeOther="" />
+<Signal value="out push()" attached="true" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5000" id="1821" >
+<father id="1846" num="1" />
+<cdparam x="695" y="224" />
+<sizeparam width="189" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="272" minY="0" maxY="256" />
+<infoparam name="Block1" value="TeaButton" />
+<TGConnectingPoint num="0" id="1797" />
+<TGConnectingPoint num="1" id="1798" />
+<TGConnectingPoint num="2" id="1799" />
+<TGConnectingPoint num="3" id="1800" />
+<TGConnectingPoint num="4" id="1801" />
+<TGConnectingPoint num="5" id="1802" />
+<TGConnectingPoint num="6" id="1803" />
+<TGConnectingPoint num="7" id="1804" />
+<TGConnectingPoint num="8" id="1805" />
+<TGConnectingPoint num="9" id="1806" />
+<TGConnectingPoint num="10" id="1807" />
+<TGConnectingPoint num="11" id="1808" />
+<TGConnectingPoint num="12" id="1809" />
+<TGConnectingPoint num="13" id="1810" />
+<TGConnectingPoint num="14" id="1811" />
+<TGConnectingPoint num="15" id="1812" />
+<TGConnectingPoint num="16" id="1813" />
+<TGConnectingPoint num="17" id="1814" />
+<TGConnectingPoint num="18" id="1815" />
+<TGConnectingPoint num="19" id="1816" />
+<TGConnectingPoint num="20" id="1817" />
+<TGConnectingPoint num="21" id="1818" />
+<TGConnectingPoint num="22" id="1819" />
+<TGConnectingPoint num="23" id="1820" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="mechanicalDelay" value="10" type="8" typeOther="" />
+<Signal value="out push()" attached="true" />
+</extraparam>
+</SUBCOMPONENT>
+
+
+</AVATARBlockDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Wallet" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="1853" >
+<cdparam x="516" y="264" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1852" />
+<P1  x="485" y="219" id="1894" />
+<P2  x="485" y="274" id="1905" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1851" >
+<father id="1853" num="0" />
+<cdparam x="493" y="251" />
+<sizeparam width="173" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1847" />
+<TGConnectingPoint num="1" id="1848" />
+<TGConnectingPoint num="2" id="1849" />
+<TGConnectingPoint num="3" id="1850" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = nbOfCoins + x" />
+<actions value="contentOfWallet(nbOfCoins)" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1860" >
+<cdparam x="382" y="165" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1859" />
+<P1  x="382" y="165" id="2001" />
+<P2  x="485" y="189" id="1893" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1858" >
+<father id="1860" num="0" />
+<cdparam x="382" y="205" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1854" />
+<TGConnectingPoint num="1" id="1855" />
+<TGConnectingPoint num="2" id="1856" />
+<TGConnectingPoint num="3" id="1857" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1867" >
+<cdparam x="223" y="260" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1866" />
+<P1  x="251" y="231" id="1883" />
+<P2  x="252" y="300" id="1946" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1865" >
+<father id="1867" num="0" />
+<cdparam x="163" y="252" />
+<sizeparam width="221" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1861" />
+<TGConnectingPoint num="1" id="1862" />
+<TGConnectingPoint num="2" id="1863" />
+<TGConnectingPoint num="3" id="1864" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="minUserDelay" />
+<afterMax value="maxUserDelay" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = nbOfCoins - x" />
+<actions value="contentOfWallet(nbOfCoins)" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1874" >
+<cdparam x="357" y="165" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1873" />
+<P1  x="357" y="165" id="2000" />
+<P2  x="251" y="201" id="1882" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1872" >
+<father id="1874" num="0" />
+<cdparam x="220" y="174" />
+<sizeparam width="99" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1868" />
+<TGConnectingPoint num="1" id="1869" />
+<TGConnectingPoint num="2" id="1870" />
+<TGConnectingPoint num="3" id="1871" />
+<extraparam>
+<guard value="[nbOfCoins &gt; 0]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1881" >
+<cdparam x="369" y="115" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="1880" />
+<P1  x="370" y="64" id="2027" />
+<P2  x="370" y="135" id="1987" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1879" >
+<father id="1881" num="0" />
+<cdparam x="376" y="105" />
+<sizeparam width="173" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1875" />
+<TGConnectingPoint num="1" id="1876" />
+<TGConnectingPoint num="2" id="1877" />
+<TGConnectingPoint num="3" id="1878" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="contentOfWallet(nbOfCoins)" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="1892" >
+<cdparam x="214" y="206" />
+<sizeparam width="74" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="putCoin(x)" />
+<TGConnectingPoint num="0" id="1882" />
+<TGConnectingPoint num="1" id="1883" />
+<TGConnectingPoint num="2" id="1884" />
+<TGConnectingPoint num="3" id="1885" />
+<TGConnectingPoint num="4" id="1886" />
+<TGConnectingPoint num="5" id="1887" />
+<TGConnectingPoint num="6" id="1888" />
+<TGConnectingPoint num="7" id="1889" />
+<TGConnectingPoint num="8" id="1890" />
+<TGConnectingPoint num="9" id="1891" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="1903" >
+<cdparam x="444" y="194" />
+<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="getCoin(x)" />
+<TGConnectingPoint num="0" id="1893" />
+<TGConnectingPoint num="1" id="1894" />
+<TGConnectingPoint num="2" id="1895" />
+<TGConnectingPoint num="3" id="1896" />
+<TGConnectingPoint num="4" id="1897" />
+<TGConnectingPoint num="5" id="1898" />
+<TGConnectingPoint num="6" id="1899" />
+<TGConnectingPoint num="7" id="1900" />
+<TGConnectingPoint num="8" id="1901" />
+<TGConnectingPoint num="9" id="1902" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1944" >
+<cdparam x="460" y="274" />
+<sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="1904" />
+<TGConnectingPoint num="1" id="1905" />
+<TGConnectingPoint num="2" id="1906" />
+<TGConnectingPoint num="3" id="1907" />
+<TGConnectingPoint num="4" id="1908" />
+<TGConnectingPoint num="5" id="1909" />
+<TGConnectingPoint num="6" id="1910" />
+<TGConnectingPoint num="7" id="1911" />
+<TGConnectingPoint num="8" id="1912" />
+<TGConnectingPoint num="9" id="1913" />
+<TGConnectingPoint num="10" id="1914" />
+<TGConnectingPoint num="11" id="1915" />
+<TGConnectingPoint num="12" id="1916" />
+<TGConnectingPoint num="13" id="1917" />
+<TGConnectingPoint num="14" id="1918" />
+<TGConnectingPoint num="15" id="1919" />
+<TGConnectingPoint num="16" id="1920" />
+<TGConnectingPoint num="17" id="1921" />
+<TGConnectingPoint num="18" id="1922" />
+<TGConnectingPoint num="19" id="1923" />
+<TGConnectingPoint num="20" id="1924" />
+<TGConnectingPoint num="21" id="1925" />
+<TGConnectingPoint num="22" id="1926" />
+<TGConnectingPoint num="23" id="1927" />
+<TGConnectingPoint num="24" id="1928" />
+<TGConnectingPoint num="25" id="1929" />
+<TGConnectingPoint num="26" id="1930" />
+<TGConnectingPoint num="27" id="1931" />
+<TGConnectingPoint num="28" id="1932" />
+<TGConnectingPoint num="29" id="1933" />
+<TGConnectingPoint num="30" id="1934" />
+<TGConnectingPoint num="31" id="1935" />
+<TGConnectingPoint num="32" id="1936" />
+<TGConnectingPoint num="33" id="1937" />
+<TGConnectingPoint num="34" id="1938" />
+<TGConnectingPoint num="35" id="1939" />
+<TGConnectingPoint num="36" id="1940" />
+<TGConnectingPoint num="37" id="1941" />
+<TGConnectingPoint num="38" id="1942" />
+<TGConnectingPoint num="39" id="1943" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="1985" >
+<cdparam x="227" y="300" />
+<sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="1945" />
+<TGConnectingPoint num="1" id="1946" />
+<TGConnectingPoint num="2" id="1947" />
+<TGConnectingPoint num="3" id="1948" />
+<TGConnectingPoint num="4" id="1949" />
+<TGConnectingPoint num="5" id="1950" />
+<TGConnectingPoint num="6" id="1951" />
+<TGConnectingPoint num="7" id="1952" />
+<TGConnectingPoint num="8" id="1953" />
+<TGConnectingPoint num="9" id="1954" />
+<TGConnectingPoint num="10" id="1955" />
+<TGConnectingPoint num="11" id="1956" />
+<TGConnectingPoint num="12" id="1957" />
+<TGConnectingPoint num="13" id="1958" />
+<TGConnectingPoint num="14" id="1959" />
+<TGConnectingPoint num="15" id="1960" />
+<TGConnectingPoint num="16" id="1961" />
+<TGConnectingPoint num="17" id="1962" />
+<TGConnectingPoint num="18" id="1963" />
+<TGConnectingPoint num="19" id="1964" />
+<TGConnectingPoint num="20" id="1965" />
+<TGConnectingPoint num="21" id="1966" />
+<TGConnectingPoint num="22" id="1967" />
+<TGConnectingPoint num="23" id="1968" />
+<TGConnectingPoint num="24" id="1969" />
+<TGConnectingPoint num="25" id="1970" />
+<TGConnectingPoint num="26" id="1971" />
+<TGConnectingPoint num="27" id="1972" />
+<TGConnectingPoint num="28" id="1973" />
+<TGConnectingPoint num="29" id="1974" />
+<TGConnectingPoint num="30" id="1975" />
+<TGConnectingPoint num="31" id="1976" />
+<TGConnectingPoint num="32" id="1977" />
+<TGConnectingPoint num="33" id="1978" />
+<TGConnectingPoint num="34" id="1979" />
+<TGConnectingPoint num="35" id="1980" />
+<TGConnectingPoint num="36" id="1981" />
+<TGConnectingPoint num="37" id="1982" />
+<TGConnectingPoint num="38" id="1983" />
+<TGConnectingPoint num="39" id="1984" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="2026" >
+<cdparam x="345" y="135" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="1986" />
+<TGConnectingPoint num="1" id="1987" />
+<TGConnectingPoint num="2" id="1988" />
+<TGConnectingPoint num="3" id="1989" />
+<TGConnectingPoint num="4" id="1990" />
+<TGConnectingPoint num="5" id="1991" />
+<TGConnectingPoint num="6" id="1992" />
+<TGConnectingPoint num="7" id="1993" />
+<TGConnectingPoint num="8" id="1994" />
+<TGConnectingPoint num="9" id="1995" />
+<TGConnectingPoint num="10" id="1996" />
+<TGConnectingPoint num="11" id="1997" />
+<TGConnectingPoint num="12" id="1998" />
+<TGConnectingPoint num="13" id="1999" />
+<TGConnectingPoint num="14" id="2000" />
+<TGConnectingPoint num="15" id="2001" />
+<TGConnectingPoint num="16" id="2002" />
+<TGConnectingPoint num="17" id="2003" />
+<TGConnectingPoint num="18" id="2004" />
+<TGConnectingPoint num="19" id="2005" />
+<TGConnectingPoint num="20" id="2006" />
+<TGConnectingPoint num="21" id="2007" />
+<TGConnectingPoint num="22" id="2008" />
+<TGConnectingPoint num="23" id="2009" />
+<TGConnectingPoint num="24" id="2010" />
+<TGConnectingPoint num="25" id="2011" />
+<TGConnectingPoint num="26" id="2012" />
+<TGConnectingPoint num="27" id="2013" />
+<TGConnectingPoint num="28" id="2014" />
+<TGConnectingPoint num="29" id="2015" />
+<TGConnectingPoint num="30" id="2016" />
+<TGConnectingPoint num="31" id="2017" />
+<TGConnectingPoint num="32" id="2018" />
+<TGConnectingPoint num="33" id="2019" />
+<TGConnectingPoint num="34" id="2020" />
+<TGConnectingPoint num="35" id="2021" />
+<TGConnectingPoint num="36" id="2022" />
+<TGConnectingPoint num="37" id="2023" />
+<TGConnectingPoint num="38" id="2024" />
+<TGConnectingPoint num="39" id="2025" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="2028" >
+<cdparam x="363" y="44" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="2027" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="CoffeeMachine" minX="10" maxX="1400" minY="10" maxY="1400" >
+<CONNECTOR type="5102" id="2035" >
+<cdparam x="691" y="288" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2034" />
+<P1  x="699" y="289" id="2240" />
+<P2  x="699" y="316" id="2212" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2033" >
+<father id="2035" num="0" />
+<cdparam x="691" y="328" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2029" />
+<TGConnectingPoint num="1" id="2030" />
+<TGConnectingPoint num="2" id="2031" />
+<TGConnectingPoint num="3" id="2032" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2042" >
+<cdparam x="481" y="501" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to stop state" value="null" />
+<TGConnectingPoint num="0" id="2041" />
+<P1  x="433" y="526" id="2139" />
+<P2  x="323" y="748" id="2368" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2040" >
+<father id="2042" num="0" />
+<cdparam x="420" y="552" />
+<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2036" />
+<TGConnectingPoint num="1" id="2037" />
+<TGConnectingPoint num="2" id="2038" />
+<TGConnectingPoint num="3" id="2039" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = 0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2049" >
+<cdparam x="555" y="559" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2048" />
+<P1  x="317" y="456" id="2164" />
+<P2  x="433" y="496" id="2138" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2047" >
+<father id="2049" num="0" />
+<cdparam x="395" y="448" />
+<sizeparam width="104" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2043" />
+<TGConnectingPoint num="1" id="2044" />
+<TGConnectingPoint num="2" id="2045" />
+<TGConnectingPoint num="3" id="2046" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="coinDelay" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2056" >
+<cdparam x="355" y="545" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to stop state" value="null" />
+<TGConnectingPoint num="0" id="2055" />
+<P1  x="289" y="553" id="2150" />
+<P2  x="289" y="748" id="2360" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2054" >
+<father id="2056" num="0" />
+<cdparam x="284" y="594" />
+<sizeparam width="248" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2050" />
+<TGConnectingPoint num="1" id="2051" />
+<TGConnectingPoint num="2" id="2052" />
+<TGConnectingPoint num="3" id="2053" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="teaMinDelay" />
+<computeMax value="teaMaxDelay" />
+<actions value="nbOfCoins = 0" />
+<actions value="beverageReady()" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2063" >
+<cdparam x="295" y="465" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2062" />
+<P1  x="284" y="476" id="2175" />
+<P2  x="289" y="523" id="2149" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2061" >
+<father id="2063" num="0" />
+<cdparam x="295" y="505" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2057" />
+<TGConnectingPoint num="1" id="2058" />
+<TGConnectingPoint num="2" id="2059" />
+<TGConnectingPoint num="3" id="2060" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2070" >
+<cdparam x="148" y="549" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to stop state" value="null" />
+<TGConnectingPoint num="0" id="2069" />
+<P1  x="117" y="553" id="2128" />
+<P2  x="255" y="748" id="2367" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2068" >
+<father id="2070" num="0" />
+<cdparam x="32" y="587" />
+<sizeparam width="284" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2064" />
+<TGConnectingPoint num="1" id="2065" />
+<TGConnectingPoint num="2" id="2066" />
+<TGConnectingPoint num="3" id="2067" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="coffeeMinDelay" />
+<computeMax value="coffeeMaxDelay" />
+<actions value="nbOfCoins = 0" />
+<actions value="beverageReady()" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2077" >
+<cdparam x="229" y="465" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2076" />
+<P1  x="218" y="476" id="2174" />
+<P2  x="117" y="523" id="2127" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2075" >
+<father id="2077" num="0" />
+<cdparam x="229" y="505" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2071" />
+<TGConnectingPoint num="1" id="2072" />
+<TGConnectingPoint num="2" id="2073" />
+<TGConnectingPoint num="3" id="2074" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2084" >
+<cdparam x="667" y="346" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="2083" />
+<P1  x="699" y="346" id="2213" />
+<P2  x="699" y="381" id="2401" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2082" >
+<father id="2084" num="0" />
+<cdparam x="707" y="368" />
+<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2078" />
+<TGConnectingPoint num="1" id="2079" />
+<TGConnectingPoint num="2" id="2080" />
+<TGConnectingPoint num="3" id="2081" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = 0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2091" >
+<cdparam x="348" y="228" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2090" />
+<P1  x="388" y="208" id="2279" />
+<P2  x="649" y="264" id="2237" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2089" >
+<father id="2091" num="0" />
+<cdparam x="411" y="206" />
+<sizeparam width="104" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2085" />
+<TGConnectingPoint num="1" id="2086" />
+<TGConnectingPoint num="2" id="2087" />
+<TGConnectingPoint num="3" id="2088" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="coinDelay" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2098" >
+<cdparam x="243" y="319" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="2097" />
+<P1  x="277" y="305" id="2224" />
+<P2  x="251" y="436" id="2161" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2096" >
+<father id="2098" num="0" />
+<cdparam x="243" y="359" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2092" />
+<TGConnectingPoint num="1" id="2093" />
+<TGConnectingPoint num="2" id="2094" />
+<TGConnectingPoint num="3" id="2095" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2105" >
+<cdparam x="270" y="224" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2104" />
+<P1  x="270" y="228" id="2289" />
+<P2  x="277" y="275" id="2223" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2103" >
+<father id="2105" num="0" />
+<cdparam x="270" y="264" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2099" />
+<TGConnectingPoint num="1" id="2100" />
+<TGConnectingPoint num="2" id="2101" />
+<TGConnectingPoint num="3" id="2102" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2112" >
+<cdparam x="309" y="160" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="2111" />
+<P1  x="306" y="166" id="2202" />
+<P2  x="309" y="188" id="2276" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2110" >
+<father id="2112" num="0" />
+<cdparam x="328" y="178" />
+<sizeparam width="168" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2106" />
+<TGConnectingPoint num="1" id="2107" />
+<TGConnectingPoint num="2" id="2108" />
+<TGConnectingPoint num="3" id="2109" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="nbOfCoins = nbOfCoins + x" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2119" >
+<cdparam x="303" y="103" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2118" />
+<P1  x="303" y="103" id="2324" />
+<P2  x="306" y="136" id="2201" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2117" >
+<father id="2119" num="0" />
+<cdparam x="303" y="143" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2113" />
+<TGConnectingPoint num="1" id="2114" />
+<TGConnectingPoint num="2" id="2115" />
+<TGConnectingPoint num="3" id="2116" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2126" >
+<cdparam x="303" y="40" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="2125" />
+<P1  x="303" y="40" id="2316" />
+<P2  x="303" y="63" id="2319" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2124" >
+<father id="2126" num="0" />
+<cdparam x="303" y="80" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2120" />
+<TGConnectingPoint num="1" id="2121" />
+<TGConnectingPoint num="2" id="2122" />
+<TGConnectingPoint num="3" id="2123" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5104" id="2137" >
+<cdparam x="47" y="528" />
+<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Send signal" value="pushCoffeeButton()" />
+<TGConnectingPoint num="0" id="2127" />
+<TGConnectingPoint num="1" id="2128" />
+<TGConnectingPoint num="2" id="2129" />
+<TGConnectingPoint num="3" id="2130" />
+<TGConnectingPoint num="4" id="2131" />
+<TGConnectingPoint num="5" id="2132" />
+<TGConnectingPoint num="6" id="2133" />
+<TGConnectingPoint num="7" id="2134" />
+<TGConnectingPoint num="8" id="2135" />
+<TGConnectingPoint num="9" id="2136" />
+<accessibility />
+</COMPONENT>
+
+<COMPONENT type="5103" id="2148" >
+<cdparam x="363" y="501" />
+<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" />
+<TGConnectingPoint num="0" id="2138" />
+<TGConnectingPoint num="1" id="2139" />
+<TGConnectingPoint num="2" id="2140" />
+<TGConnectingPoint num="3" id="2141" />
+<TGConnectingPoint num="4" id="2142" />
+<TGConnectingPoint num="5" id="2143" />
+<TGConnectingPoint num="6" id="2144" />
+<TGConnectingPoint num="7" id="2145" />
+<TGConnectingPoint num="8" id="2146" />
+<TGConnectingPoint num="9" id="2147" />
+<accessibility />
+</COMPONENT>
+
+<COMPONENT type="5104" id="2159" >
+<cdparam x="227" y="528" />
+<sizeparam width="124" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Send signal" value="pushTeaButton()" />
+<TGConnectingPoint num="0" id="2149" />
+<TGConnectingPoint num="1" id="2150" />
+<TGConnectingPoint num="2" id="2151" />
+<TGConnectingPoint num="3" id="2152" />
+<TGConnectingPoint num="4" id="2153" />
+<TGConnectingPoint num="5" id="2154" />
+<TGConnectingPoint num="6" id="2155" />
+<TGConnectingPoint num="7" id="2156" />
+<TGConnectingPoint num="8" id="2157" />
+<TGConnectingPoint num="9" id="2158" />
+<accessibility />
+</COMPONENT>
+
+<COMPONENT type="5106" id="2200" >
+<cdparam x="185" y="436" />
+<sizeparam width="132" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForSelection" />
+<TGConnectingPoint num="0" id="2160" />
+<TGConnectingPoint num="1" id="2161" />
+<TGConnectingPoint num="2" id="2162" />
+<TGConnectingPoint num="3" id="2163" />
+<TGConnectingPoint num="4" id="2164" />
+<TGConnectingPoint num="5" id="2165" />
+<TGConnectingPoint num="6" id="2166" />
+<TGConnectingPoint num="7" id="2167" />
+<TGConnectingPoint num="8" id="2168" />
+<TGConnectingPoint num="9" id="2169" />
+<TGConnectingPoint num="10" id="2170" />
+<TGConnectingPoint num="11" id="2171" />
+<TGConnectingPoint num="12" id="2172" />
+<TGConnectingPoint num="13" id="2173" />
+<TGConnectingPoint num="14" id="2174" />
+<TGConnectingPoint num="15" id="2175" />
+<TGConnectingPoint num="16" id="2176" />
+<TGConnectingPoint num="17" id="2177" />
+<TGConnectingPoint num="18" id="2178" />
+<TGConnectingPoint num="19" id="2179" />
+<TGConnectingPoint num="20" id="2180" />
+<TGConnectingPoint num="21" id="2181" />
+<TGConnectingPoint num="22" id="2182" />
+<TGConnectingPoint num="23" id="2183" />
+<TGConnectingPoint num="24" id="2184" />
+<TGConnectingPoint num="25" id="2185" />
+<TGConnectingPoint num="26" id="2186" />
+<TGConnectingPoint num="27" id="2187" />
+<TGConnectingPoint num="28" id="2188" />
+<TGConnectingPoint num="29" id="2189" />
+<TGConnectingPoint num="30" id="2190" />
+<TGConnectingPoint num="31" id="2191" />
+<TGConnectingPoint num="32" id="2192" />
+<TGConnectingPoint num="33" id="2193" />
+<TGConnectingPoint num="34" id="2194" />
+<TGConnectingPoint num="35" id="2195" />
+<TGConnectingPoint num="36" id="2196" />
+<TGConnectingPoint num="37" id="2197" />
+<TGConnectingPoint num="38" id="2198" />
+<TGConnectingPoint num="39" id="2199" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5104" id="2211" >
+<cdparam x="265" y="141" />
+<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="getCoin(x)" />
+<TGConnectingPoint num="0" id="2201" />
+<TGConnectingPoint num="1" id="2202" />
+<TGConnectingPoint num="2" id="2203" />
+<TGConnectingPoint num="3" id="2204" />
+<TGConnectingPoint num="4" id="2205" />
+<TGConnectingPoint num="5" id="2206" />
+<TGConnectingPoint num="6" id="2207" />
+<TGConnectingPoint num="7" id="2208" />
+<TGConnectingPoint num="8" id="2209" />
+<TGConnectingPoint num="9" id="2210" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="2222" >
+<cdparam x="629" y="321" />
+<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" />
+<TGConnectingPoint num="0" id="2212" />
+<TGConnectingPoint num="1" id="2213" />
+<TGConnectingPoint num="2" id="2214" />
+<TGConnectingPoint num="3" id="2215" />
+<TGConnectingPoint num="4" id="2216" />
+<TGConnectingPoint num="5" id="2217" />
+<TGConnectingPoint num="6" id="2218" />
+<TGConnectingPoint num="7" id="2219" />
+<TGConnectingPoint num="8" id="2220" />
+<TGConnectingPoint num="9" id="2221" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="2233" >
+<cdparam x="236" y="280" />
+<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="getCoin(x)" />
+<TGConnectingPoint num="0" id="2223" />
+<TGConnectingPoint num="1" id="2224" />
+<TGConnectingPoint num="2" id="2225" />
+<TGConnectingPoint num="3" id="2226" />
+<TGConnectingPoint num="4" id="2227" />
+<TGConnectingPoint num="5" id="2228" />
+<TGConnectingPoint num="6" id="2229" />
+<TGConnectingPoint num="7" id="2230" />
+<TGConnectingPoint num="8" id="2231" />
+<TGConnectingPoint num="9" id="2232" />
+<accessibility />
+</COMPONENT>
+
+<COMPONENT type="5106" id="2274" >
+<cdparam x="649" y="239" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="ejectState" />
+<TGConnectingPoint num="0" id="2234" />
+<TGConnectingPoint num="1" id="2235" />
+<TGConnectingPoint num="2" id="2236" />
+<TGConnectingPoint num="3" id="2237" />
+<TGConnectingPoint num="4" id="2238" />
+<TGConnectingPoint num="5" id="2239" />
+<TGConnectingPoint num="6" id="2240" />
+<TGConnectingPoint num="7" id="2241" />
+<TGConnectingPoint num="8" id="2242" />
+<TGConnectingPoint num="9" id="2243" />
+<TGConnectingPoint num="10" id="2244" />
+<TGConnectingPoint num="11" id="2245" />
+<TGConnectingPoint num="12" id="2246" />
+<TGConnectingPoint num="13" id="2247" />
+<TGConnectingPoint num="14" id="2248" />
+<TGConnectingPoint num="15" id="2249" />
+<TGConnectingPoint num="16" id="2250" />
+<TGConnectingPoint num="17" id="2251" />
+<TGConnectingPoint num="18" id="2252" />
+<TGConnectingPoint num="19" id="2253" />
+<TGConnectingPoint num="20" id="2254" />
+<TGConnectingPoint num="21" id="2255" />
+<TGConnectingPoint num="22" id="2256" />
+<TGConnectingPoint num="23" id="2257" />
+<TGConnectingPoint num="24" id="2258" />
+<TGConnectingPoint num="25" id="2259" />
+<TGConnectingPoint num="26" id="2260" />
+<TGConnectingPoint num="27" id="2261" />
+<TGConnectingPoint num="28" id="2262" />
+<TGConnectingPoint num="29" id="2263" />
+<TGConnectingPoint num="30" id="2264" />
+<TGConnectingPoint num="31" id="2265" />
+<TGConnectingPoint num="32" id="2266" />
+<TGConnectingPoint num="33" id="2267" />
+<TGConnectingPoint num="34" id="2268" />
+<TGConnectingPoint num="35" id="2269" />
+<TGConnectingPoint num="36" id="2270" />
+<TGConnectingPoint num="37" id="2271" />
+<TGConnectingPoint num="38" id="2272" />
+<TGConnectingPoint num="39" id="2273" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="2315" >
+<cdparam x="231" y="188" />
+<sizeparam width="157" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForSecondCoin" />
+<TGConnectingPoint num="0" id="2275" />
+<TGConnectingPoint num="1" id="2276" />
+<TGConnectingPoint num="2" id="2277" />
+<TGConnectingPoint num="3" id="2278" />
+<TGConnectingPoint num="4" id="2279" />
+<TGConnectingPoint num="5" id="2280" />
+<TGConnectingPoint num="6" id="2281" />
+<TGConnectingPoint num="7" id="2282" />
+<TGConnectingPoint num="8" id="2283" />
+<TGConnectingPoint num="9" id="2284" />
+<TGConnectingPoint num="10" id="2285" />
+<TGConnectingPoint num="11" id="2286" />
+<TGConnectingPoint num="12" id="2287" />
+<TGConnectingPoint num="13" id="2288" />
+<TGConnectingPoint num="14" id="2289" />
+<TGConnectingPoint num="15" id="2290" />
+<TGConnectingPoint num="16" id="2291" />
+<TGConnectingPoint num="17" id="2292" />
+<TGConnectingPoint num="18" id="2293" />
+<TGConnectingPoint num="19" id="2294" />
+<TGConnectingPoint num="20" id="2295" />
+<TGConnectingPoint num="21" id="2296" />
+<TGConnectingPoint num="22" id="2297" />
+<TGConnectingPoint num="23" id="2298" />
+<TGConnectingPoint num="24" id="2299" />
+<TGConnectingPoint num="25" id="2300" />
+<TGConnectingPoint num="26" id="2301" />
+<TGConnectingPoint num="27" id="2302" />
+<TGConnectingPoint num="28" id="2303" />
+<TGConnectingPoint num="29" id="2304" />
+<TGConnectingPoint num="30" id="2305" />
+<TGConnectingPoint num="31" id="2306" />
+<TGConnectingPoint num="32" id="2307" />
+<TGConnectingPoint num="33" id="2308" />
+<TGConnectingPoint num="34" id="2309" />
+<TGConnectingPoint num="35" id="2310" />
+<TGConnectingPoint num="36" id="2311" />
+<TGConnectingPoint num="37" id="2312" />
+<TGConnectingPoint num="38" id="2313" />
+<TGConnectingPoint num="39" id="2314" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="2317" >
+<cdparam x="296" y="20" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="2316" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="2358" >
+<cdparam x="235" y="63" />
+<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForFirstCoin" />
+<TGConnectingPoint num="0" id="2318" />
+<TGConnectingPoint num="1" id="2319" />
+<TGConnectingPoint num="2" id="2320" />
+<TGConnectingPoint num="3" id="2321" />
+<TGConnectingPoint num="4" id="2322" />
+<TGConnectingPoint num="5" id="2323" />
+<TGConnectingPoint num="6" id="2324" />
+<TGConnectingPoint num="7" id="2325" />
+<TGConnectingPoint num="8" id="2326" />
+<TGConnectingPoint num="9" id="2327" />
+<TGConnectingPoint num="10" id="2328" />
+<TGConnectingPoint num="11" id="2329" />
+<TGConnectingPoint num="12" id="2330" />
+<TGConnectingPoint num="13" id="2331" />
+<TGConnectingPoint num="14" id="2332" />
+<TGConnectingPoint num="15" id="2333" />
+<TGConnectingPoint num="16" id="2334" />
+<TGConnectingPoint num="17" id="2335" />
+<TGConnectingPoint num="18" id="2336" />
+<TGConnectingPoint num="19" id="2337" />
+<TGConnectingPoint num="20" id="2338" />
+<TGConnectingPoint num="21" id="2339" />
+<TGConnectingPoint num="22" id="2340" />
+<TGConnectingPoint num="23" id="2341" />
+<TGConnectingPoint num="24" id="2342" />
+<TGConnectingPoint num="25" id="2343" />
+<TGConnectingPoint num="26" id="2344" />
+<TGConnectingPoint num="27" id="2345" />
+<TGConnectingPoint num="28" id="2346" />
+<TGConnectingPoint num="29" id="2347" />
+<TGConnectingPoint num="30" id="2348" />
+<TGConnectingPoint num="31" id="2349" />
+<TGConnectingPoint num="32" id="2350" />
+<TGConnectingPoint num="33" id="2351" />
+<TGConnectingPoint num="34" id="2352" />
+<TGConnectingPoint num="35" id="2353" />
+<TGConnectingPoint num="36" id="2354" />
+<TGConnectingPoint num="37" id="2355" />
+<TGConnectingPoint num="38" id="2356" />
+<TGConnectingPoint num="39" id="2357" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="2399" >
+<cdparam x="221" y="748" />
+<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForFirstCoin" />
+<TGConnectingPoint num="0" id="2359" />
+<TGConnectingPoint num="1" id="2360" />
+<TGConnectingPoint num="2" id="2361" />
+<TGConnectingPoint num="3" id="2362" />
+<TGConnectingPoint num="4" id="2363" />
+<TGConnectingPoint num="5" id="2364" />
+<TGConnectingPoint num="6" id="2365" />
+<TGConnectingPoint num="7" id="2366" />
+<TGConnectingPoint num="8" id="2367" />
+<TGConnectingPoint num="9" id="2368" />
+<TGConnectingPoint num="10" id="2369" />
+<TGConnectingPoint num="11" id="2370" />
+<TGConnectingPoint num="12" id="2371" />
+<TGConnectingPoint num="13" id="2372" />
+<TGConnectingPoint num="14" id="2373" />
+<TGConnectingPoint num="15" id="2374" />
+<TGConnectingPoint num="16" id="2375" />
+<TGConnectingPoint num="17" id="2376" />
+<TGConnectingPoint num="18" id="2377" />
+<TGConnectingPoint num="19" id="2378" />
+<TGConnectingPoint num="20" id="2379" />
+<TGConnectingPoint num="21" id="2380" />
+<TGConnectingPoint num="22" id="2381" />
+<TGConnectingPoint num="23" id="2382" />
+<TGConnectingPoint num="24" id="2383" />
+<TGConnectingPoint num="25" id="2384" />
+<TGConnectingPoint num="26" id="2385" />
+<TGConnectingPoint num="27" id="2386" />
+<TGConnectingPoint num="28" id="2387" />
+<TGConnectingPoint num="29" id="2388" />
+<TGConnectingPoint num="30" id="2389" />
+<TGConnectingPoint num="31" id="2390" />
+<TGConnectingPoint num="32" id="2391" />
+<TGConnectingPoint num="33" id="2392" />
+<TGConnectingPoint num="34" id="2393" />
+<TGConnectingPoint num="35" id="2394" />
+<TGConnectingPoint num="36" id="2395" />
+<TGConnectingPoint num="37" id="2396" />
+<TGConnectingPoint num="38" id="2397" />
+<TGConnectingPoint num="39" id="2398" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="2440" >
+<cdparam x="631" y="381" />
+<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForFirstCoin" />
+<TGConnectingPoint num="0" id="2400" />
+<TGConnectingPoint num="1" id="2401" />
+<TGConnectingPoint num="2" id="2402" />
+<TGConnectingPoint num="3" id="2403" />
+<TGConnectingPoint num="4" id="2404" />
+<TGConnectingPoint num="5" id="2405" />
+<TGConnectingPoint num="6" id="2406" />
+<TGConnectingPoint num="7" id="2407" />
+<TGConnectingPoint num="8" id="2408" />
+<TGConnectingPoint num="9" id="2409" />
+<TGConnectingPoint num="10" id="2410" />
+<TGConnectingPoint num="11" id="2411" />
+<TGConnectingPoint num="12" id="2412" />
+<TGConnectingPoint num="13" id="2413" />
+<TGConnectingPoint num="14" id="2414" />
+<TGConnectingPoint num="15" id="2415" />
+<TGConnectingPoint num="16" id="2416" />
+<TGConnectingPoint num="17" id="2417" />
+<TGConnectingPoint num="18" id="2418" />
+<TGConnectingPoint num="19" id="2419" />
+<TGConnectingPoint num="20" id="2420" />
+<TGConnectingPoint num="21" id="2421" />
+<TGConnectingPoint num="22" id="2422" />
+<TGConnectingPoint num="23" id="2423" />
+<TGConnectingPoint num="24" id="2424" />
+<TGConnectingPoint num="25" id="2425" />
+<TGConnectingPoint num="26" id="2426" />
+<TGConnectingPoint num="27" id="2427" />
+<TGConnectingPoint num="28" id="2428" />
+<TGConnectingPoint num="29" id="2429" />
+<TGConnectingPoint num="30" id="2430" />
+<TGConnectingPoint num="31" id="2431" />
+<TGConnectingPoint num="32" id="2432" />
+<TGConnectingPoint num="33" id="2433" />
+<TGConnectingPoint num="34" id="2434" />
+<TGConnectingPoint num="35" id="2435" />
+<TGConnectingPoint num="36" id="2436" />
+<TGConnectingPoint num="37" id="2437" />
+<TGConnectingPoint num="38" id="2438" />
+<TGConnectingPoint num="39" id="2439" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="TeaButton" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="2447" >
+<cdparam x="363" y="193" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="2446" />
+<P1  x="363" y="204" id="2463" />
+<P2  x="362" y="257" id="2474" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2445" >
+<father id="2447" num="0" />
+<cdparam x="380" y="228" />
+<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2441" />
+<TGConnectingPoint num="1" id="2442" />
+<TGConnectingPoint num="2" id="2443" />
+<TGConnectingPoint num="3" id="2444" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="mechanicalDelay" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2454" >
+<cdparam x="363" y="150" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2453" />
+<P1  x="363" y="150" id="2520" />
+<P2  x="363" y="174" id="2462" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2452" >
+<father id="2454" num="0" />
+<cdparam x="363" y="190" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2448" />
+<TGConnectingPoint num="1" id="2449" />
+<TGConnectingPoint num="2" id="2450" />
+<TGConnectingPoint num="3" id="2451" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2461" >
+<cdparam x="362" y="101" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="2460" />
+<P1  x="362" y="101" id="2555" />
+<P2  x="363" y="120" id="2515" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2459" >
+<father id="2461" num="0" />
+<cdparam x="362" y="141" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2455" />
+<TGConnectingPoint num="1" id="2456" />
+<TGConnectingPoint num="2" id="2457" />
+<TGConnectingPoint num="3" id="2458" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="2472" >
+<cdparam x="338" y="179" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="push()" />
+<TGConnectingPoint num="0" id="2462" />
+<TGConnectingPoint num="1" id="2463" />
+<TGConnectingPoint num="2" id="2464" />
+<TGConnectingPoint num="3" id="2465" />
+<TGConnectingPoint num="4" id="2466" />
+<TGConnectingPoint num="5" id="2467" />
+<TGConnectingPoint num="6" id="2468" />
+<TGConnectingPoint num="7" id="2469" />
+<TGConnectingPoint num="8" id="2470" />
+<TGConnectingPoint num="9" id="2471" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="2513" >
+<cdparam x="337" y="257" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="2473" />
+<TGConnectingPoint num="1" id="2474" />
+<TGConnectingPoint num="2" id="2475" />
+<TGConnectingPoint num="3" id="2476" />
+<TGConnectingPoint num="4" id="2477" />
+<TGConnectingPoint num="5" id="2478" />
+<TGConnectingPoint num="6" id="2479" />
+<TGConnectingPoint num="7" id="2480" />
+<TGConnectingPoint num="8" id="2481" />
+<TGConnectingPoint num="9" id="2482" />
+<TGConnectingPoint num="10" id="2483" />
+<TGConnectingPoint num="11" id="2484" />
+<TGConnectingPoint num="12" id="2485" />
+<TGConnectingPoint num="13" id="2486" />
+<TGConnectingPoint num="14" id="2487" />
+<TGConnectingPoint num="15" id="2488" />
+<TGConnectingPoint num="16" id="2489" />
+<TGConnectingPoint num="17" id="2490" />
+<TGConnectingPoint num="18" id="2491" />
+<TGConnectingPoint num="19" id="2492" />
+<TGConnectingPoint num="20" id="2493" />
+<TGConnectingPoint num="21" id="2494" />
+<TGConnectingPoint num="22" id="2495" />
+<TGConnectingPoint num="23" id="2496" />
+<TGConnectingPoint num="24" id="2497" />
+<TGConnectingPoint num="25" id="2498" />
+<TGConnectingPoint num="26" id="2499" />
+<TGConnectingPoint num="27" id="2500" />
+<TGConnectingPoint num="28" id="2501" />
+<TGConnectingPoint num="29" id="2502" />
+<TGConnectingPoint num="30" id="2503" />
+<TGConnectingPoint num="31" id="2504" />
+<TGConnectingPoint num="32" id="2505" />
+<TGConnectingPoint num="33" id="2506" />
+<TGConnectingPoint num="34" id="2507" />
+<TGConnectingPoint num="35" id="2508" />
+<TGConnectingPoint num="36" id="2509" />
+<TGConnectingPoint num="37" id="2510" />
+<TGConnectingPoint num="38" id="2511" />
+<TGConnectingPoint num="39" id="2512" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="2554" >
+<cdparam x="338" y="120" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="2514" />
+<TGConnectingPoint num="1" id="2515" />
+<TGConnectingPoint num="2" id="2516" />
+<TGConnectingPoint num="3" id="2517" />
+<TGConnectingPoint num="4" id="2518" />
+<TGConnectingPoint num="5" id="2519" />
+<TGConnectingPoint num="6" id="2520" />
+<TGConnectingPoint num="7" id="2521" />
+<TGConnectingPoint num="8" id="2522" />
+<TGConnectingPoint num="9" id="2523" />
+<TGConnectingPoint num="10" id="2524" />
+<TGConnectingPoint num="11" id="2525" />
+<TGConnectingPoint num="12" id="2526" />
+<TGConnectingPoint num="13" id="2527" />
+<TGConnectingPoint num="14" id="2528" />
+<TGConnectingPoint num="15" id="2529" />
+<TGConnectingPoint num="16" id="2530" />
+<TGConnectingPoint num="17" id="2531" />
+<TGConnectingPoint num="18" id="2532" />
+<TGConnectingPoint num="19" id="2533" />
+<TGConnectingPoint num="20" id="2534" />
+<TGConnectingPoint num="21" id="2535" />
+<TGConnectingPoint num="22" id="2536" />
+<TGConnectingPoint num="23" id="2537" />
+<TGConnectingPoint num="24" id="2538" />
+<TGConnectingPoint num="25" id="2539" />
+<TGConnectingPoint num="26" id="2540" />
+<TGConnectingPoint num="27" id="2541" />
+<TGConnectingPoint num="28" id="2542" />
+<TGConnectingPoint num="29" id="2543" />
+<TGConnectingPoint num="30" id="2544" />
+<TGConnectingPoint num="31" id="2545" />
+<TGConnectingPoint num="32" id="2546" />
+<TGConnectingPoint num="33" id="2547" />
+<TGConnectingPoint num="34" id="2548" />
+<TGConnectingPoint num="35" id="2549" />
+<TGConnectingPoint num="36" id="2550" />
+<TGConnectingPoint num="37" id="2551" />
+<TGConnectingPoint num="38" id="2552" />
+<TGConnectingPoint num="39" id="2553" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="2556" >
+<cdparam x="355" y="81" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="2555" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="2563" >
+<cdparam x="323" y="118" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="2562" />
+<P1  x="323" y="118" id="2636" />
+<P2  x="341" y="200" id="2578" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2561" >
+<father id="2563" num="0" />
+<cdparam x="323" y="158" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2557" />
+<TGConnectingPoint num="1" id="2558" />
+<TGConnectingPoint num="2" id="2559" />
+<TGConnectingPoint num="3" id="2560" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2570" >
+<cdparam x="322" y="69" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="2569" />
+<P1  x="322" y="69" id="2671" />
+<P2  x="323" y="88" id="2631" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2568" >
+<father id="2570" num="0" />
+<cdparam x="322" y="109" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2564" />
+<TGConnectingPoint num="1" id="2565" />
+<TGConnectingPoint num="2" id="2566" />
+<TGConnectingPoint num="3" id="2567" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2577" >
+<cdparam x="365" y="135" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="2576" />
+<P1  x="341" y="230" id="2579" />
+<P2  x="387" y="300" id="2590" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2575" >
+<father id="2577" num="0" />
+<cdparam x="405" y="283" />
+<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2571" />
+<TGConnectingPoint num="1" id="2572" />
+<TGConnectingPoint num="2" id="2573" />
+<TGConnectingPoint num="3" id="2574" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="mechanicalDelay" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="2588" >
+<cdparam x="316" y="205" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="push()" />
+<TGConnectingPoint num="0" id="2578" />
+<TGConnectingPoint num="1" id="2579" />
+<TGConnectingPoint num="2" id="2580" />
+<TGConnectingPoint num="3" id="2581" />
+<TGConnectingPoint num="4" id="2582" />
+<TGConnectingPoint num="5" id="2583" />
+<TGConnectingPoint num="6" id="2584" />
+<TGConnectingPoint num="7" id="2585" />
+<TGConnectingPoint num="8" id="2586" />
+<TGConnectingPoint num="9" id="2587" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="2629" >
+<cdparam x="362" y="300" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="2589" />
+<TGConnectingPoint num="1" id="2590" />
+<TGConnectingPoint num="2" id="2591" />
+<TGConnectingPoint num="3" id="2592" />
+<TGConnectingPoint num="4" id="2593" />
+<TGConnectingPoint num="5" id="2594" />
+<TGConnectingPoint num="6" id="2595" />
+<TGConnectingPoint num="7" id="2596" />
+<TGConnectingPoint num="8" id="2597" />
+<TGConnectingPoint num="9" id="2598" />
+<TGConnectingPoint num="10" id="2599" />
+<TGConnectingPoint num="11" id="2600" />
+<TGConnectingPoint num="12" id="2601" />
+<TGConnectingPoint num="13" id="2602" />
+<TGConnectingPoint num="14" id="2603" />
+<TGConnectingPoint num="15" id="2604" />
+<TGConnectingPoint num="16" id="2605" />
+<TGConnectingPoint num="17" id="2606" />
+<TGConnectingPoint num="18" id="2607" />
+<TGConnectingPoint num="19" id="2608" />
+<TGConnectingPoint num="20" id="2609" />
+<TGConnectingPoint num="21" id="2610" />
+<TGConnectingPoint num="22" id="2611" />
+<TGConnectingPoint num="23" id="2612" />
+<TGConnectingPoint num="24" id="2613" />
+<TGConnectingPoint num="25" id="2614" />
+<TGConnectingPoint num="26" id="2615" />
+<TGConnectingPoint num="27" id="2616" />
+<TGConnectingPoint num="28" id="2617" />
+<TGConnectingPoint num="29" id="2618" />
+<TGConnectingPoint num="30" id="2619" />
+<TGConnectingPoint num="31" id="2620" />
+<TGConnectingPoint num="32" id="2621" />
+<TGConnectingPoint num="33" id="2622" />
+<TGConnectingPoint num="34" id="2623" />
+<TGConnectingPoint num="35" id="2624" />
+<TGConnectingPoint num="36" id="2625" />
+<TGConnectingPoint num="37" id="2626" />
+<TGConnectingPoint num="38" id="2627" />
+<TGConnectingPoint num="39" id="2628" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="2670" >
+<cdparam x="298" y="88" />
+<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="main" />
+<TGConnectingPoint num="0" id="2630" />
+<TGConnectingPoint num="1" id="2631" />
+<TGConnectingPoint num="2" id="2632" />
+<TGConnectingPoint num="3" id="2633" />
+<TGConnectingPoint num="4" id="2634" />
+<TGConnectingPoint num="5" id="2635" />
+<TGConnectingPoint num="6" id="2636" />
+<TGConnectingPoint num="7" id="2637" />
+<TGConnectingPoint num="8" id="2638" />
+<TGConnectingPoint num="9" id="2639" />
+<TGConnectingPoint num="10" id="2640" />
+<TGConnectingPoint num="11" id="2641" />
+<TGConnectingPoint num="12" id="2642" />
+<TGConnectingPoint num="13" id="2643" />
+<TGConnectingPoint num="14" id="2644" />
+<TGConnectingPoint num="15" id="2645" />
+<TGConnectingPoint num="16" id="2646" />
+<TGConnectingPoint num="17" id="2647" />
+<TGConnectingPoint num="18" id="2648" />
+<TGConnectingPoint num="19" id="2649" />
+<TGConnectingPoint num="20" id="2650" />
+<TGConnectingPoint num="21" id="2651" />
+<TGConnectingPoint num="22" id="2652" />
+<TGConnectingPoint num="23" id="2653" />
+<TGConnectingPoint num="24" id="2654" />
+<TGConnectingPoint num="25" id="2655" />
+<TGConnectingPoint num="26" id="2656" />
+<TGConnectingPoint num="27" id="2657" />
+<TGConnectingPoint num="28" id="2658" />
+<TGConnectingPoint num="29" id="2659" />
+<TGConnectingPoint num="30" id="2660" />
+<TGConnectingPoint num="31" id="2661" />
+<TGConnectingPoint num="32" id="2662" />
+<TGConnectingPoint num="33" id="2663" />
+<TGConnectingPoint num="34" id="2664" />
+<TGConnectingPoint num="35" id="2665" />
+<TGConnectingPoint num="36" id="2666" />
+<TGConnectingPoint num="37" id="2667" />
+<TGConnectingPoint num="38" id="2668" />
+<TGConnectingPoint num="39" id="2669" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="2672" >
+<cdparam x="315" y="49" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="2671" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+</Modeling>
+
+
+
+
+</TURTLEGMODELING>
\ No newline at end of file
diff --git a/ttool/src/test/resources/ui/diagram2avatar/input/FutureAirNavigationSystem.xml b/ttool/src/test/resources/ui/diagram2avatar/input/FutureAirNavigationSystem.xml
new file mode 100644
index 0000000000000000000000000000000000000000..33432047e561ab6900695e06701e762832720702
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/input/FutureAirNavigationSystem.xml
@@ -0,0 +1,9021 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<TURTLEGMODELING version="0.98-beta4">
+
+<Modeling type="Avatar Methodology" nameTab="Methodology" >
+<AvatarMethodologyDiagramPanel name="Methodology" minX="10" maxX="1400" minY="10" maxY="900" zoom="1.0" >
+<COMPONENT type="5606" id="5" >
+<cdparam x="460" y="539" />
+<sizeparam width="300" height="70" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TGComponent" value="Prototyping" />
+<TGConnectingPoint num="0" id="1" />
+<TGConnectingPoint num="1" id="2" />
+<TGConnectingPoint num="2" id="3" />
+<TGConnectingPoint num="3" id="4" />
+</COMPONENT>
+
+<COMPONENT type="5604" id="13" >
+<cdparam x="361" y="433" />
+<sizeparam width="305" height="82" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TGComponent" value="Design" />
+<TGConnectingPoint num="0" id="8" />
+<TGConnectingPoint num="1" id="9" />
+<TGConnectingPoint num="2" id="10" />
+<TGConnectingPoint num="3" id="11" />
+<TGConnectingPoint num="4" id="12" />
+</COMPONENT>
+<SUBCOMPONENT type="5607" id="6" >
+<father id="13" num="0" />
+<cdparam x="366" y="473" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="366" maxX="366" minY="473" maxY="473" />
+<infoparam name="value " value="Design_unlossy" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5607" id="7" >
+<father id="13" num="1" />
+<cdparam x="366" y="488" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="366" maxX="366" minY="488" maxY="488" />
+<infoparam name="value " value="Design_lossy" />
+</SUBCOMPONENT>
+
+<COMPONENT type="5603" id="21" >
+<cdparam x="259" y="340" />
+<sizeparam width="205" height="80" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TGComponent" value="Analysis" />
+<TGConnectingPoint num="0" id="16" />
+<TGConnectingPoint num="1" id="17" />
+<TGConnectingPoint num="2" id="18" />
+<TGConnectingPoint num="3" id="19" />
+<TGConnectingPoint num="4" id="20" />
+</COMPONENT>
+<SUBCOMPONENT type="5607" id="14" >
+<father id="21" num="0" />
+<cdparam x="264" y="380" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="264" maxX="264" minY="380" maxY="380" />
+<infoparam name="value " value="Analysis_unlossy" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5607" id="15" >
+<father id="21" num="1" />
+<cdparam x="264" y="395" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="264" maxX="264" minY="395" maxY="395" />
+<infoparam name="value " value="Analysis_lossy" />
+</SUBCOMPONENT>
+
+<COMPONENT type="5602" id="29" >
+<cdparam x="160" y="239" />
+<sizeparam width="200" height="70" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TGComponent" value="Requirements" />
+<TGConnectingPoint num="0" id="23" />
+<TGConnectingPoint num="1" id="24" />
+<TGConnectingPoint num="2" id="25" />
+<TGConnectingPoint num="3" id="26" />
+<TGConnectingPoint num="4" id="27" />
+<TGConnectingPoint num="5" id="28" />
+</COMPONENT>
+<SUBCOMPONENT type="5607" id="22" >
+<father id="29" num="0" />
+<cdparam x="165" y="279" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="165" maxX="165" minY="279" maxY="279" />
+<infoparam name="value " value="Requirements_Properties" />
+</SUBCOMPONENT>
+
+<COMPONENT type="5601" id="35" >
+<cdparam x="50" y="136" />
+<sizeparam width="234" height="83" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TGComponent" value="Assumptions" />
+<TGConnectingPoint num="0" id="31" />
+<TGConnectingPoint num="1" id="32" />
+<TGConnectingPoint num="2" id="33" />
+<TGConnectingPoint num="3" id="34" />
+</COMPONENT>
+<SUBCOMPONENT type="5607" id="30" >
+<father id="35" num="0" />
+<cdparam x="55" y="176" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="55" maxX="55" minY="176" maxY="176" />
+<infoparam name="value " value="Assumptions" />
+</SUBCOMPONENT>
+
+<COMPONENT type="5605" id="41" >
+<cdparam x="110" y="439" />
+<sizeparam width="180" height="70" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TGComponent" value="Properties" />
+<TGConnectingPoint num="0" id="37" />
+<TGConnectingPoint num="1" id="38" />
+<TGConnectingPoint num="2" id="39" />
+<TGConnectingPoint num="3" id="40" />
+</COMPONENT>
+<SUBCOMPONENT type="5607" id="36" >
+<father id="41" num="0" />
+<cdparam x="115" y="479" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="205" maxX="205" minY="440" maxY="440" />
+<infoparam name="value " value="Properties" />
+</SUBCOMPONENT>
+
+<COMPONENT type="301" id="58" >
+<cdparam x="16" y="10" />
+<sizeparam width="357" height="87" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="   
+    Author: Pierre de Saqui-Sannes (pdss@isae-supaero.fr)
+  
+    Last update: February 10, 2017
+    
+    TTool: java ttool.jar -experimentatal -nocolor
+ 
+" />
+<TGConnectingPoint num="0" id="42" />
+<TGConnectingPoint num="1" id="43" />
+<TGConnectingPoint num="2" id="44" />
+<TGConnectingPoint num="3" id="45" />
+<TGConnectingPoint num="4" id="46" />
+<TGConnectingPoint num="5" id="47" />
+<TGConnectingPoint num="6" id="48" />
+<TGConnectingPoint num="7" id="49" />
+<TGConnectingPoint num="8" id="50" />
+<TGConnectingPoint num="9" id="51" />
+<TGConnectingPoint num="10" id="52" />
+<TGConnectingPoint num="11" id="53" />
+<TGConnectingPoint num="12" id="54" />
+<TGConnectingPoint num="13" id="55" />
+<TGConnectingPoint num="14" id="56" />
+<TGConnectingPoint num="15" id="57" />
+<extraparam>
+<Line value="   " />
+<Line value="    Author: Pierre de Saqui-Sannes (pdss@isae-supaero.fr)" />
+<Line value="  " />
+<Line value="    Last update: February 10, 2017" />
+<Line value="    " />
+<Line value="    TTool: java ttool.jar -experimentatal -nocolor" />
+<Line value=" " />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="5608" id="60" >
+<cdparam x="180" y="309" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="59" />
+<P1  x="180" y="309" id="25" />
+<P2  x="146" y="439" id="37" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5608" id="64" >
+<cdparam x="420" y="509" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="62" />
+<TGConnectingPoint num="1" id="63" />
+<P1  x="422" y="515" id="9" />
+<P2  x="460" y="574" id="1" />
+<Point x="422" y="574" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="61" >
+<father id="64" num="0" />
+<cdparam x="422" y="574" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5608" id="68" >
+<cdparam x="320" y="409" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="66" />
+<TGConnectingPoint num="1" id="67" />
+<P1  x="320" y="420" id="17" />
+<P2  x="361" y="474" id="8" />
+<Point x="320" y="474" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="65" >
+<father id="68" num="0" />
+<cdparam x="320" y="474" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5608" id="72" >
+<cdparam x="220" y="309" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="70" />
+<TGConnectingPoint num="1" id="71" />
+<P1  x="220" y="309" id="24" />
+<P2  x="259" y="380" id="16" />
+<Point x="220" y="380" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="69" >
+<father id="72" num="0" />
+<cdparam x="220" y="380" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5608" id="76" >
+<cdparam x="120" y="209" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="74" />
+<TGConnectingPoint num="1" id="75" />
+<P1  x="120" y="219" id="31" />
+<P2  x="160" y="274" id="23" />
+<Point x="120" y="274" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="73" >
+<father id="76" num="0" />
+<cdparam x="120" y="274" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+
+</AvatarMethodologyDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="Avatar Requirement" nameTab="Requirements_Properties" >
+<AvatarRDPanel name="Original Specification" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" >
+<COMPONENT type="301" id="93" >
+<cdparam x="10" y="10" />
+<sizeparam width="663" height="255" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="UML Note" value="
+Original specification of the Initial Notification procedure
+
+
+When initiated either by flight crew action or an automatic trigger, an ATS Facilities Notification Contact message
+ is sent and Avionics Timer ATST1 is set. The aircraft AFN application then awaits an AFN Acknowledgement 
+message from ground.
+
+Subject to prior agreement with the service provider, the supplementary address field of 
+the ATS Facilities Notification Contact Message may contain an abbreviation of the ATC center address
+ to which the message should be delivered (such as the corresponding IATA or ICAO code).
+
+If a successful AFN Acnowledgement message is received within the period of time of ATST1, 
+a positive indication is given to the flight crew and timer ATST1 is cancelled. 
+The AFN acknowledgement messsage will contain the full 7-character address of the ground AFN end-system. 
+This address should be used in all subsequent AFN messages.
+
+If the aircraft AFN receives an AFN acknowledgement message with a non-zero reason code 
+or timer ATST1 expires, an error indication is given to the the flight crew.
+
+     
+" />
+<TGConnectingPoint num="0" id="77" />
+<TGConnectingPoint num="1" id="78" />
+<TGConnectingPoint num="2" id="79" />
+<TGConnectingPoint num="3" id="80" />
+<TGConnectingPoint num="4" id="81" />
+<TGConnectingPoint num="5" id="82" />
+<TGConnectingPoint num="6" id="83" />
+<TGConnectingPoint num="7" id="84" />
+<TGConnectingPoint num="8" id="85" />
+<TGConnectingPoint num="9" id="86" />
+<TGConnectingPoint num="10" id="87" />
+<TGConnectingPoint num="11" id="88" />
+<TGConnectingPoint num="12" id="89" />
+<TGConnectingPoint num="13" id="90" />
+<TGConnectingPoint num="14" id="91" />
+<TGConnectingPoint num="15" id="92" />
+<extraparam>
+<Line value="" />
+<Line value="Original specification of the Initial Notification procedure" />
+<Line value="" />
+<Line value="" />
+<Line value="When initiated either by flight crew action or an automatic trigger, an ATS Facilities Notification Contact message" />
+<Line value=" is sent and Avionics Timer ATST1 is set. The aircraft AFN application then awaits an AFN Acknowledgement " />
+<Line value="message from ground." />
+<Line value="" />
+<Line value="Subject to prior agreement with the service provider, the supplementary address field of " />
+<Line value="the ATS Facilities Notification Contact Message may contain an abbreviation of the ATC center address" />
+<Line value=" to which the message should be delivered (such as the corresponding IATA or ICAO code)." />
+<Line value="" />
+<Line value="If a successful AFN Acnowledgement message is received within the period of time of ATST1, " />
+<Line value="a positive indication is given to the flight crew and timer ATST1 is cancelled. " />
+<Line value="The AFN acknowledgement messsage will contain the full 7-character address of the ground AFN end-system. " />
+<Line value="This address should be used in all subsequent AFN messages." />
+<Line value="" />
+<Line value="If the aircraft AFN receives an AFN acknowledgement message with a non-zero reason code " />
+<Line value="or timer ATST1 expires, an error indication is given to the the flight crew." />
+<Line value="" />
+<Line value="     " />
+</extraparam>
+</COMPONENT>
+
+
+</AvatarRDPanel>
+
+<AvatarRDPanel name="RequirementDiagram" minX="10" maxX="1400" minY="10" maxY="900" zoom="1.0" >
+<COMPONENT type="5200" id="137" >
+<cdparam x="411" y="121" />
+<sizeparam width="385" height="99" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="153" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Requirement" value="ProtocolCharacteristics" />
+<TGConnectingPoint num="0" id="94" />
+<TGConnectingPoint num="1" id="95" />
+<TGConnectingPoint num="2" id="96" />
+<TGConnectingPoint num="3" id="97" />
+<TGConnectingPoint num="4" id="98" />
+<TGConnectingPoint num="5" id="99" />
+<TGConnectingPoint num="6" id="100" />
+<TGConnectingPoint num="7" id="101" />
+<TGConnectingPoint num="8" id="102" />
+<TGConnectingPoint num="9" id="103" />
+<TGConnectingPoint num="10" id="104" />
+<TGConnectingPoint num="11" id="105" />
+<TGConnectingPoint num="12" id="106" />
+<TGConnectingPoint num="13" id="107" />
+<TGConnectingPoint num="14" id="108" />
+<TGConnectingPoint num="15" id="109" />
+<TGConnectingPoint num="16" id="110" />
+<TGConnectingPoint num="17" id="111" />
+<TGConnectingPoint num="18" id="112" />
+<TGConnectingPoint num="19" id="113" />
+<TGConnectingPoint num="20" id="114" />
+<TGConnectingPoint num="21" id="115" />
+<TGConnectingPoint num="22" id="116" />
+<TGConnectingPoint num="23" id="117" />
+<TGConnectingPoint num="24" id="118" />
+<TGConnectingPoint num="25" id="119" />
+<TGConnectingPoint num="26" id="120" />
+<TGConnectingPoint num="27" id="121" />
+<TGConnectingPoint num="28" id="122" />
+<TGConnectingPoint num="29" id="123" />
+<TGConnectingPoint num="30" id="124" />
+<TGConnectingPoint num="31" id="125" />
+<TGConnectingPoint num="32" id="126" />
+<TGConnectingPoint num="33" id="127" />
+<TGConnectingPoint num="34" id="128" />
+<TGConnectingPoint num="35" id="129" />
+<TGConnectingPoint num="36" id="130" />
+<TGConnectingPoint num="37" id="131" />
+<TGConnectingPoint num="38" id="132" />
+<TGConnectingPoint num="39" id="133" />
+<TGConnectingPoint num="40" id="134" />
+<TGConnectingPoint num="41" id="135" />
+<TGConnectingPoint num="42" id="136" />
+<extraparam>
+<textline data="The IN procedure is a confirmed connection setup" />
+<textline data="procedure initiated by the pilot and developed on " />
+<textline data="top of a lossy network." />
+<kind data="Functional" />
+<criticality data="Low" />
+<reqType data="0" />
+<id data="PROTOCOL" />
+<satisfied data="false" />
+<verified data="false" />
+<attackTreeNode data="" />
+<violatedAction data="" />
+<referenceElements data="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5200" id="181" >
+<cdparam x="10" y="121" />
+<sizeparam width="310" height="97" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="223" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Requirement" value="FANS_Initial_Notification_Procedure" />
+<TGConnectingPoint num="0" id="138" />
+<TGConnectingPoint num="1" id="139" />
+<TGConnectingPoint num="2" id="140" />
+<TGConnectingPoint num="3" id="141" />
+<TGConnectingPoint num="4" id="142" />
+<TGConnectingPoint num="5" id="143" />
+<TGConnectingPoint num="6" id="144" />
+<TGConnectingPoint num="7" id="145" />
+<TGConnectingPoint num="8" id="146" />
+<TGConnectingPoint num="9" id="147" />
+<TGConnectingPoint num="10" id="148" />
+<TGConnectingPoint num="11" id="149" />
+<TGConnectingPoint num="12" id="150" />
+<TGConnectingPoint num="13" id="151" />
+<TGConnectingPoint num="14" id="152" />
+<TGConnectingPoint num="15" id="153" />
+<TGConnectingPoint num="16" id="154" />
+<TGConnectingPoint num="17" id="155" />
+<TGConnectingPoint num="18" id="156" />
+<TGConnectingPoint num="19" id="157" />
+<TGConnectingPoint num="20" id="158" />
+<TGConnectingPoint num="21" id="159" />
+<TGConnectingPoint num="22" id="160" />
+<TGConnectingPoint num="23" id="161" />
+<TGConnectingPoint num="24" id="162" />
+<TGConnectingPoint num="25" id="163" />
+<TGConnectingPoint num="26" id="164" />
+<TGConnectingPoint num="27" id="165" />
+<TGConnectingPoint num="28" id="166" />
+<TGConnectingPoint num="29" id="167" />
+<TGConnectingPoint num="30" id="168" />
+<TGConnectingPoint num="31" id="169" />
+<TGConnectingPoint num="32" id="170" />
+<TGConnectingPoint num="33" id="171" />
+<TGConnectingPoint num="34" id="172" />
+<TGConnectingPoint num="35" id="173" />
+<TGConnectingPoint num="36" id="174" />
+<TGConnectingPoint num="37" id="175" />
+<TGConnectingPoint num="38" id="176" />
+<TGConnectingPoint num="39" id="177" />
+<TGConnectingPoint num="40" id="178" />
+<TGConnectingPoint num="41" id="179" />
+<TGConnectingPoint num="42" id="180" />
+<extraparam>
+<textline data="The connection set up procedure" />
+<textline data="shall implement the Initial Notification" />
+<textline data="procedure defined by the FANS specification." />
+<kind data="Functional" />
+<criticality data="High" />
+<reqType data="0" />
+<id data="IN" />
+<satisfied data="false" />
+<verified data="false" />
+<attackTreeNode data="" />
+<violatedAction data="" />
+<referenceElements data="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5200" id="225" >
+<cdparam x="10" y="10" />
+<sizeparam width="314" height="81" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="142" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Requirement" value="GeneralRequirement" />
+<TGConnectingPoint num="0" id="182" />
+<TGConnectingPoint num="1" id="183" />
+<TGConnectingPoint num="2" id="184" />
+<TGConnectingPoint num="3" id="185" />
+<TGConnectingPoint num="4" id="186" />
+<TGConnectingPoint num="5" id="187" />
+<TGConnectingPoint num="6" id="188" />
+<TGConnectingPoint num="7" id="189" />
+<TGConnectingPoint num="8" id="190" />
+<TGConnectingPoint num="9" id="191" />
+<TGConnectingPoint num="10" id="192" />
+<TGConnectingPoint num="11" id="193" />
+<TGConnectingPoint num="12" id="194" />
+<TGConnectingPoint num="13" id="195" />
+<TGConnectingPoint num="14" id="196" />
+<TGConnectingPoint num="15" id="197" />
+<TGConnectingPoint num="16" id="198" />
+<TGConnectingPoint num="17" id="199" />
+<TGConnectingPoint num="18" id="200" />
+<TGConnectingPoint num="19" id="201" />
+<TGConnectingPoint num="20" id="202" />
+<TGConnectingPoint num="21" id="203" />
+<TGConnectingPoint num="22" id="204" />
+<TGConnectingPoint num="23" id="205" />
+<TGConnectingPoint num="24" id="206" />
+<TGConnectingPoint num="25" id="207" />
+<TGConnectingPoint num="26" id="208" />
+<TGConnectingPoint num="27" id="209" />
+<TGConnectingPoint num="28" id="210" />
+<TGConnectingPoint num="29" id="211" />
+<TGConnectingPoint num="30" id="212" />
+<TGConnectingPoint num="31" id="213" />
+<TGConnectingPoint num="32" id="214" />
+<TGConnectingPoint num="33" id="215" />
+<TGConnectingPoint num="34" id="216" />
+<TGConnectingPoint num="35" id="217" />
+<TGConnectingPoint num="36" id="218" />
+<TGConnectingPoint num="37" id="219" />
+<TGConnectingPoint num="38" id="220" />
+<TGConnectingPoint num="39" id="221" />
+<TGConnectingPoint num="40" id="222" />
+<TGConnectingPoint num="41" id="223" />
+<TGConnectingPoint num="42" id="224" />
+<extraparam>
+<textline data="The system shall enable an aircraft " />
+<textline data="to set up a connection with a control tower." />
+<kind data="Functional" />
+<criticality data="High" />
+<reqType data="0" />
+<id data="GR" />
+<satisfied data="false" />
+<verified data="false" />
+<attackTreeNode data="" />
+<violatedAction data="" />
+<referenceElements data="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5207" id="241" >
+<cdparam x="610" y="271" />
+<sizeparam width="183" height="31" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="151" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="AvatarElementReference" value="Lossy_Analysis_Design" />
+<TGConnectingPoint num="0" id="226" />
+<TGConnectingPoint num="1" id="227" />
+<TGConnectingPoint num="2" id="228" />
+<TGConnectingPoint num="3" id="229" />
+<TGConnectingPoint num="4" id="230" />
+<TGConnectingPoint num="5" id="231" />
+<TGConnectingPoint num="6" id="232" />
+<TGConnectingPoint num="7" id="233" />
+<TGConnectingPoint num="8" id="234" />
+<TGConnectingPoint num="9" id="235" />
+<TGConnectingPoint num="10" id="236" />
+<TGConnectingPoint num="11" id="237" />
+<TGConnectingPoint num="12" id="238" />
+<TGConnectingPoint num="13" id="239" />
+<TGConnectingPoint num="14" id="240" />
+</COMPONENT>
+
+<COMPONENT type="5207" id="257" >
+<cdparam x="416" y="271" />
+<sizeparam width="183" height="31" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="163" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="AvatarElementReference" value="Unlossy_Analysis_Design" />
+<TGConnectingPoint num="0" id="242" />
+<TGConnectingPoint num="1" id="243" />
+<TGConnectingPoint num="2" id="244" />
+<TGConnectingPoint num="3" id="245" />
+<TGConnectingPoint num="4" id="246" />
+<TGConnectingPoint num="5" id="247" />
+<TGConnectingPoint num="6" id="248" />
+<TGConnectingPoint num="7" id="249" />
+<TGConnectingPoint num="8" id="250" />
+<TGConnectingPoint num="9" id="251" />
+<TGConnectingPoint num="10" id="252" />
+<TGConnectingPoint num="11" id="253" />
+<TGConnectingPoint num="12" id="254" />
+<TGConnectingPoint num="13" id="255" />
+<TGConnectingPoint num="14" id="256" />
+</COMPONENT>
+
+<CONNECTOR type="5208" id="259" >
+<cdparam x="708" y="271" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;satisfy&gt;&gt;" />
+<TGConnectingPoint num="0" id="258" />
+<P1  x="701" y="271" id="233" />
+<P2  x="699" y="220" id="133" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5208" id="261" >
+<cdparam x="494" y="296" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;satisfy&gt;&gt;" />
+<TGConnectingPoint num="0" id="260" />
+<P1  x="507" y="271" id="249" />
+<P2  x="507" y="220" id="131" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5206" id="263" >
+<cdparam x="396" y="175" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;refine&gt;&gt;" />
+<TGConnectingPoint num="0" id="262" />
+<P1  x="411" y="170" id="95" />
+<P2  x="320" y="169" id="142" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5206" id="265" >
+<cdparam x="146" y="120" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;refine&gt;&gt;" />
+<TGConnectingPoint num="0" id="264" />
+<P1  x="165" y="121" id="145" />
+<P2  x="167" y="91" id="192" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</AvatarRDPanel>
+
+<AvatarPDPanel name="Property" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" >
+<CONNECTOR type="5312" id="267" >
+<cdparam x="444" y="383" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="reg" />
+<TGConnectingPoint num="0" id="266" />
+<P1  x="444" y="383" id="306" />
+<P2  x="444" y="431" id="310" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5312" id="269" >
+<cdparam x="475" y="306" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="reg" />
+<TGConnectingPoint num="0" id="268" />
+<P1  x="475" y="294" id="316" />
+<P2  x="464" y="343" id="301" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5312" id="271" >
+<cdparam x="423" y="175" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="reg" />
+<TGConnectingPoint num="0" id="270" />
+<P1  x="424" y="175" id="349" />
+<P2  x="424" y="343" id="299" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5311" id="273" >
+<cdparam x="179" y="234" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="" />
+<TGConnectingPoint num="0" id="272" />
+<P1  x="179" y="234" id="372" />
+<P2  x="445" y="234" id="319" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5311" id="275" >
+<cdparam x="175" y="105" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="" />
+<TGConnectingPoint num="0" id="274" />
+<P1  x="175" y="105" id="392" />
+<P2  x="445" y="214" id="317" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5311" id="277" >
+<cdparam x="175" y="158" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="" />
+<TGConnectingPoint num="0" id="276" />
+<P1  x="175" y="158" id="359" />
+<P2  x="379" y="125" id="341" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5311" id="279" >
+<cdparam x="175" y="95" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="" />
+<TGConnectingPoint num="0" id="278" />
+<P1  x="175" y="95" id="385" />
+<P2  x="379" y="95" id="338" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<COMPONENT type="301" id="296" >
+<cdparam x="72" y="433" />
+<sizeparam width="302" height="51" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="UML Note" value=" 
+ Any connection request will eventually complete,
+ either successfully or unsuccessfully.
+ 
+" />
+<TGConnectingPoint num="0" id="280" />
+<TGConnectingPoint num="1" id="281" />
+<TGConnectingPoint num="2" id="282" />
+<TGConnectingPoint num="3" id="283" />
+<TGConnectingPoint num="4" id="284" />
+<TGConnectingPoint num="5" id="285" />
+<TGConnectingPoint num="6" id="286" />
+<TGConnectingPoint num="7" id="287" />
+<TGConnectingPoint num="8" id="288" />
+<TGConnectingPoint num="9" id="289" />
+<TGConnectingPoint num="10" id="290" />
+<TGConnectingPoint num="11" id="291" />
+<TGConnectingPoint num="12" id="292" />
+<TGConnectingPoint num="13" id="293" />
+<TGConnectingPoint num="14" id="294" />
+<TGConnectingPoint num="15" id="295" />
+<extraparam>
+<Line value=" " />
+<Line value=" Any connection request will eventually complete," />
+<Line value=" either successfully or unsuccessfully." />
+<Line value=" " />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5309" id="309" >
+<cdparam x="404" y="343" />
+<sizeparam width="80" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="OR" />
+<TGConnectingPoint num="0" id="297" />
+<TGConnectingPoint num="1" id="298" />
+<TGConnectingPoint num="2" id="299" />
+<TGConnectingPoint num="3" id="300" />
+<TGConnectingPoint num="4" id="301" />
+<TGConnectingPoint num="5" id="302" />
+<TGConnectingPoint num="6" id="303" />
+<TGConnectingPoint num="7" id="304" />
+<TGConnectingPoint num="8" id="305" />
+<TGConnectingPoint num="9" id="306" />
+<TGConnectingPoint num="10" id="307" />
+<TGConnectingPoint num="11" id="308" />
+</COMPONENT>
+
+<COMPONENT type="5308" id="314" >
+<cdparam x="383" y="431" />
+<sizeparam width="122" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="TerminationProperty" />
+<TGConnectingPoint num="0" id="310" />
+<TGConnectingPoint num="1" id="311" />
+<TGConnectingPoint num="2" id="312" />
+<TGConnectingPoint num="3" id="313" />
+<extraparam>
+<liveness data="0" />
+<not data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5301" id="335" >
+<cdparam x="445" y="194" />
+<sizeparam width="60" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="&lt;&lt;LC&gt;&gt;" />
+<TGConnectingPoint num="0" id="315" />
+<TGConnectingPoint num="1" id="316" />
+<TGConnectingPoint num="2" id="317" />
+<TGConnectingPoint num="3" id="318" />
+<TGConnectingPoint num="4" id="319" />
+<TGConnectingPoint num="5" id="320" />
+<TGConnectingPoint num="6" id="321" />
+<TGConnectingPoint num="7" id="322" />
+<TGConnectingPoint num="8" id="323" />
+<TGConnectingPoint num="9" id="324" />
+<TGConnectingPoint num="10" id="325" />
+<TGConnectingPoint num="11" id="326" />
+<TGConnectingPoint num="12" id="327" />
+<TGConnectingPoint num="13" id="328" />
+<TGConnectingPoint num="14" id="329" />
+<TGConnectingPoint num="15" id="330" />
+<TGConnectingPoint num="16" id="331" />
+<TGConnectingPoint num="17" id="332" />
+<TGConnectingPoint num="18" id="333" />
+<TGConnectingPoint num="19" id="334" />
+</COMPONENT>
+
+<COMPONENT type="5301" id="356" >
+<cdparam x="379" y="75" />
+<sizeparam width="60" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="&lt;&lt;LC&gt;&gt;" />
+<TGConnectingPoint num="0" id="336" />
+<TGConnectingPoint num="1" id="337" />
+<TGConnectingPoint num="2" id="338" />
+<TGConnectingPoint num="3" id="339" />
+<TGConnectingPoint num="4" id="340" />
+<TGConnectingPoint num="5" id="341" />
+<TGConnectingPoint num="6" id="342" />
+<TGConnectingPoint num="7" id="343" />
+<TGConnectingPoint num="8" id="344" />
+<TGConnectingPoint num="9" id="345" />
+<TGConnectingPoint num="10" id="346" />
+<TGConnectingPoint num="11" id="347" />
+<TGConnectingPoint num="12" id="348" />
+<TGConnectingPoint num="13" id="349" />
+<TGConnectingPoint num="14" id="350" />
+<TGConnectingPoint num="15" id="351" />
+<TGConnectingPoint num="16" id="352" />
+<TGConnectingPoint num="17" id="353" />
+<TGConnectingPoint num="18" id="354" />
+<TGConnectingPoint num="19" id="355" />
+</COMPONENT>
+
+<COMPONENT type="5300" id="420" >
+<cdparam x="23" y="18" />
+<sizeparam width="214" height="280" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Block0" value="Pilot" />
+<TGConnectingPoint num="0" id="396" />
+<TGConnectingPoint num="1" id="397" />
+<TGConnectingPoint num="2" id="398" />
+<TGConnectingPoint num="3" id="399" />
+<TGConnectingPoint num="4" id="400" />
+<TGConnectingPoint num="5" id="401" />
+<TGConnectingPoint num="6" id="402" />
+<TGConnectingPoint num="7" id="403" />
+<TGConnectingPoint num="8" id="404" />
+<TGConnectingPoint num="9" id="405" />
+<TGConnectingPoint num="10" id="406" />
+<TGConnectingPoint num="11" id="407" />
+<TGConnectingPoint num="12" id="408" />
+<TGConnectingPoint num="13" id="409" />
+<TGConnectingPoint num="14" id="410" />
+<TGConnectingPoint num="15" id="411" />
+<TGConnectingPoint num="16" id="412" />
+<TGConnectingPoint num="17" id="413" />
+<TGConnectingPoint num="18" id="414" />
+<TGConnectingPoint num="19" id="415" />
+<TGConnectingPoint num="20" id="416" />
+<TGConnectingPoint num="21" id="417" />
+<TGConnectingPoint num="22" id="418" />
+<TGConnectingPoint num="23" id="419" />
+</COMPONENT>
+<SUBCOMPONENT type="5304" id="369" >
+<father id="420" num="0" />
+<cdparam x="75" y="138" />
+<sizeparam width="100" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="114" minY="0" maxY="240" />
+<infoparam name="TGComponent" value="INconconf" />
+<TGConnectingPoint num="0" id="357" />
+<TGConnectingPoint num="1" id="358" />
+<TGConnectingPoint num="2" id="359" />
+<TGConnectingPoint num="3" id="360" />
+<TGConnectingPoint num="4" id="361" />
+<TGConnectingPoint num="5" id="362" />
+<TGConnectingPoint num="6" id="363" />
+<TGConnectingPoint num="7" id="364" />
+<TGConnectingPoint num="8" id="365" />
+<TGConnectingPoint num="9" id="366" />
+<TGConnectingPoint num="10" id="367" />
+<TGConnectingPoint num="11" id="368" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5304" id="382" >
+<father id="420" num="1" />
+<cdparam x="79" y="214" />
+<sizeparam width="100" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="114" minY="0" maxY="240" />
+<infoparam name="TGComponent" value="INerror" />
+<TGConnectingPoint num="0" id="370" />
+<TGConnectingPoint num="1" id="371" />
+<TGConnectingPoint num="2" id="372" />
+<TGConnectingPoint num="3" id="373" />
+<TGConnectingPoint num="4" id="374" />
+<TGConnectingPoint num="5" id="375" />
+<TGConnectingPoint num="6" id="376" />
+<TGConnectingPoint num="7" id="377" />
+<TGConnectingPoint num="8" id="378" />
+<TGConnectingPoint num="9" id="379" />
+<TGConnectingPoint num="10" id="380" />
+<TGConnectingPoint num="11" id="381" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5304" id="395" >
+<father id="420" num="2" />
+<cdparam x="75" y="75" />
+<sizeparam width="100" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="114" minY="0" maxY="240" />
+<infoparam name="TGComponent" value="INconreq" />
+<TGConnectingPoint num="0" id="383" />
+<TGConnectingPoint num="1" id="384" />
+<TGConnectingPoint num="2" id="385" />
+<TGConnectingPoint num="3" id="386" />
+<TGConnectingPoint num="4" id="387" />
+<TGConnectingPoint num="5" id="388" />
+<TGConnectingPoint num="6" id="389" />
+<TGConnectingPoint num="7" id="390" />
+<TGConnectingPoint num="8" id="391" />
+<TGConnectingPoint num="9" id="392" />
+<TGConnectingPoint num="10" id="393" />
+<TGConnectingPoint num="11" id="394" />
+</SUBCOMPONENT>
+
+
+</AvatarPDPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="Avatar MAD" nameTab="Assumptions" >
+<AvatarMADPanel name="Assumptions_users" minX="10" maxX="1900" minY="10" maxY="900" zoom="1.0" >
+<COMPONENT type="5250" id="452" >
+<cdparam x="314" y="10" />
+<sizeparam width="312" height="174" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="164" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="Assumption" value="Rendez_Vous_Acceptors" />
+<TGConnectingPoint num="0" id="421" />
+<TGConnectingPoint num="1" id="422" />
+<TGConnectingPoint num="2" id="423" />
+<TGConnectingPoint num="3" id="424" />
+<TGConnectingPoint num="4" id="425" />
+<TGConnectingPoint num="5" id="426" />
+<TGConnectingPoint num="6" id="427" />
+<TGConnectingPoint num="7" id="428" />
+<TGConnectingPoint num="8" id="429" />
+<TGConnectingPoint num="9" id="430" />
+<TGConnectingPoint num="10" id="431" />
+<TGConnectingPoint num="11" id="432" />
+<TGConnectingPoint num="12" id="433" />
+<TGConnectingPoint num="13" id="434" />
+<TGConnectingPoint num="14" id="435" />
+<TGConnectingPoint num="15" id="436" />
+<TGConnectingPoint num="16" id="437" />
+<TGConnectingPoint num="17" id="438" />
+<TGConnectingPoint num="18" id="439" />
+<TGConnectingPoint num="19" id="440" />
+<TGConnectingPoint num="20" id="441" />
+<TGConnectingPoint num="21" id="442" />
+<TGConnectingPoint num="22" id="443" />
+<TGConnectingPoint num="23" id="444" />
+<TGConnectingPoint num="24" id="445" />
+<TGConnectingPoint num="25" id="446" />
+<TGConnectingPoint num="26" id="447" />
+<TGConnectingPoint num="27" id="448" />
+<TGConnectingPoint num="28" id="449" />
+<TGConnectingPoint num="29" id="450" />
+<TGConnectingPoint num="30" id="451" />
+<extraparam>
+<textline data="To keep the model of the user applications" />
+<textline data="as general as possible, the state machine" />
+<textline data="of the pilot (resp. of the controller) accepts all " />
+<textline data="the rendezvous offers from the board-level" />
+<textline data="protocol (resp. the ground-level protocol)." />
+<textline data="In other words, the user-level applications" />
+<textline data="are modeled as rendezvous acceptors." />
+<type data="1" />
+<durability data="1" />
+<source data="3" />
+<status data="1" />
+<limitation data="3" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5250" id="484" >
+<cdparam x="57" y="82" />
+<sizeparam width="188" height="30" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="55" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="Assumption" value="Users" />
+<TGConnectingPoint num="0" id="453" />
+<TGConnectingPoint num="1" id="454" />
+<TGConnectingPoint num="2" id="455" />
+<TGConnectingPoint num="3" id="456" />
+<TGConnectingPoint num="4" id="457" />
+<TGConnectingPoint num="5" id="458" />
+<TGConnectingPoint num="6" id="459" />
+<TGConnectingPoint num="7" id="460" />
+<TGConnectingPoint num="8" id="461" />
+<TGConnectingPoint num="9" id="462" />
+<TGConnectingPoint num="10" id="463" />
+<TGConnectingPoint num="11" id="464" />
+<TGConnectingPoint num="12" id="465" />
+<TGConnectingPoint num="13" id="466" />
+<TGConnectingPoint num="14" id="467" />
+<TGConnectingPoint num="15" id="468" />
+<TGConnectingPoint num="16" id="469" />
+<TGConnectingPoint num="17" id="470" />
+<TGConnectingPoint num="18" id="471" />
+<TGConnectingPoint num="19" id="472" />
+<TGConnectingPoint num="20" id="473" />
+<TGConnectingPoint num="21" id="474" />
+<TGConnectingPoint num="22" id="475" />
+<TGConnectingPoint num="23" id="476" />
+<TGConnectingPoint num="24" id="477" />
+<TGConnectingPoint num="25" id="478" />
+<TGConnectingPoint num="26" id="479" />
+<TGConnectingPoint num="27" id="480" />
+<TGConnectingPoint num="28" id="481" />
+<TGConnectingPoint num="29" id="482" />
+<TGConnectingPoint num="30" id="483" />
+<extraparam>
+<textline data="This assumption and its derived assumptions" />
+<textline data="address the users of the FANS protocol layer." />
+<type data="1" />
+<durability data="1" />
+<source data="3" />
+<status data="1" />
+<limitation data="3" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5252" id="512" >
+<cdparam x="627" y="301" />
+<sizeparam width="101" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="47" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="AvatarElementReference" value="Pilot" />
+<TGConnectingPoint num="0" id="485" />
+<TGConnectingPoint num="1" id="486" />
+<TGConnectingPoint num="2" id="487" />
+<TGConnectingPoint num="3" id="488" />
+<TGConnectingPoint num="4" id="489" />
+<TGConnectingPoint num="5" id="490" />
+<TGConnectingPoint num="6" id="491" />
+<TGConnectingPoint num="7" id="492" />
+<TGConnectingPoint num="8" id="493" />
+<TGConnectingPoint num="9" id="494" />
+<TGConnectingPoint num="10" id="495" />
+<TGConnectingPoint num="11" id="496" />
+<TGConnectingPoint num="12" id="497" />
+<TGConnectingPoint num="13" id="498" />
+<TGConnectingPoint num="14" id="499" />
+<TGConnectingPoint num="15" id="500" />
+<TGConnectingPoint num="16" id="501" />
+<TGConnectingPoint num="17" id="502" />
+<TGConnectingPoint num="18" id="503" />
+<TGConnectingPoint num="19" id="504" />
+<TGConnectingPoint num="20" id="505" />
+<TGConnectingPoint num="21" id="506" />
+<TGConnectingPoint num="22" id="507" />
+<TGConnectingPoint num="23" id="508" />
+<TGConnectingPoint num="24" id="509" />
+<TGConnectingPoint num="25" id="510" />
+<TGConnectingPoint num="26" id="511" />
+</COMPONENT>
+
+<COMPONENT type="5252" id="540" >
+<cdparam x="489" y="301" />
+<sizeparam width="122" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="79" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="AvatarElementReference" value="Controller" />
+<TGConnectingPoint num="0" id="513" />
+<TGConnectingPoint num="1" id="514" />
+<TGConnectingPoint num="2" id="515" />
+<TGConnectingPoint num="3" id="516" />
+<TGConnectingPoint num="4" id="517" />
+<TGConnectingPoint num="5" id="518" />
+<TGConnectingPoint num="6" id="519" />
+<TGConnectingPoint num="7" id="520" />
+<TGConnectingPoint num="8" id="521" />
+<TGConnectingPoint num="9" id="522" />
+<TGConnectingPoint num="10" id="523" />
+<TGConnectingPoint num="11" id="524" />
+<TGConnectingPoint num="12" id="525" />
+<TGConnectingPoint num="13" id="526" />
+<TGConnectingPoint num="14" id="527" />
+<TGConnectingPoint num="15" id="528" />
+<TGConnectingPoint num="16" id="529" />
+<TGConnectingPoint num="17" id="530" />
+<TGConnectingPoint num="18" id="531" />
+<TGConnectingPoint num="19" id="532" />
+<TGConnectingPoint num="20" id="533" />
+<TGConnectingPoint num="21" id="534" />
+<TGConnectingPoint num="22" id="535" />
+<TGConnectingPoint num="23" id="536" />
+<TGConnectingPoint num="24" id="537" />
+<TGConnectingPoint num="25" id="538" />
+<TGConnectingPoint num="26" id="539" />
+</COMPONENT>
+
+<COMPONENT type="5251" id="568" >
+<cdparam x="300" y="234" />
+<sizeparam width="152" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="110" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="AvatarDiagramReference" value="Design_unlossy" />
+<TGConnectingPoint num="0" id="541" />
+<TGConnectingPoint num="1" id="542" />
+<TGConnectingPoint num="2" id="543" />
+<TGConnectingPoint num="3" id="544" />
+<TGConnectingPoint num="4" id="545" />
+<TGConnectingPoint num="5" id="546" />
+<TGConnectingPoint num="6" id="547" />
+<TGConnectingPoint num="7" id="548" />
+<TGConnectingPoint num="8" id="549" />
+<TGConnectingPoint num="9" id="550" />
+<TGConnectingPoint num="10" id="551" />
+<TGConnectingPoint num="11" id="552" />
+<TGConnectingPoint num="12" id="553" />
+<TGConnectingPoint num="13" id="554" />
+<TGConnectingPoint num="14" id="555" />
+<TGConnectingPoint num="15" id="556" />
+<TGConnectingPoint num="16" id="557" />
+<TGConnectingPoint num="17" id="558" />
+<TGConnectingPoint num="18" id="559" />
+<TGConnectingPoint num="19" id="560" />
+<TGConnectingPoint num="20" id="561" />
+<TGConnectingPoint num="21" id="562" />
+<TGConnectingPoint num="22" id="563" />
+<TGConnectingPoint num="23" id="564" />
+<TGConnectingPoint num="24" id="565" />
+<TGConnectingPoint num="25" id="566" />
+<TGConnectingPoint num="26" id="567" />
+</COMPONENT>
+
+<COMPONENT type="5251" id="596" >
+<cdparam x="473" y="234" />
+<sizeparam width="152" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="96" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="AvatarDiagramReference" value="Design_lossy" />
+<TGConnectingPoint num="0" id="569" />
+<TGConnectingPoint num="1" id="570" />
+<TGConnectingPoint num="2" id="571" />
+<TGConnectingPoint num="3" id="572" />
+<TGConnectingPoint num="4" id="573" />
+<TGConnectingPoint num="5" id="574" />
+<TGConnectingPoint num="6" id="575" />
+<TGConnectingPoint num="7" id="576" />
+<TGConnectingPoint num="8" id="577" />
+<TGConnectingPoint num="9" id="578" />
+<TGConnectingPoint num="10" id="579" />
+<TGConnectingPoint num="11" id="580" />
+<TGConnectingPoint num="12" id="581" />
+<TGConnectingPoint num="13" id="582" />
+<TGConnectingPoint num="14" id="583" />
+<TGConnectingPoint num="15" id="584" />
+<TGConnectingPoint num="16" id="585" />
+<TGConnectingPoint num="17" id="586" />
+<TGConnectingPoint num="18" id="587" />
+<TGConnectingPoint num="19" id="588" />
+<TGConnectingPoint num="20" id="589" />
+<TGConnectingPoint num="21" id="590" />
+<TGConnectingPoint num="22" id="591" />
+<TGConnectingPoint num="23" id="592" />
+<TGConnectingPoint num="24" id="593" />
+<TGConnectingPoint num="25" id="594" />
+<TGConnectingPoint num="26" id="595" />
+</COMPONENT>
+
+<COMPONENT type="5252" id="624" >
+<cdparam x="357" y="303" />
+<sizeparam width="101" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="47" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="AvatarElementReference" value="Pilot" />
+<TGConnectingPoint num="0" id="597" />
+<TGConnectingPoint num="1" id="598" />
+<TGConnectingPoint num="2" id="599" />
+<TGConnectingPoint num="3" id="600" />
+<TGConnectingPoint num="4" id="601" />
+<TGConnectingPoint num="5" id="602" />
+<TGConnectingPoint num="6" id="603" />
+<TGConnectingPoint num="7" id="604" />
+<TGConnectingPoint num="8" id="605" />
+<TGConnectingPoint num="9" id="606" />
+<TGConnectingPoint num="10" id="607" />
+<TGConnectingPoint num="11" id="608" />
+<TGConnectingPoint num="12" id="609" />
+<TGConnectingPoint num="13" id="610" />
+<TGConnectingPoint num="14" id="611" />
+<TGConnectingPoint num="15" id="612" />
+<TGConnectingPoint num="16" id="613" />
+<TGConnectingPoint num="17" id="614" />
+<TGConnectingPoint num="18" id="615" />
+<TGConnectingPoint num="19" id="616" />
+<TGConnectingPoint num="20" id="617" />
+<TGConnectingPoint num="21" id="618" />
+<TGConnectingPoint num="22" id="619" />
+<TGConnectingPoint num="23" id="620" />
+<TGConnectingPoint num="24" id="621" />
+<TGConnectingPoint num="25" id="622" />
+<TGConnectingPoint num="26" id="623" />
+</COMPONENT>
+
+<COMPONENT type="5252" id="652" >
+<cdparam x="225" y="302" />
+<sizeparam width="122" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="79" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" />
+<infoparam name="AvatarElementReference" value="Controller" />
+<TGConnectingPoint num="0" id="625" />
+<TGConnectingPoint num="1" id="626" />
+<TGConnectingPoint num="2" id="627" />
+<TGConnectingPoint num="3" id="628" />
+<TGConnectingPoint num="4" id="629" />
+<TGConnectingPoint num="5" id="630" />
+<TGConnectingPoint num="6" id="631" />
+<TGConnectingPoint num="7" id="632" />
+<TGConnectingPoint num="8" id="633" />
+<TGConnectingPoint num="9" id="634" />
+<TGConnectingPoint num="10" id="635" />
+<TGConnectingPoint num="11" id="636" />
+<TGConnectingPoint num="12" id="637" />
+<TGConnectingPoint num="13" id="638" />
+<TGConnectingPoint num="14" id="639" />
+<TGConnectingPoint num="15" id="640" />
+<TGConnectingPoint num="16" id="641" />
+<TGConnectingPoint num="17" id="642" />
+<TGConnectingPoint num="18" id="643" />
+<TGConnectingPoint num="19" id="644" />
+<TGConnectingPoint num="20" id="645" />
+<TGConnectingPoint num="21" id="646" />
+<TGConnectingPoint num="22" id="647" />
+<TGConnectingPoint num="23" id="648" />
+<TGConnectingPoint num="24" id="649" />
+<TGConnectingPoint num="25" id="650" />
+<TGConnectingPoint num="26" id="651" />
+</COMPONENT>
+
+<CONNECTOR type="5255" id="654" >
+<cdparam x="392" y="184" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;impact&gt;&gt;" />
+<TGConnectingPoint num="0" id="653" />
+<P1  x="392" y="184" id="442" />
+<P2  x="376" y="234" id="548" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5257" id="656" >
+<cdparam x="286" y="302" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<TGConnectingPoint num="0" id="655" />
+<P1  x="286" y="302" id="632" />
+<P2  x="338" y="264" id="550" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5257" id="658" >
+<cdparam x="407" y="303" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<TGConnectingPoint num="0" id="657" />
+<P1  x="407" y="303" id="604" />
+<P2  x="414" y="264" id="552" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5253" id="660" >
+<cdparam x="212" y="209" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;composition&gt;&gt;" />
+<TGConnectingPoint num="0" id="659" />
+<P1  x="314" y="97" id="422" />
+<P2  x="245" y="97" id="457" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5257" id="662" >
+<cdparam x="681" y="368" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<TGConnectingPoint num="0" id="661" />
+<P1  x="550" y="301" id="520" />
+<P2  x="511" y="264" id="578" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5257" id="664" >
+<cdparam x="681" y="321" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<TGConnectingPoint num="0" id="663" />
+<P1  x="677" y="301" id="492" />
+<P2  x="587" y="264" id="580" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5255" id="666" >
+<cdparam x="368" y="339" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;impact&gt;&gt;" />
+<TGConnectingPoint num="0" id="665" />
+<P1  x="548" y="184" id="444" />
+<P2  x="549" y="234" id="576" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</AvatarMADPanel>
+
+<AvatarMADPanel name="Assumptions_protocol_layer" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" >
+<COMPONENT type="5250" id="698" >
+<cdparam x="253" y="192" />
+<sizeparam width="451" height="122" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="192" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Assumption" value="Message_Loss_Compensation" />
+<TGConnectingPoint num="0" id="667" />
+<TGConnectingPoint num="1" id="668" />
+<TGConnectingPoint num="2" id="669" />
+<TGConnectingPoint num="3" id="670" />
+<TGConnectingPoint num="4" id="671" />
+<TGConnectingPoint num="5" id="672" />
+<TGConnectingPoint num="6" id="673" />
+<TGConnectingPoint num="7" id="674" />
+<TGConnectingPoint num="8" id="675" />
+<TGConnectingPoint num="9" id="676" />
+<TGConnectingPoint num="10" id="677" />
+<TGConnectingPoint num="11" id="678" />
+<TGConnectingPoint num="12" id="679" />
+<TGConnectingPoint num="13" id="680" />
+<TGConnectingPoint num="14" id="681" />
+<TGConnectingPoint num="15" id="682" />
+<TGConnectingPoint num="16" id="683" />
+<TGConnectingPoint num="17" id="684" />
+<TGConnectingPoint num="18" id="685" />
+<TGConnectingPoint num="19" id="686" />
+<TGConnectingPoint num="20" id="687" />
+<TGConnectingPoint num="21" id="688" />
+<TGConnectingPoint num="22" id="689" />
+<TGConnectingPoint num="23" id="690" />
+<TGConnectingPoint num="24" id="691" />
+<TGConnectingPoint num="25" id="692" />
+<TGConnectingPoint num="26" id="693" />
+<TGConnectingPoint num="27" id="694" />
+<TGConnectingPoint num="28" id="695" />
+<TGConnectingPoint num="29" id="696" />
+<TGConnectingPoint num="30" id="697" />
+<extraparam>
+<textline data="Only CCs may be lost." />
+<textline data="The protocol bounds retransmissions to 3." />
+<textline data="Would the procedure fail, the pilot and the controller will be informed." />
+<type data="0" />
+<durability data="2" />
+<source data="3" />
+<status data="1" />
+<limitation data="4" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5250" id="730" >
+<cdparam x="19" y="67" />
+<sizeparam width="184" height="30" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="106" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Assumption" value="Protocol_Layer" />
+<TGConnectingPoint num="0" id="699" />
+<TGConnectingPoint num="1" id="700" />
+<TGConnectingPoint num="2" id="701" />
+<TGConnectingPoint num="3" id="702" />
+<TGConnectingPoint num="4" id="703" />
+<TGConnectingPoint num="5" id="704" />
+<TGConnectingPoint num="6" id="705" />
+<TGConnectingPoint num="7" id="706" />
+<TGConnectingPoint num="8" id="707" />
+<TGConnectingPoint num="9" id="708" />
+<TGConnectingPoint num="10" id="709" />
+<TGConnectingPoint num="11" id="710" />
+<TGConnectingPoint num="12" id="711" />
+<TGConnectingPoint num="13" id="712" />
+<TGConnectingPoint num="14" id="713" />
+<TGConnectingPoint num="15" id="714" />
+<TGConnectingPoint num="16" id="715" />
+<TGConnectingPoint num="17" id="716" />
+<TGConnectingPoint num="18" id="717" />
+<TGConnectingPoint num="19" id="718" />
+<TGConnectingPoint num="20" id="719" />
+<TGConnectingPoint num="21" id="720" />
+<TGConnectingPoint num="22" id="721" />
+<TGConnectingPoint num="23" id="722" />
+<TGConnectingPoint num="24" id="723" />
+<TGConnectingPoint num="25" id="724" />
+<TGConnectingPoint num="26" id="725" />
+<TGConnectingPoint num="27" id="726" />
+<TGConnectingPoint num="28" id="727" />
+<TGConnectingPoint num="29" id="728" />
+<TGConnectingPoint num="30" id="729" />
+<extraparam>
+<textline data="Assumption description:" />
+<textline data="Double-click to edit" />
+<type data="0" />
+<durability data="0" />
+<source data="0" />
+<status data="0" />
+<limitation data="0" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5250" id="762" >
+<cdparam x="250" y="22" />
+<sizeparam width="454" height="105" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="217" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Assumption" value="Temporal_Ordering_Of_Messages" />
+<TGConnectingPoint num="0" id="731" />
+<TGConnectingPoint num="1" id="732" />
+<TGConnectingPoint num="2" id="733" />
+<TGConnectingPoint num="3" id="734" />
+<TGConnectingPoint num="4" id="735" />
+<TGConnectingPoint num="5" id="736" />
+<TGConnectingPoint num="6" id="737" />
+<TGConnectingPoint num="7" id="738" />
+<TGConnectingPoint num="8" id="739" />
+<TGConnectingPoint num="9" id="740" />
+<TGConnectingPoint num="10" id="741" />
+<TGConnectingPoint num="11" id="742" />
+<TGConnectingPoint num="12" id="743" />
+<TGConnectingPoint num="13" id="744" />
+<TGConnectingPoint num="14" id="745" />
+<TGConnectingPoint num="15" id="746" />
+<TGConnectingPoint num="16" id="747" />
+<TGConnectingPoint num="17" id="748" />
+<TGConnectingPoint num="18" id="749" />
+<TGConnectingPoint num="19" id="750" />
+<TGConnectingPoint num="20" id="751" />
+<TGConnectingPoint num="21" id="752" />
+<TGConnectingPoint num="22" id="753" />
+<TGConnectingPoint num="23" id="754" />
+<TGConnectingPoint num="24" id="755" />
+<TGConnectingPoint num="25" id="756" />
+<TGConnectingPoint num="26" id="757" />
+<TGConnectingPoint num="27" id="758" />
+<TGConnectingPoint num="28" id="759" />
+<TGConnectingPoint num="29" id="760" />
+<TGConnectingPoint num="30" id="761" />
+<extraparam>
+<textline data="Message parameters such as the tower&apos;s address are" />
+<textline data=" not represented. This contributes to make reachability" />
+<textline data="analysis converge." />
+<type data="0" />
+<durability data="1" />
+<source data="3" />
+<status data="1" />
+<limitation data="4" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5251" id="790" >
+<cdparam x="386" y="358" />
+<sizeparam width="152" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="110" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="AvatarDiagramReference" value="Design_unlossy" />
+<TGConnectingPoint num="0" id="763" />
+<TGConnectingPoint num="1" id="764" />
+<TGConnectingPoint num="2" id="765" />
+<TGConnectingPoint num="3" id="766" />
+<TGConnectingPoint num="4" id="767" />
+<TGConnectingPoint num="5" id="768" />
+<TGConnectingPoint num="6" id="769" />
+<TGConnectingPoint num="7" id="770" />
+<TGConnectingPoint num="8" id="771" />
+<TGConnectingPoint num="9" id="772" />
+<TGConnectingPoint num="10" id="773" />
+<TGConnectingPoint num="11" id="774" />
+<TGConnectingPoint num="12" id="775" />
+<TGConnectingPoint num="13" id="776" />
+<TGConnectingPoint num="14" id="777" />
+<TGConnectingPoint num="15" id="778" />
+<TGConnectingPoint num="16" id="779" />
+<TGConnectingPoint num="17" id="780" />
+<TGConnectingPoint num="18" id="781" />
+<TGConnectingPoint num="19" id="782" />
+<TGConnectingPoint num="20" id="783" />
+<TGConnectingPoint num="21" id="784" />
+<TGConnectingPoint num="22" id="785" />
+<TGConnectingPoint num="23" id="786" />
+<TGConnectingPoint num="24" id="787" />
+<TGConnectingPoint num="25" id="788" />
+<TGConnectingPoint num="26" id="789" />
+</COMPONENT>
+
+<COMPONENT type="5252" id="818" >
+<cdparam x="443" y="427" />
+<sizeparam width="101" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="47" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="AvatarElementReference" value="Pilot" />
+<TGConnectingPoint num="0" id="791" />
+<TGConnectingPoint num="1" id="792" />
+<TGConnectingPoint num="2" id="793" />
+<TGConnectingPoint num="3" id="794" />
+<TGConnectingPoint num="4" id="795" />
+<TGConnectingPoint num="5" id="796" />
+<TGConnectingPoint num="6" id="797" />
+<TGConnectingPoint num="7" id="798" />
+<TGConnectingPoint num="8" id="799" />
+<TGConnectingPoint num="9" id="800" />
+<TGConnectingPoint num="10" id="801" />
+<TGConnectingPoint num="11" id="802" />
+<TGConnectingPoint num="12" id="803" />
+<TGConnectingPoint num="13" id="804" />
+<TGConnectingPoint num="14" id="805" />
+<TGConnectingPoint num="15" id="806" />
+<TGConnectingPoint num="16" id="807" />
+<TGConnectingPoint num="17" id="808" />
+<TGConnectingPoint num="18" id="809" />
+<TGConnectingPoint num="19" id="810" />
+<TGConnectingPoint num="20" id="811" />
+<TGConnectingPoint num="21" id="812" />
+<TGConnectingPoint num="22" id="813" />
+<TGConnectingPoint num="23" id="814" />
+<TGConnectingPoint num="24" id="815" />
+<TGConnectingPoint num="25" id="816" />
+<TGConnectingPoint num="26" id="817" />
+</COMPONENT>
+
+<COMPONENT type="5252" id="846" >
+<cdparam x="311" y="426" />
+<sizeparam width="122" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="79" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="AvatarElementReference" value="Controller" />
+<TGConnectingPoint num="0" id="819" />
+<TGConnectingPoint num="1" id="820" />
+<TGConnectingPoint num="2" id="821" />
+<TGConnectingPoint num="3" id="822" />
+<TGConnectingPoint num="4" id="823" />
+<TGConnectingPoint num="5" id="824" />
+<TGConnectingPoint num="6" id="825" />
+<TGConnectingPoint num="7" id="826" />
+<TGConnectingPoint num="8" id="827" />
+<TGConnectingPoint num="9" id="828" />
+<TGConnectingPoint num="10" id="829" />
+<TGConnectingPoint num="11" id="830" />
+<TGConnectingPoint num="12" id="831" />
+<TGConnectingPoint num="13" id="832" />
+<TGConnectingPoint num="14" id="833" />
+<TGConnectingPoint num="15" id="834" />
+<TGConnectingPoint num="16" id="835" />
+<TGConnectingPoint num="17" id="836" />
+<TGConnectingPoint num="18" id="837" />
+<TGConnectingPoint num="19" id="838" />
+<TGConnectingPoint num="20" id="839" />
+<TGConnectingPoint num="21" id="840" />
+<TGConnectingPoint num="22" id="841" />
+<TGConnectingPoint num="23" id="842" />
+<TGConnectingPoint num="24" id="843" />
+<TGConnectingPoint num="25" id="844" />
+<TGConnectingPoint num="26" id="845" />
+</COMPONENT>
+
+<CONNECTOR type="5255" id="848" >
+<cdparam x="478" y="314" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;impact&gt;&gt;" />
+<TGConnectingPoint num="0" id="847" />
+<P1  x="478" y="314" id="689" />
+<P2  x="462" y="358" id="770" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5254" id="850" >
+<cdparam x="474" y="127" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;versioning&gt;&gt;" />
+<TGConnectingPoint num="0" id="849" />
+<P1  x="477" y="127" id="741" />
+<P2  x="478" y="192" id="674" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<oldVersion data="1" />
+<newVersion data="2" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="5253" id="852" >
+<cdparam x="250" y="73" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;composition&gt;&gt;" />
+<TGConnectingPoint num="0" id="851" />
+<P1  x="250" y="74" id="732" />
+<P2  x="203" y="74" id="702" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5257" id="854" >
+<cdparam x="372" y="426" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<TGConnectingPoint num="0" id="853" />
+<P1  x="372" y="426" id="826" />
+<P2  x="424" y="388" id="772" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5257" id="856" >
+<cdparam x="493" y="427" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<TGConnectingPoint num="0" id="855" />
+<P1  x="493" y="427" id="798" />
+<P2  x="500" y="388" id="774" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</AvatarMADPanel>
+
+<AvatarMADPanel name="Assumptions_underlying_network" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" >
+<COMPONENT type="5250" id="888" >
+<cdparam x="249" y="11" />
+<sizeparam width="360" height="125" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="109" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Assumption" value="PerfectMedium" />
+<TGConnectingPoint num="0" id="857" />
+<TGConnectingPoint num="1" id="858" />
+<TGConnectingPoint num="2" id="859" />
+<TGConnectingPoint num="3" id="860" />
+<TGConnectingPoint num="4" id="861" />
+<TGConnectingPoint num="5" id="862" />
+<TGConnectingPoint num="6" id="863" />
+<TGConnectingPoint num="7" id="864" />
+<TGConnectingPoint num="8" id="865" />
+<TGConnectingPoint num="9" id="866" />
+<TGConnectingPoint num="10" id="867" />
+<TGConnectingPoint num="11" id="868" />
+<TGConnectingPoint num="12" id="869" />
+<TGConnectingPoint num="13" id="870" />
+<TGConnectingPoint num="14" id="871" />
+<TGConnectingPoint num="15" id="872" />
+<TGConnectingPoint num="16" id="873" />
+<TGConnectingPoint num="17" id="874" />
+<TGConnectingPoint num="18" id="875" />
+<TGConnectingPoint num="19" id="876" />
+<TGConnectingPoint num="20" id="877" />
+<TGConnectingPoint num="21" id="878" />
+<TGConnectingPoint num="22" id="879" />
+<TGConnectingPoint num="23" id="880" />
+<TGConnectingPoint num="24" id="881" />
+<TGConnectingPoint num="25" id="882" />
+<TGConnectingPoint num="26" id="883" />
+<TGConnectingPoint num="27" id="884" />
+<TGConnectingPoint num="28" id="885" />
+<TGConnectingPoint num="29" id="886" />
+<TGConnectingPoint num="30" id="887" />
+<extraparam>
+<textline data="The network will never corrupt or duplicate messages. " />
+<textline data="Nor it will desequence messages." />
+<textline data="Transmission delay = 0 in both sense." />
+<type data="0" />
+<durability data="1" />
+<source data="3" />
+<status data="1" />
+<limitation data="3" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5250" id="920" >
+<cdparam x="10" y="35" />
+<sizeparam width="172" height="30" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="71" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Assumption" value="Network" />
+<TGConnectingPoint num="0" id="889" />
+<TGConnectingPoint num="1" id="890" />
+<TGConnectingPoint num="2" id="891" />
+<TGConnectingPoint num="3" id="892" />
+<TGConnectingPoint num="4" id="893" />
+<TGConnectingPoint num="5" id="894" />
+<TGConnectingPoint num="6" id="895" />
+<TGConnectingPoint num="7" id="896" />
+<TGConnectingPoint num="8" id="897" />
+<TGConnectingPoint num="9" id="898" />
+<TGConnectingPoint num="10" id="899" />
+<TGConnectingPoint num="11" id="900" />
+<TGConnectingPoint num="12" id="901" />
+<TGConnectingPoint num="13" id="902" />
+<TGConnectingPoint num="14" id="903" />
+<TGConnectingPoint num="15" id="904" />
+<TGConnectingPoint num="16" id="905" />
+<TGConnectingPoint num="17" id="906" />
+<TGConnectingPoint num="18" id="907" />
+<TGConnectingPoint num="19" id="908" />
+<TGConnectingPoint num="20" id="909" />
+<TGConnectingPoint num="21" id="910" />
+<TGConnectingPoint num="22" id="911" />
+<TGConnectingPoint num="23" id="912" />
+<TGConnectingPoint num="24" id="913" />
+<TGConnectingPoint num="25" id="914" />
+<TGConnectingPoint num="26" id="915" />
+<TGConnectingPoint num="27" id="916" />
+<TGConnectingPoint num="28" id="917" />
+<TGConnectingPoint num="29" id="918" />
+<TGConnectingPoint num="30" id="919" />
+<extraparam>
+<textline data="Assumption description:" />
+<textline data="Double-click to edit" />
+<type data="0" />
+<durability data="0" />
+<source data="0" />
+<status data="0" />
+<limitation data="0" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5251" id="948" >
+<cdparam x="521" y="316" />
+<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="110" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="AvatarDiagramReference" value="Design_unlossy" />
+<TGConnectingPoint num="0" id="921" />
+<TGConnectingPoint num="1" id="922" />
+<TGConnectingPoint num="2" id="923" />
+<TGConnectingPoint num="3" id="924" />
+<TGConnectingPoint num="4" id="925" />
+<TGConnectingPoint num="5" id="926" />
+<TGConnectingPoint num="6" id="927" />
+<TGConnectingPoint num="7" id="928" />
+<TGConnectingPoint num="8" id="929" />
+<TGConnectingPoint num="9" id="930" />
+<TGConnectingPoint num="10" id="931" />
+<TGConnectingPoint num="11" id="932" />
+<TGConnectingPoint num="12" id="933" />
+<TGConnectingPoint num="13" id="934" />
+<TGConnectingPoint num="14" id="935" />
+<TGConnectingPoint num="15" id="936" />
+<TGConnectingPoint num="16" id="937" />
+<TGConnectingPoint num="17" id="938" />
+<TGConnectingPoint num="18" id="939" />
+<TGConnectingPoint num="19" id="940" />
+<TGConnectingPoint num="20" id="941" />
+<TGConnectingPoint num="21" id="942" />
+<TGConnectingPoint num="22" id="943" />
+<TGConnectingPoint num="23" id="944" />
+<TGConnectingPoint num="24" id="945" />
+<TGConnectingPoint num="25" id="946" />
+<TGConnectingPoint num="26" id="947" />
+</COMPONENT>
+
+<COMPONENT type="5251" id="976" >
+<cdparam x="91" y="309" />
+<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="110" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="AvatarDiagramReference" value="Design_unlossy" />
+<TGConnectingPoint num="0" id="949" />
+<TGConnectingPoint num="1" id="950" />
+<TGConnectingPoint num="2" id="951" />
+<TGConnectingPoint num="3" id="952" />
+<TGConnectingPoint num="4" id="953" />
+<TGConnectingPoint num="5" id="954" />
+<TGConnectingPoint num="6" id="955" />
+<TGConnectingPoint num="7" id="956" />
+<TGConnectingPoint num="8" id="957" />
+<TGConnectingPoint num="9" id="958" />
+<TGConnectingPoint num="10" id="959" />
+<TGConnectingPoint num="11" id="960" />
+<TGConnectingPoint num="12" id="961" />
+<TGConnectingPoint num="13" id="962" />
+<TGConnectingPoint num="14" id="963" />
+<TGConnectingPoint num="15" id="964" />
+<TGConnectingPoint num="16" id="965" />
+<TGConnectingPoint num="17" id="966" />
+<TGConnectingPoint num="18" id="967" />
+<TGConnectingPoint num="19" id="968" />
+<TGConnectingPoint num="20" id="969" />
+<TGConnectingPoint num="21" id="970" />
+<TGConnectingPoint num="22" id="971" />
+<TGConnectingPoint num="23" id="972" />
+<TGConnectingPoint num="24" id="973" />
+<TGConnectingPoint num="25" id="974" />
+<TGConnectingPoint num="26" id="975" />
+</COMPONENT>
+
+<COMPONENT type="5250" id="1008" >
+<cdparam x="441" y="159" />
+<sizeparam width="311" height="119" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="108" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Assumption" value="Lossy_Network" />
+<TGConnectingPoint num="0" id="977" />
+<TGConnectingPoint num="1" id="978" />
+<TGConnectingPoint num="2" id="979" />
+<TGConnectingPoint num="3" id="980" />
+<TGConnectingPoint num="4" id="981" />
+<TGConnectingPoint num="5" id="982" />
+<TGConnectingPoint num="6" id="983" />
+<TGConnectingPoint num="7" id="984" />
+<TGConnectingPoint num="8" id="985" />
+<TGConnectingPoint num="9" id="986" />
+<TGConnectingPoint num="10" id="987" />
+<TGConnectingPoint num="11" id="988" />
+<TGConnectingPoint num="12" id="989" />
+<TGConnectingPoint num="13" id="990" />
+<TGConnectingPoint num="14" id="991" />
+<TGConnectingPoint num="15" id="992" />
+<TGConnectingPoint num="16" id="993" />
+<TGConnectingPoint num="17" id="994" />
+<TGConnectingPoint num="18" id="995" />
+<TGConnectingPoint num="19" id="996" />
+<TGConnectingPoint num="20" id="997" />
+<TGConnectingPoint num="21" id="998" />
+<TGConnectingPoint num="22" id="999" />
+<TGConnectingPoint num="23" id="1000" />
+<TGConnectingPoint num="24" id="1001" />
+<TGConnectingPoint num="25" id="1002" />
+<TGConnectingPoint num="26" id="1003" />
+<TGConnectingPoint num="27" id="1004" />
+<TGConnectingPoint num="28" id="1005" />
+<TGConnectingPoint num="29" id="1006" />
+<TGConnectingPoint num="30" id="1007" />
+<extraparam>
+<textline data="The network may loss one type of message:" />
+<textline data="the CC issued by the ground station after the" />
+<textline data="controller has acknowledged the connection." />
+<type data="1" />
+<durability data="2" />
+<source data="3" />
+<status data="1" />
+<limitation data="3" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5250" id="1040" >
+<cdparam x="27" y="164" />
+<sizeparam width="277" height="108" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="120" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Assumption" value="Unlossy_Network" />
+<TGConnectingPoint num="0" id="1009" />
+<TGConnectingPoint num="1" id="1010" />
+<TGConnectingPoint num="2" id="1011" />
+<TGConnectingPoint num="3" id="1012" />
+<TGConnectingPoint num="4" id="1013" />
+<TGConnectingPoint num="5" id="1014" />
+<TGConnectingPoint num="6" id="1015" />
+<TGConnectingPoint num="7" id="1016" />
+<TGConnectingPoint num="8" id="1017" />
+<TGConnectingPoint num="9" id="1018" />
+<TGConnectingPoint num="10" id="1019" />
+<TGConnectingPoint num="11" id="1020" />
+<TGConnectingPoint num="12" id="1021" />
+<TGConnectingPoint num="13" id="1022" />
+<TGConnectingPoint num="14" id="1023" />
+<TGConnectingPoint num="15" id="1024" />
+<TGConnectingPoint num="16" id="1025" />
+<TGConnectingPoint num="17" id="1026" />
+<TGConnectingPoint num="18" id="1027" />
+<TGConnectingPoint num="19" id="1028" />
+<TGConnectingPoint num="20" id="1029" />
+<TGConnectingPoint num="21" id="1030" />
+<TGConnectingPoint num="22" id="1031" />
+<TGConnectingPoint num="23" id="1032" />
+<TGConnectingPoint num="24" id="1033" />
+<TGConnectingPoint num="25" id="1034" />
+<TGConnectingPoint num="26" id="1035" />
+<TGConnectingPoint num="27" id="1036" />
+<TGConnectingPoint num="28" id="1037" />
+<TGConnectingPoint num="29" id="1038" />
+<TGConnectingPoint num="30" id="1039" />
+<extraparam>
+<textline data="The network does not loose messages." />
+<type data="1" />
+<durability data="2" />
+<source data="3" />
+<status data="1" />
+<limitation data="3" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5252" id="1068" >
+<cdparam x="96" y="375" />
+<sizeparam width="139" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="71" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="AvatarElementReference" value="Network" />
+<TGConnectingPoint num="0" id="1041" />
+<TGConnectingPoint num="1" id="1042" />
+<TGConnectingPoint num="2" id="1043" />
+<TGConnectingPoint num="3" id="1044" />
+<TGConnectingPoint num="4" id="1045" />
+<TGConnectingPoint num="5" id="1046" />
+<TGConnectingPoint num="6" id="1047" />
+<TGConnectingPoint num="7" id="1048" />
+<TGConnectingPoint num="8" id="1049" />
+<TGConnectingPoint num="9" id="1050" />
+<TGConnectingPoint num="10" id="1051" />
+<TGConnectingPoint num="11" id="1052" />
+<TGConnectingPoint num="12" id="1053" />
+<TGConnectingPoint num="13" id="1054" />
+<TGConnectingPoint num="14" id="1055" />
+<TGConnectingPoint num="15" id="1056" />
+<TGConnectingPoint num="16" id="1057" />
+<TGConnectingPoint num="17" id="1058" />
+<TGConnectingPoint num="18" id="1059" />
+<TGConnectingPoint num="19" id="1060" />
+<TGConnectingPoint num="20" id="1061" />
+<TGConnectingPoint num="21" id="1062" />
+<TGConnectingPoint num="22" id="1063" />
+<TGConnectingPoint num="23" id="1064" />
+<TGConnectingPoint num="24" id="1065" />
+<TGConnectingPoint num="25" id="1066" />
+<TGConnectingPoint num="26" id="1067" />
+</COMPONENT>
+
+<COMPONENT type="5252" id="1096" >
+<cdparam x="521" y="381" />
+<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="71" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="AvatarElementReference" value="Network" />
+<TGConnectingPoint num="0" id="1069" />
+<TGConnectingPoint num="1" id="1070" />
+<TGConnectingPoint num="2" id="1071" />
+<TGConnectingPoint num="3" id="1072" />
+<TGConnectingPoint num="4" id="1073" />
+<TGConnectingPoint num="5" id="1074" />
+<TGConnectingPoint num="6" id="1075" />
+<TGConnectingPoint num="7" id="1076" />
+<TGConnectingPoint num="8" id="1077" />
+<TGConnectingPoint num="9" id="1078" />
+<TGConnectingPoint num="10" id="1079" />
+<TGConnectingPoint num="11" id="1080" />
+<TGConnectingPoint num="12" id="1081" />
+<TGConnectingPoint num="13" id="1082" />
+<TGConnectingPoint num="14" id="1083" />
+<TGConnectingPoint num="15" id="1084" />
+<TGConnectingPoint num="16" id="1085" />
+<TGConnectingPoint num="17" id="1086" />
+<TGConnectingPoint num="18" id="1087" />
+<TGConnectingPoint num="19" id="1088" />
+<TGConnectingPoint num="20" id="1089" />
+<TGConnectingPoint num="21" id="1090" />
+<TGConnectingPoint num="22" id="1091" />
+<TGConnectingPoint num="23" id="1092" />
+<TGConnectingPoint num="24" id="1093" />
+<TGConnectingPoint num="25" id="1094" />
+<TGConnectingPoint num="26" id="1095" />
+</COMPONENT>
+
+<CONNECTOR type="5253" id="1098" >
+<cdparam x="148" y="165" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;composition&gt;&gt;" />
+<TGConnectingPoint num="0" id="1097" />
+<P1  x="96" y="164" id="1015" />
+<P2  x="96" y="65" id="899" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5253" id="1100" >
+<cdparam x="247" y="40" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;composition&gt;&gt;" />
+<TGConnectingPoint num="0" id="1099" />
+<P1  x="249" y="42" id="857" />
+<P2  x="182" y="42" id="892" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5257" id="1102" >
+<cdparam x="707" y="544" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<TGConnectingPoint num="0" id="1101" />
+<P1  x="596" y="381" id="1076" />
+<P2  x="596" y="346" id="931" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5255" id="1104" >
+<cdparam x="304" y="548" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;impact&gt;&gt;" />
+<TGConnectingPoint num="0" id="1103" />
+<P1  x="596" y="278" id="999" />
+<P2  x="596" y="316" id="928" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5257" id="1106" >
+<cdparam x="706" y="420" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<TGConnectingPoint num="0" id="1105" />
+<P1  x="165" y="375" id="1048" />
+<P2  x="166" y="339" id="959" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5255" id="1108" >
+<cdparam x="306" y="417" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;impact&gt;&gt;" />
+<TGConnectingPoint num="0" id="1107" />
+<P1  x="165" y="272" id="1031" />
+<P2  x="166" y="309" id="956" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="5254" id="1110" >
+<cdparam x="739" y="293" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;versioning&gt;&gt;" />
+<TGConnectingPoint num="0" id="1109" />
+<P1  x="304" y="218" id="1013" />
+<P2  x="441" y="218" id="978" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<oldVersion data="1" />
+<newVersion data="2" />
+</extraparam>
+</CONNECTOR>
+
+</AvatarMADPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="Avatar Analysis" nameTab="Analysis_unlossy" >
+<UseCaseDiagramPanel name="Use Case Diagram" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="703" id="1143" >
+<cdparam x="161" y="140" />
+<sizeparam width="74" height="50" minWidth="40" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="actor" value="Network" />
+<TGConnectingPoint num="0" id="1111" />
+<TGConnectingPoint num="1" id="1112" />
+<TGConnectingPoint num="2" id="1113" />
+<TGConnectingPoint num="3" id="1114" />
+<TGConnectingPoint num="4" id="1115" />
+<TGConnectingPoint num="5" id="1116" />
+<TGConnectingPoint num="6" id="1117" />
+<TGConnectingPoint num="7" id="1118" />
+<TGConnectingPoint num="8" id="1119" />
+<TGConnectingPoint num="9" id="1120" />
+<TGConnectingPoint num="10" id="1121" />
+<TGConnectingPoint num="11" id="1122" />
+<TGConnectingPoint num="12" id="1123" />
+<TGConnectingPoint num="13" id="1124" />
+<TGConnectingPoint num="14" id="1125" />
+<TGConnectingPoint num="15" id="1126" />
+<TGConnectingPoint num="16" id="1127" />
+<TGConnectingPoint num="17" id="1128" />
+<TGConnectingPoint num="18" id="1129" />
+<TGConnectingPoint num="19" id="1130" />
+<TGConnectingPoint num="20" id="1131" />
+<TGConnectingPoint num="21" id="1132" />
+<TGConnectingPoint num="22" id="1133" />
+<TGConnectingPoint num="23" id="1134" />
+<TGConnectingPoint num="24" id="1135" />
+<TGConnectingPoint num="25" id="1136" />
+<TGConnectingPoint num="26" id="1137" />
+<TGConnectingPoint num="27" id="1138" />
+<TGConnectingPoint num="28" id="1139" />
+<TGConnectingPoint num="29" id="1140" />
+<TGConnectingPoint num="30" id="1141" />
+<TGConnectingPoint num="31" id="1142" />
+</COMPONENT>
+
+<COMPONENT type="700" id="1176" >
+<cdparam x="332" y="38" />
+<sizeparam width="30" height="70" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="actor" value="Controller" />
+<TGConnectingPoint num="0" id="1144" />
+<TGConnectingPoint num="1" id="1145" />
+<TGConnectingPoint num="2" id="1146" />
+<TGConnectingPoint num="3" id="1147" />
+<TGConnectingPoint num="4" id="1148" />
+<TGConnectingPoint num="5" id="1149" />
+<TGConnectingPoint num="6" id="1150" />
+<TGConnectingPoint num="7" id="1151" />
+<TGConnectingPoint num="8" id="1152" />
+<TGConnectingPoint num="9" id="1153" />
+<TGConnectingPoint num="10" id="1154" />
+<TGConnectingPoint num="11" id="1155" />
+<TGConnectingPoint num="12" id="1156" />
+<TGConnectingPoint num="13" id="1157" />
+<TGConnectingPoint num="14" id="1158" />
+<TGConnectingPoint num="15" id="1159" />
+<TGConnectingPoint num="16" id="1160" />
+<TGConnectingPoint num="17" id="1161" />
+<TGConnectingPoint num="18" id="1162" />
+<TGConnectingPoint num="19" id="1163" />
+<TGConnectingPoint num="20" id="1164" />
+<TGConnectingPoint num="21" id="1165" />
+<TGConnectingPoint num="22" id="1166" />
+<TGConnectingPoint num="23" id="1167" />
+<TGConnectingPoint num="24" id="1168" />
+<TGConnectingPoint num="25" id="1169" />
+<TGConnectingPoint num="26" id="1170" />
+<TGConnectingPoint num="27" id="1171" />
+<TGConnectingPoint num="28" id="1172" />
+<TGConnectingPoint num="29" id="1173" />
+<TGConnectingPoint num="30" id="1174" />
+<TGConnectingPoint num="31" id="1175" />
+</COMPONENT>
+
+<COMPONENT type="701" id="1201" >
+<cdparam x="146" y="53" />
+<sizeparam width="104" height="40" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Use case" value="InitialNotification" />
+<TGConnectingPoint num="0" id="1177" />
+<TGConnectingPoint num="1" id="1178" />
+<TGConnectingPoint num="2" id="1179" />
+<TGConnectingPoint num="3" id="1180" />
+<TGConnectingPoint num="4" id="1181" />
+<TGConnectingPoint num="5" id="1182" />
+<TGConnectingPoint num="6" id="1183" />
+<TGConnectingPoint num="7" id="1184" />
+<TGConnectingPoint num="8" id="1185" />
+<TGConnectingPoint num="9" id="1186" />
+<TGConnectingPoint num="10" id="1187" />
+<TGConnectingPoint num="11" id="1188" />
+<TGConnectingPoint num="12" id="1189" />
+<TGConnectingPoint num="13" id="1190" />
+<TGConnectingPoint num="14" id="1191" />
+<TGConnectingPoint num="15" id="1192" />
+<TGConnectingPoint num="16" id="1193" />
+<TGConnectingPoint num="17" id="1194" />
+<TGConnectingPoint num="18" id="1195" />
+<TGConnectingPoint num="19" id="1196" />
+<TGConnectingPoint num="20" id="1197" />
+<TGConnectingPoint num="21" id="1198" />
+<TGConnectingPoint num="22" id="1199" />
+<TGConnectingPoint num="23" id="1200" />
+<extraparam>
+<info extension="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="700" id="1234" >
+<cdparam x="31" y="38" />
+<sizeparam width="30" height="70" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="actor" value="Pilot" />
+<TGConnectingPoint num="0" id="1202" />
+<TGConnectingPoint num="1" id="1203" />
+<TGConnectingPoint num="2" id="1204" />
+<TGConnectingPoint num="3" id="1205" />
+<TGConnectingPoint num="4" id="1206" />
+<TGConnectingPoint num="5" id="1207" />
+<TGConnectingPoint num="6" id="1208" />
+<TGConnectingPoint num="7" id="1209" />
+<TGConnectingPoint num="8" id="1210" />
+<TGConnectingPoint num="9" id="1211" />
+<TGConnectingPoint num="10" id="1212" />
+<TGConnectingPoint num="11" id="1213" />
+<TGConnectingPoint num="12" id="1214" />
+<TGConnectingPoint num="13" id="1215" />
+<TGConnectingPoint num="14" id="1216" />
+<TGConnectingPoint num="15" id="1217" />
+<TGConnectingPoint num="16" id="1218" />
+<TGConnectingPoint num="17" id="1219" />
+<TGConnectingPoint num="18" id="1220" />
+<TGConnectingPoint num="19" id="1221" />
+<TGConnectingPoint num="20" id="1222" />
+<TGConnectingPoint num="21" id="1223" />
+<TGConnectingPoint num="22" id="1224" />
+<TGConnectingPoint num="23" id="1225" />
+<TGConnectingPoint num="24" id="1226" />
+<TGConnectingPoint num="25" id="1227" />
+<TGConnectingPoint num="26" id="1228" />
+<TGConnectingPoint num="27" id="1229" />
+<TGConnectingPoint num="28" id="1230" />
+<TGConnectingPoint num="29" id="1231" />
+<TGConnectingPoint num="30" id="1232" />
+<TGConnectingPoint num="31" id="1233" />
+</COMPONENT>
+
+<COMPONENT type="702" id="1243" >
+<cdparam x="92" y="21" />
+<sizeparam width="216" height="105" minWidth="100" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="border" value="Communication_System" />
+<TGConnectingPoint num="0" id="1235" />
+<TGConnectingPoint num="1" id="1236" />
+<TGConnectingPoint num="2" id="1237" />
+<TGConnectingPoint num="3" id="1238" />
+<TGConnectingPoint num="4" id="1239" />
+<TGConnectingPoint num="5" id="1240" />
+<TGConnectingPoint num="6" id="1241" />
+<TGConnectingPoint num="7" id="1242" />
+</COMPONENT>
+
+<CONNECTOR type="110" id="1244" >
+<cdparam x="207" y="162" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="198" y="140" id="1116" />
+<P2  x="198" y="93" id="1180" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="110" id="1245" >
+<cdparam x="247" y="66" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Use case to actor" value="null" />
+<P1  x="250" y="73" id="1179" />
+<P2  x="332" y="73" id="1146" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="110" id="1246" >
+<cdparam x="10" y="10" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from actor to Use case" value="null" />
+<P1  x="61" y="73" id="1211" />
+<P2  x="146" y="73" id="1178" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</UseCaseDiagramPanel>
+
+<SequenceDiagramPanel name="Nominal_Service" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="606" id="1272" >
+<cdparam x="513" y="64" />
+<sizeparam width="10" height="265" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Controller" value="AirTrafficController" />
+<TGConnectingPoint num="0" id="1247" />
+<TGConnectingPoint num="1" id="1248" />
+<TGConnectingPoint num="2" id="1249" />
+<TGConnectingPoint num="3" id="1250" />
+<TGConnectingPoint num="4" id="1251" />
+<TGConnectingPoint num="5" id="1252" />
+<TGConnectingPoint num="6" id="1253" />
+<TGConnectingPoint num="7" id="1254" />
+<TGConnectingPoint num="8" id="1255" />
+<TGConnectingPoint num="9" id="1256" />
+<TGConnectingPoint num="10" id="1257" />
+<TGConnectingPoint num="11" id="1258" />
+<TGConnectingPoint num="12" id="1259" />
+<TGConnectingPoint num="13" id="1260" />
+<TGConnectingPoint num="14" id="1261" />
+<TGConnectingPoint num="15" id="1262" />
+<TGConnectingPoint num="16" id="1263" />
+<TGConnectingPoint num="17" id="1264" />
+<TGConnectingPoint num="18" id="1265" />
+<TGConnectingPoint num="19" id="1266" />
+<TGConnectingPoint num="20" id="1267" />
+<TGConnectingPoint num="21" id="1268" />
+<TGConnectingPoint num="22" id="1269" />
+<TGConnectingPoint num="23" id="1270" />
+<TGConnectingPoint num="24" id="1271" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1299" >
+<cdparam x="280" y="64" />
+<sizeparam width="10" height="273" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CommunicationSystem" value="FANS_Pilot_ATC_Communication_System" />
+<TGConnectingPoint num="0" id="1273" />
+<TGConnectingPoint num="1" id="1274" />
+<TGConnectingPoint num="2" id="1275" />
+<TGConnectingPoint num="3" id="1276" />
+<TGConnectingPoint num="4" id="1277" />
+<TGConnectingPoint num="5" id="1278" />
+<TGConnectingPoint num="6" id="1279" />
+<TGConnectingPoint num="7" id="1280" />
+<TGConnectingPoint num="8" id="1281" />
+<TGConnectingPoint num="9" id="1282" />
+<TGConnectingPoint num="10" id="1283" />
+<TGConnectingPoint num="11" id="1284" />
+<TGConnectingPoint num="12" id="1285" />
+<TGConnectingPoint num="13" id="1286" />
+<TGConnectingPoint num="14" id="1287" />
+<TGConnectingPoint num="15" id="1288" />
+<TGConnectingPoint num="16" id="1289" />
+<TGConnectingPoint num="17" id="1290" />
+<TGConnectingPoint num="18" id="1291" />
+<TGConnectingPoint num="19" id="1292" />
+<TGConnectingPoint num="20" id="1293" />
+<TGConnectingPoint num="21" id="1294" />
+<TGConnectingPoint num="22" id="1295" />
+<TGConnectingPoint num="23" id="1296" />
+<TGConnectingPoint num="24" id="1297" />
+<TGConnectingPoint num="25" id="1298" />
+<extraparam>
+<Actor data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1325" >
+<cdparam x="60" y="64" />
+<sizeparam width="10" height="265" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Pilot" value="Pilot" />
+<TGConnectingPoint num="0" id="1300" />
+<TGConnectingPoint num="1" id="1301" />
+<TGConnectingPoint num="2" id="1302" />
+<TGConnectingPoint num="3" id="1303" />
+<TGConnectingPoint num="4" id="1304" />
+<TGConnectingPoint num="5" id="1305" />
+<TGConnectingPoint num="6" id="1306" />
+<TGConnectingPoint num="7" id="1307" />
+<TGConnectingPoint num="8" id="1308" />
+<TGConnectingPoint num="9" id="1309" />
+<TGConnectingPoint num="10" id="1310" />
+<TGConnectingPoint num="11" id="1311" />
+<TGConnectingPoint num="12" id="1312" />
+<TGConnectingPoint num="13" id="1313" />
+<TGConnectingPoint num="14" id="1314" />
+<TGConnectingPoint num="15" id="1315" />
+<TGConnectingPoint num="16" id="1316" />
+<TGConnectingPoint num="17" id="1317" />
+<TGConnectingPoint num="18" id="1318" />
+<TGConnectingPoint num="19" id="1319" />
+<TGConnectingPoint num="20" id="1320" />
+<TGConnectingPoint num="21" id="1321" />
+<TGConnectingPoint num="22" id="1322" />
+<TGConnectingPoint num="23" id="1323" />
+<TGConnectingPoint num="24" id="1324" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="107" id="1326" >
+<cdparam x="235" y="184" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconconf" />
+<P1  x="285" y="184" id="1284" />
+<P2  x="65" y="184" id="1311" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="1327" >
+<cdparam x="385" y="154" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconresp" />
+<P1  x="518" y="154" id="1255" />
+<P2  x="285" y="154" id="1281" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="1328" >
+<cdparam x="235" y="124" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconind" />
+<P1  x="285" y="124" id="1278" />
+<P2  x="518" y="124" id="1252" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="1329" >
+<cdparam x="85" y="104" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconreq" />
+<P1  x="65" y="104" id="1303" />
+<P2  x="285" y="104" id="1276" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</SequenceDiagramPanel>
+
+<SequenceDiagramPanel name="Nominal_Protocol" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="301" id="1346" >
+<cdparam x="135" y="360" />
+<sizeparam width="596" height="63" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="
+ Black arrows: the protocol layer communicates by rendezvous with its upper layer.
+ 
+ Basic arrows: the protocol layer communicates via FIFO queues with the network service it relies on.
+    
+" />
+<TGConnectingPoint num="0" id="1330" />
+<TGConnectingPoint num="1" id="1331" />
+<TGConnectingPoint num="2" id="1332" />
+<TGConnectingPoint num="3" id="1333" />
+<TGConnectingPoint num="4" id="1334" />
+<TGConnectingPoint num="5" id="1335" />
+<TGConnectingPoint num="6" id="1336" />
+<TGConnectingPoint num="7" id="1337" />
+<TGConnectingPoint num="8" id="1338" />
+<TGConnectingPoint num="9" id="1339" />
+<TGConnectingPoint num="10" id="1340" />
+<TGConnectingPoint num="11" id="1341" />
+<TGConnectingPoint num="12" id="1342" />
+<TGConnectingPoint num="13" id="1343" />
+<TGConnectingPoint num="14" id="1344" />
+<TGConnectingPoint num="15" id="1345" />
+<extraparam>
+<Line value="" />
+<Line value=" Black arrows: the protocol layer communicates by rendezvous with its upper layer." />
+<Line value=" " />
+<Line value=" Basic arrows: the protocol layer communicates via FIFO queues with the network service it relies on." />
+<Line value="    " />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1371" >
+<cdparam x="502" y="78" />
+<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="GroundCommunication" value="GroundCommunication" />
+<TGConnectingPoint num="0" id="1347" />
+<TGConnectingPoint num="1" id="1348" />
+<TGConnectingPoint num="2" id="1349" />
+<TGConnectingPoint num="3" id="1350" />
+<TGConnectingPoint num="4" id="1351" />
+<TGConnectingPoint num="5" id="1352" />
+<TGConnectingPoint num="6" id="1353" />
+<TGConnectingPoint num="7" id="1354" />
+<TGConnectingPoint num="8" id="1355" />
+<TGConnectingPoint num="9" id="1356" />
+<TGConnectingPoint num="10" id="1357" />
+<TGConnectingPoint num="11" id="1358" />
+<TGConnectingPoint num="12" id="1359" />
+<TGConnectingPoint num="13" id="1360" />
+<TGConnectingPoint num="14" id="1361" />
+<TGConnectingPoint num="15" id="1362" />
+<TGConnectingPoint num="16" id="1363" />
+<TGConnectingPoint num="17" id="1364" />
+<TGConnectingPoint num="18" id="1365" />
+<TGConnectingPoint num="19" id="1366" />
+<TGConnectingPoint num="20" id="1367" />
+<TGConnectingPoint num="21" id="1368" />
+<TGConnectingPoint num="22" id="1369" />
+<TGConnectingPoint num="23" id="1370" />
+<extraparam>
+<Actor data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1396" >
+<cdparam x="343" y="78" />
+<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Network" value="Network" />
+<TGConnectingPoint num="0" id="1372" />
+<TGConnectingPoint num="1" id="1373" />
+<TGConnectingPoint num="2" id="1374" />
+<TGConnectingPoint num="3" id="1375" />
+<TGConnectingPoint num="4" id="1376" />
+<TGConnectingPoint num="5" id="1377" />
+<TGConnectingPoint num="6" id="1378" />
+<TGConnectingPoint num="7" id="1379" />
+<TGConnectingPoint num="8" id="1380" />
+<TGConnectingPoint num="9" id="1381" />
+<TGConnectingPoint num="10" id="1382" />
+<TGConnectingPoint num="11" id="1383" />
+<TGConnectingPoint num="12" id="1384" />
+<TGConnectingPoint num="13" id="1385" />
+<TGConnectingPoint num="14" id="1386" />
+<TGConnectingPoint num="15" id="1387" />
+<TGConnectingPoint num="16" id="1388" />
+<TGConnectingPoint num="17" id="1389" />
+<TGConnectingPoint num="18" id="1390" />
+<TGConnectingPoint num="19" id="1391" />
+<TGConnectingPoint num="20" id="1392" />
+<TGConnectingPoint num="21" id="1393" />
+<TGConnectingPoint num="22" id="1394" />
+<TGConnectingPoint num="23" id="1395" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1421" >
+<cdparam x="199" y="78" />
+<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="OnboardCommunication" value="OnboardCommunication" />
+<TGConnectingPoint num="0" id="1397" />
+<TGConnectingPoint num="1" id="1398" />
+<TGConnectingPoint num="2" id="1399" />
+<TGConnectingPoint num="3" id="1400" />
+<TGConnectingPoint num="4" id="1401" />
+<TGConnectingPoint num="5" id="1402" />
+<TGConnectingPoint num="6" id="1403" />
+<TGConnectingPoint num="7" id="1404" />
+<TGConnectingPoint num="8" id="1405" />
+<TGConnectingPoint num="9" id="1406" />
+<TGConnectingPoint num="10" id="1407" />
+<TGConnectingPoint num="11" id="1408" />
+<TGConnectingPoint num="12" id="1409" />
+<TGConnectingPoint num="13" id="1410" />
+<TGConnectingPoint num="14" id="1411" />
+<TGConnectingPoint num="15" id="1412" />
+<TGConnectingPoint num="16" id="1413" />
+<TGConnectingPoint num="17" id="1414" />
+<TGConnectingPoint num="18" id="1415" />
+<TGConnectingPoint num="19" id="1416" />
+<TGConnectingPoint num="20" id="1417" />
+<TGConnectingPoint num="21" id="1418" />
+<TGConnectingPoint num="22" id="1419" />
+<TGConnectingPoint num="23" id="1420" />
+<extraparam>
+<Actor data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1446" >
+<cdparam x="680" y="78" />
+<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Controller" value="AirTrafficController" />
+<TGConnectingPoint num="0" id="1422" />
+<TGConnectingPoint num="1" id="1423" />
+<TGConnectingPoint num="2" id="1424" />
+<TGConnectingPoint num="3" id="1425" />
+<TGConnectingPoint num="4" id="1426" />
+<TGConnectingPoint num="5" id="1427" />
+<TGConnectingPoint num="6" id="1428" />
+<TGConnectingPoint num="7" id="1429" />
+<TGConnectingPoint num="8" id="1430" />
+<TGConnectingPoint num="9" id="1431" />
+<TGConnectingPoint num="10" id="1432" />
+<TGConnectingPoint num="11" id="1433" />
+<TGConnectingPoint num="12" id="1434" />
+<TGConnectingPoint num="13" id="1435" />
+<TGConnectingPoint num="14" id="1436" />
+<TGConnectingPoint num="15" id="1437" />
+<TGConnectingPoint num="16" id="1438" />
+<TGConnectingPoint num="17" id="1439" />
+<TGConnectingPoint num="18" id="1440" />
+<TGConnectingPoint num="19" id="1441" />
+<TGConnectingPoint num="20" id="1442" />
+<TGConnectingPoint num="21" id="1443" />
+<TGConnectingPoint num="22" id="1444" />
+<TGConnectingPoint num="23" id="1445" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1471" >
+<cdparam x="36" y="78" />
+<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Pilot" value="Pilot" />
+<TGConnectingPoint num="0" id="1447" />
+<TGConnectingPoint num="1" id="1448" />
+<TGConnectingPoint num="2" id="1449" />
+<TGConnectingPoint num="3" id="1450" />
+<TGConnectingPoint num="4" id="1451" />
+<TGConnectingPoint num="5" id="1452" />
+<TGConnectingPoint num="6" id="1453" />
+<TGConnectingPoint num="7" id="1454" />
+<TGConnectingPoint num="8" id="1455" />
+<TGConnectingPoint num="9" id="1456" />
+<TGConnectingPoint num="10" id="1457" />
+<TGConnectingPoint num="11" id="1458" />
+<TGConnectingPoint num="12" id="1459" />
+<TGConnectingPoint num="13" id="1460" />
+<TGConnectingPoint num="14" id="1461" />
+<TGConnectingPoint num="15" id="1462" />
+<TGConnectingPoint num="16" id="1463" />
+<TGConnectingPoint num="17" id="1464" />
+<TGConnectingPoint num="18" id="1465" />
+<TGConnectingPoint num="19" id="1466" />
+<TGConnectingPoint num="20" id="1467" />
+<TGConnectingPoint num="21" id="1468" />
+<TGConnectingPoint num="22" id="1469" />
+<TGConnectingPoint num="23" id="1470" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="106" id="1472" >
+<cdparam x="348" y="258" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CC" />
+<P1  x="348" y="258" id="1389" />
+<P2  x="204" y="258" id="1414" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="1473" >
+<cdparam x="507" y="228" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CC" />
+<P1  x="507" y="228" id="1361" />
+<P2  x="348" y="228" id="1386" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="1474" >
+<cdparam x="348" y="148" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="348" y="148" id="1378" />
+<P2  x="507" y="148" id="1353" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="1475" >
+<cdparam x="204" y="128" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="204" y="128" id="1401" />
+<P2  x="348" y="128" id="1376" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="1476" >
+<cdparam x="12" y="115" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="conreq" />
+<P1  x="41" y="108" id="1449" />
+<P2  x="204" y="108" id="1399" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="1477" >
+<cdparam x="202" y="280" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="conconf" />
+<P1  x="204" y="278" id="1416" />
+<P2  x="41" y="278" id="1466" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="1478" >
+<cdparam x="685" y="199" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="conresp" />
+<P1  x="685" y="198" id="1433" />
+<P2  x="507" y="198" id="1358" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="1479" >
+<cdparam x="507" y="169" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="conind" />
+<P1  x="507" y="168" id="1355" />
+<P2  x="685" y="168" id="1430" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</SequenceDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="Avatar Analysis" nameTab="Analysis_lossy" >
+<UseCaseDiagramPanel name="Use Case Diagram" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="703" id="1512" >
+<cdparam x="171" y="157" />
+<sizeparam width="74" height="50" minWidth="40" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="actor" value="Network" />
+<TGConnectingPoint num="0" id="1480" />
+<TGConnectingPoint num="1" id="1481" />
+<TGConnectingPoint num="2" id="1482" />
+<TGConnectingPoint num="3" id="1483" />
+<TGConnectingPoint num="4" id="1484" />
+<TGConnectingPoint num="5" id="1485" />
+<TGConnectingPoint num="6" id="1486" />
+<TGConnectingPoint num="7" id="1487" />
+<TGConnectingPoint num="8" id="1488" />
+<TGConnectingPoint num="9" id="1489" />
+<TGConnectingPoint num="10" id="1490" />
+<TGConnectingPoint num="11" id="1491" />
+<TGConnectingPoint num="12" id="1492" />
+<TGConnectingPoint num="13" id="1493" />
+<TGConnectingPoint num="14" id="1494" />
+<TGConnectingPoint num="15" id="1495" />
+<TGConnectingPoint num="16" id="1496" />
+<TGConnectingPoint num="17" id="1497" />
+<TGConnectingPoint num="18" id="1498" />
+<TGConnectingPoint num="19" id="1499" />
+<TGConnectingPoint num="20" id="1500" />
+<TGConnectingPoint num="21" id="1501" />
+<TGConnectingPoint num="22" id="1502" />
+<TGConnectingPoint num="23" id="1503" />
+<TGConnectingPoint num="24" id="1504" />
+<TGConnectingPoint num="25" id="1505" />
+<TGConnectingPoint num="26" id="1506" />
+<TGConnectingPoint num="27" id="1507" />
+<TGConnectingPoint num="28" id="1508" />
+<TGConnectingPoint num="29" id="1509" />
+<TGConnectingPoint num="30" id="1510" />
+<TGConnectingPoint num="31" id="1511" />
+</COMPONENT>
+
+<COMPONENT type="700" id="1545" >
+<cdparam x="342" y="55" />
+<sizeparam width="30" height="70" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="actor" value="Controller" />
+<TGConnectingPoint num="0" id="1513" />
+<TGConnectingPoint num="1" id="1514" />
+<TGConnectingPoint num="2" id="1515" />
+<TGConnectingPoint num="3" id="1516" />
+<TGConnectingPoint num="4" id="1517" />
+<TGConnectingPoint num="5" id="1518" />
+<TGConnectingPoint num="6" id="1519" />
+<TGConnectingPoint num="7" id="1520" />
+<TGConnectingPoint num="8" id="1521" />
+<TGConnectingPoint num="9" id="1522" />
+<TGConnectingPoint num="10" id="1523" />
+<TGConnectingPoint num="11" id="1524" />
+<TGConnectingPoint num="12" id="1525" />
+<TGConnectingPoint num="13" id="1526" />
+<TGConnectingPoint num="14" id="1527" />
+<TGConnectingPoint num="15" id="1528" />
+<TGConnectingPoint num="16" id="1529" />
+<TGConnectingPoint num="17" id="1530" />
+<TGConnectingPoint num="18" id="1531" />
+<TGConnectingPoint num="19" id="1532" />
+<TGConnectingPoint num="20" id="1533" />
+<TGConnectingPoint num="21" id="1534" />
+<TGConnectingPoint num="22" id="1535" />
+<TGConnectingPoint num="23" id="1536" />
+<TGConnectingPoint num="24" id="1537" />
+<TGConnectingPoint num="25" id="1538" />
+<TGConnectingPoint num="26" id="1539" />
+<TGConnectingPoint num="27" id="1540" />
+<TGConnectingPoint num="28" id="1541" />
+<TGConnectingPoint num="29" id="1542" />
+<TGConnectingPoint num="30" id="1543" />
+<TGConnectingPoint num="31" id="1544" />
+</COMPONENT>
+
+<COMPONENT type="701" id="1570" >
+<cdparam x="156" y="70" />
+<sizeparam width="104" height="40" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Use case" value="InitialNotification" />
+<TGConnectingPoint num="0" id="1546" />
+<TGConnectingPoint num="1" id="1547" />
+<TGConnectingPoint num="2" id="1548" />
+<TGConnectingPoint num="3" id="1549" />
+<TGConnectingPoint num="4" id="1550" />
+<TGConnectingPoint num="5" id="1551" />
+<TGConnectingPoint num="6" id="1552" />
+<TGConnectingPoint num="7" id="1553" />
+<TGConnectingPoint num="8" id="1554" />
+<TGConnectingPoint num="9" id="1555" />
+<TGConnectingPoint num="10" id="1556" />
+<TGConnectingPoint num="11" id="1557" />
+<TGConnectingPoint num="12" id="1558" />
+<TGConnectingPoint num="13" id="1559" />
+<TGConnectingPoint num="14" id="1560" />
+<TGConnectingPoint num="15" id="1561" />
+<TGConnectingPoint num="16" id="1562" />
+<TGConnectingPoint num="17" id="1563" />
+<TGConnectingPoint num="18" id="1564" />
+<TGConnectingPoint num="19" id="1565" />
+<TGConnectingPoint num="20" id="1566" />
+<TGConnectingPoint num="21" id="1567" />
+<TGConnectingPoint num="22" id="1568" />
+<TGConnectingPoint num="23" id="1569" />
+<extraparam>
+<info extension="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="700" id="1603" >
+<cdparam x="41" y="55" />
+<sizeparam width="30" height="70" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="actor" value="Pilot" />
+<TGConnectingPoint num="0" id="1571" />
+<TGConnectingPoint num="1" id="1572" />
+<TGConnectingPoint num="2" id="1573" />
+<TGConnectingPoint num="3" id="1574" />
+<TGConnectingPoint num="4" id="1575" />
+<TGConnectingPoint num="5" id="1576" />
+<TGConnectingPoint num="6" id="1577" />
+<TGConnectingPoint num="7" id="1578" />
+<TGConnectingPoint num="8" id="1579" />
+<TGConnectingPoint num="9" id="1580" />
+<TGConnectingPoint num="10" id="1581" />
+<TGConnectingPoint num="11" id="1582" />
+<TGConnectingPoint num="12" id="1583" />
+<TGConnectingPoint num="13" id="1584" />
+<TGConnectingPoint num="14" id="1585" />
+<TGConnectingPoint num="15" id="1586" />
+<TGConnectingPoint num="16" id="1587" />
+<TGConnectingPoint num="17" id="1588" />
+<TGConnectingPoint num="18" id="1589" />
+<TGConnectingPoint num="19" id="1590" />
+<TGConnectingPoint num="20" id="1591" />
+<TGConnectingPoint num="21" id="1592" />
+<TGConnectingPoint num="22" id="1593" />
+<TGConnectingPoint num="23" id="1594" />
+<TGConnectingPoint num="24" id="1595" />
+<TGConnectingPoint num="25" id="1596" />
+<TGConnectingPoint num="26" id="1597" />
+<TGConnectingPoint num="27" id="1598" />
+<TGConnectingPoint num="28" id="1599" />
+<TGConnectingPoint num="29" id="1600" />
+<TGConnectingPoint num="30" id="1601" />
+<TGConnectingPoint num="31" id="1602" />
+</COMPONENT>
+
+<COMPONENT type="702" id="1612" >
+<cdparam x="102" y="38" />
+<sizeparam width="216" height="105" minWidth="100" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="border" value="Communication_System" />
+<TGConnectingPoint num="0" id="1604" />
+<TGConnectingPoint num="1" id="1605" />
+<TGConnectingPoint num="2" id="1606" />
+<TGConnectingPoint num="3" id="1607" />
+<TGConnectingPoint num="4" id="1608" />
+<TGConnectingPoint num="5" id="1609" />
+<TGConnectingPoint num="6" id="1610" />
+<TGConnectingPoint num="7" id="1611" />
+</COMPONENT>
+
+<CONNECTOR type="110" id="1613" >
+<cdparam x="217" y="179" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="208" y="157" id="1485" />
+<P2  x="208" y="110" id="1549" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="110" id="1614" >
+<cdparam x="257" y="83" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Use case to actor" value="null" />
+<P1  x="260" y="90" id="1548" />
+<P2  x="342" y="90" id="1515" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="110" id="1615" >
+<cdparam x="32" y="20" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from actor to Use case" value="null" />
+<P1  x="71" y="90" id="1580" />
+<P2  x="156" y="90" id="1547" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</UseCaseDiagramPanel>
+
+<SequenceDiagramPanel name="error_service" minX="10" maxX="2500" minY="10" maxY="1500" >
+<COMPONENT type="301" id="1632" >
+<cdparam x="231" y="215" />
+<sizeparam width="43" height="15" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="UML Note" value="Lost
+" />
+<TGConnectingPoint num="0" id="1616" />
+<TGConnectingPoint num="1" id="1617" />
+<TGConnectingPoint num="2" id="1618" />
+<TGConnectingPoint num="3" id="1619" />
+<TGConnectingPoint num="4" id="1620" />
+<TGConnectingPoint num="5" id="1621" />
+<TGConnectingPoint num="6" id="1622" />
+<TGConnectingPoint num="7" id="1623" />
+<TGConnectingPoint num="8" id="1624" />
+<TGConnectingPoint num="9" id="1625" />
+<TGConnectingPoint num="10" id="1626" />
+<TGConnectingPoint num="11" id="1627" />
+<TGConnectingPoint num="12" id="1628" />
+<TGConnectingPoint num="13" id="1629" />
+<TGConnectingPoint num="14" id="1630" />
+<TGConnectingPoint num="15" id="1631" />
+<extraparam>
+<Line value="Lost" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="601" id="1642" >
+<cdparam x="208" y="261" />
+<sizeparam width="40" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Line of relative time constraint" value="rtc" />
+<TGConnectingPoint num="0" id="1633" />
+<TGConnectingPoint num="1" id="1634" />
+<TGConnectingPoint num="2" id="1635" />
+<TGConnectingPoint num="3" id="1636" />
+<TGConnectingPoint num="4" id="1637" />
+<TGConnectingPoint num="5" id="1638" />
+<TGConnectingPoint num="6" id="1639" />
+<TGConnectingPoint num="7" id="1640" />
+<TGConnectingPoint num="8" id="1641" />
+</COMPONENT>
+
+<COMPONENT type="601" id="1652" >
+<cdparam x="208" y="132" />
+<sizeparam width="40" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Line of relative time constraint" value="rtc" />
+<TGConnectingPoint num="0" id="1643" />
+<TGConnectingPoint num="1" id="1644" />
+<TGConnectingPoint num="2" id="1645" />
+<TGConnectingPoint num="3" id="1646" />
+<TGConnectingPoint num="4" id="1647" />
+<TGConnectingPoint num="5" id="1648" />
+<TGConnectingPoint num="6" id="1649" />
+<TGConnectingPoint num="7" id="1650" />
+<TGConnectingPoint num="8" id="1651" />
+</COMPONENT>
+
+<COMPONENT type="606" id="1678" >
+<cdparam x="404" y="72" />
+<sizeparam width="10" height="265" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Controller" value="AirTrafficController" />
+<TGConnectingPoint num="0" id="1653" />
+<TGConnectingPoint num="1" id="1654" />
+<TGConnectingPoint num="2" id="1655" />
+<TGConnectingPoint num="3" id="1656" />
+<TGConnectingPoint num="4" id="1657" />
+<TGConnectingPoint num="5" id="1658" />
+<TGConnectingPoint num="6" id="1659" />
+<TGConnectingPoint num="7" id="1660" />
+<TGConnectingPoint num="8" id="1661" />
+<TGConnectingPoint num="9" id="1662" />
+<TGConnectingPoint num="10" id="1663" />
+<TGConnectingPoint num="11" id="1664" />
+<TGConnectingPoint num="12" id="1665" />
+<TGConnectingPoint num="13" id="1666" />
+<TGConnectingPoint num="14" id="1667" />
+<TGConnectingPoint num="15" id="1668" />
+<TGConnectingPoint num="16" id="1669" />
+<TGConnectingPoint num="17" id="1670" />
+<TGConnectingPoint num="18" id="1671" />
+<TGConnectingPoint num="19" id="1672" />
+<TGConnectingPoint num="20" id="1673" />
+<TGConnectingPoint num="21" id="1674" />
+<TGConnectingPoint num="22" id="1675" />
+<TGConnectingPoint num="23" id="1676" />
+<TGConnectingPoint num="24" id="1677" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1705" >
+<cdparam x="231" y="72" />
+<sizeparam width="10" height="273" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="CommunicationSystem" value="FANS_Pilot_ATC_Communication_System" />
+<TGConnectingPoint num="0" id="1679" />
+<TGConnectingPoint num="1" id="1680" />
+<TGConnectingPoint num="2" id="1681" />
+<TGConnectingPoint num="3" id="1682" />
+<TGConnectingPoint num="4" id="1683" />
+<TGConnectingPoint num="5" id="1684" />
+<TGConnectingPoint num="6" id="1685" />
+<TGConnectingPoint num="7" id="1686" />
+<TGConnectingPoint num="8" id="1687" />
+<TGConnectingPoint num="9" id="1688" />
+<TGConnectingPoint num="10" id="1689" />
+<TGConnectingPoint num="11" id="1690" />
+<TGConnectingPoint num="12" id="1691" />
+<TGConnectingPoint num="13" id="1692" />
+<TGConnectingPoint num="14" id="1693" />
+<TGConnectingPoint num="15" id="1694" />
+<TGConnectingPoint num="16" id="1695" />
+<TGConnectingPoint num="17" id="1696" />
+<TGConnectingPoint num="18" id="1697" />
+<TGConnectingPoint num="19" id="1698" />
+<TGConnectingPoint num="20" id="1699" />
+<TGConnectingPoint num="21" id="1700" />
+<TGConnectingPoint num="22" id="1701" />
+<TGConnectingPoint num="23" id="1702" />
+<TGConnectingPoint num="24" id="1703" />
+<TGConnectingPoint num="25" id="1704" />
+<extraparam>
+<Actor data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1731" >
+<cdparam x="45" y="72" />
+<sizeparam width="10" height="265" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Pilot" value="Pilot" />
+<TGConnectingPoint num="0" id="1706" />
+<TGConnectingPoint num="1" id="1707" />
+<TGConnectingPoint num="2" id="1708" />
+<TGConnectingPoint num="3" id="1709" />
+<TGConnectingPoint num="4" id="1710" />
+<TGConnectingPoint num="5" id="1711" />
+<TGConnectingPoint num="6" id="1712" />
+<TGConnectingPoint num="7" id="1713" />
+<TGConnectingPoint num="8" id="1714" />
+<TGConnectingPoint num="9" id="1715" />
+<TGConnectingPoint num="10" id="1716" />
+<TGConnectingPoint num="11" id="1717" />
+<TGConnectingPoint num="12" id="1718" />
+<TGConnectingPoint num="13" id="1719" />
+<TGConnectingPoint num="14" id="1720" />
+<TGConnectingPoint num="15" id="1721" />
+<TGConnectingPoint num="16" id="1722" />
+<TGConnectingPoint num="17" id="1723" />
+<TGConnectingPoint num="18" id="1724" />
+<TGConnectingPoint num="19" id="1725" />
+<TGConnectingPoint num="20" id="1726" />
+<TGConnectingPoint num="21" id="1727" />
+<TGConnectingPoint num="22" id="1728" />
+<TGConnectingPoint num="23" id="1729" />
+<TGConnectingPoint num="24" id="1730" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="107" id="1732" >
+<cdparam x="409" y="182" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconresp" />
+<P1  x="409" y="182" id="1663" />
+<P2  x="236" y="182" id="1689" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="109" id="1733" >
+<cdparam x="218" y="132" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="relative time constraint" value="{ATST1..ATST1}" />
+<P1  x="218" y="132" id="1643" />
+<P2  x="218" y="261" id="1633" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Interval minConstraint="ATST1" maxConstraint="ATST1" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="107" id="1734" >
+<cdparam x="236" y="261" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INerror" />
+<P1  x="236" y="262" id="1697" />
+<P2  x="50" y="262" id="1724" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="1735" >
+<cdparam x="220" y="132" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconind" />
+<P1  x="236" y="132" id="1684" />
+<P2  x="409" y="132" id="1658" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="1736" >
+<cdparam x="70" y="112" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconreq" />
+<P1  x="50" y="112" id="1709" />
+<P2  x="236" y="112" id="1682" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</SequenceDiagramPanel>
+
+<SequenceDiagramPanel name="lost_and_sucessful_retransmissions" minX="10" maxX="2500" minY="10" maxY="1500" >
+<COMPONENT type="605" id="1745" >
+<cdparam x="219" y="274" />
+<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="timer expiration" value="{timer=ATST1}" />
+<TGConnectingPoint num="0" id="1737" />
+<TGConnectingPoint num="1" id="1738" />
+<TGConnectingPoint num="2" id="1739" />
+<TGConnectingPoint num="3" id="1740" />
+<TGConnectingPoint num="4" id="1741" />
+<TGConnectingPoint num="5" id="1742" />
+<TGConnectingPoint num="6" id="1743" />
+<TGConnectingPoint num="7" id="1744" />
+<extraparam>
+<Interval timer="ATST1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="603" id="1754" >
+<cdparam x="221" y="151" />
+<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="setting timer" value="{timer=ATST1, duration=10}" />
+<TGConnectingPoint num="0" id="1746" />
+<TGConnectingPoint num="1" id="1747" />
+<TGConnectingPoint num="2" id="1748" />
+<TGConnectingPoint num="3" id="1749" />
+<TGConnectingPoint num="4" id="1750" />
+<TGConnectingPoint num="5" id="1751" />
+<TGConnectingPoint num="6" id="1752" />
+<TGConnectingPoint num="7" id="1753" />
+<extraparam>
+<Interval timer="ATST1" duration="10" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1804" >
+<cdparam x="620" y="86" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="330" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="GroundCommunication" value="GroundCommunication" />
+<TGConnectingPoint num="0" id="1755" />
+<TGConnectingPoint num="1" id="1756" />
+<TGConnectingPoint num="2" id="1757" />
+<TGConnectingPoint num="3" id="1758" />
+<TGConnectingPoint num="4" id="1759" />
+<TGConnectingPoint num="5" id="1760" />
+<TGConnectingPoint num="6" id="1761" />
+<TGConnectingPoint num="7" id="1762" />
+<TGConnectingPoint num="8" id="1763" />
+<TGConnectingPoint num="9" id="1764" />
+<TGConnectingPoint num="10" id="1765" />
+<TGConnectingPoint num="11" id="1766" />
+<TGConnectingPoint num="12" id="1767" />
+<TGConnectingPoint num="13" id="1768" />
+<TGConnectingPoint num="14" id="1769" />
+<TGConnectingPoint num="15" id="1770" />
+<TGConnectingPoint num="16" id="1771" />
+<TGConnectingPoint num="17" id="1772" />
+<TGConnectingPoint num="18" id="1773" />
+<TGConnectingPoint num="19" id="1774" />
+<TGConnectingPoint num="20" id="1775" />
+<TGConnectingPoint num="21" id="1776" />
+<TGConnectingPoint num="22" id="1777" />
+<TGConnectingPoint num="23" id="1778" />
+<TGConnectingPoint num="24" id="1779" />
+<TGConnectingPoint num="25" id="1780" />
+<TGConnectingPoint num="26" id="1781" />
+<TGConnectingPoint num="27" id="1782" />
+<TGConnectingPoint num="28" id="1783" />
+<TGConnectingPoint num="29" id="1784" />
+<TGConnectingPoint num="30" id="1785" />
+<TGConnectingPoint num="31" id="1786" />
+<TGConnectingPoint num="32" id="1787" />
+<TGConnectingPoint num="33" id="1788" />
+<TGConnectingPoint num="34" id="1789" />
+<TGConnectingPoint num="35" id="1790" />
+<TGConnectingPoint num="36" id="1791" />
+<TGConnectingPoint num="37" id="1792" />
+<TGConnectingPoint num="38" id="1793" />
+<TGConnectingPoint num="39" id="1794" />
+<TGConnectingPoint num="40" id="1795" />
+<TGConnectingPoint num="41" id="1796" />
+<TGConnectingPoint num="42" id="1797" />
+<TGConnectingPoint num="43" id="1798" />
+<TGConnectingPoint num="44" id="1799" />
+<TGConnectingPoint num="45" id="1800" />
+<TGConnectingPoint num="46" id="1801" />
+<TGConnectingPoint num="47" id="1802" />
+<TGConnectingPoint num="48" id="1803" />
+<extraparam>
+<Actor data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1854" >
+<cdparam x="473" y="86" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Network" value="Network" />
+<TGConnectingPoint num="0" id="1805" />
+<TGConnectingPoint num="1" id="1806" />
+<TGConnectingPoint num="2" id="1807" />
+<TGConnectingPoint num="3" id="1808" />
+<TGConnectingPoint num="4" id="1809" />
+<TGConnectingPoint num="5" id="1810" />
+<TGConnectingPoint num="6" id="1811" />
+<TGConnectingPoint num="7" id="1812" />
+<TGConnectingPoint num="8" id="1813" />
+<TGConnectingPoint num="9" id="1814" />
+<TGConnectingPoint num="10" id="1815" />
+<TGConnectingPoint num="11" id="1816" />
+<TGConnectingPoint num="12" id="1817" />
+<TGConnectingPoint num="13" id="1818" />
+<TGConnectingPoint num="14" id="1819" />
+<TGConnectingPoint num="15" id="1820" />
+<TGConnectingPoint num="16" id="1821" />
+<TGConnectingPoint num="17" id="1822" />
+<TGConnectingPoint num="18" id="1823" />
+<TGConnectingPoint num="19" id="1824" />
+<TGConnectingPoint num="20" id="1825" />
+<TGConnectingPoint num="21" id="1826" />
+<TGConnectingPoint num="22" id="1827" />
+<TGConnectingPoint num="23" id="1828" />
+<TGConnectingPoint num="24" id="1829" />
+<TGConnectingPoint num="25" id="1830" />
+<TGConnectingPoint num="26" id="1831" />
+<TGConnectingPoint num="27" id="1832" />
+<TGConnectingPoint num="28" id="1833" />
+<TGConnectingPoint num="29" id="1834" />
+<TGConnectingPoint num="30" id="1835" />
+<TGConnectingPoint num="31" id="1836" />
+<TGConnectingPoint num="32" id="1837" />
+<TGConnectingPoint num="33" id="1838" />
+<TGConnectingPoint num="34" id="1839" />
+<TGConnectingPoint num="35" id="1840" />
+<TGConnectingPoint num="36" id="1841" />
+<TGConnectingPoint num="37" id="1842" />
+<TGConnectingPoint num="38" id="1843" />
+<TGConnectingPoint num="39" id="1844" />
+<TGConnectingPoint num="40" id="1845" />
+<TGConnectingPoint num="41" id="1846" />
+<TGConnectingPoint num="42" id="1847" />
+<TGConnectingPoint num="43" id="1848" />
+<TGConnectingPoint num="44" id="1849" />
+<TGConnectingPoint num="45" id="1850" />
+<TGConnectingPoint num="46" id="1851" />
+<TGConnectingPoint num="47" id="1852" />
+<TGConnectingPoint num="48" id="1853" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="1922" >
+<cdparam x="201" y="86" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="283" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="OnboardCommunication" value="OnboardCommunication" />
+<TGConnectingPoint num="0" id="1873" />
+<TGConnectingPoint num="1" id="1874" />
+<TGConnectingPoint num="2" id="1875" />
+<TGConnectingPoint num="3" id="1876" />
+<TGConnectingPoint num="4" id="1877" />
+<TGConnectingPoint num="5" id="1878" />
+<TGConnectingPoint num="6" id="1879" />
+<TGConnectingPoint num="7" id="1880" />
+<TGConnectingPoint num="8" id="1881" />
+<TGConnectingPoint num="9" id="1882" />
+<TGConnectingPoint num="10" id="1883" />
+<TGConnectingPoint num="11" id="1884" />
+<TGConnectingPoint num="12" id="1885" />
+<TGConnectingPoint num="13" id="1886" />
+<TGConnectingPoint num="14" id="1887" />
+<TGConnectingPoint num="15" id="1888" />
+<TGConnectingPoint num="16" id="1889" />
+<TGConnectingPoint num="17" id="1890" />
+<TGConnectingPoint num="18" id="1891" />
+<TGConnectingPoint num="19" id="1892" />
+<TGConnectingPoint num="20" id="1893" />
+<TGConnectingPoint num="21" id="1894" />
+<TGConnectingPoint num="22" id="1895" />
+<TGConnectingPoint num="23" id="1896" />
+<TGConnectingPoint num="24" id="1897" />
+<TGConnectingPoint num="25" id="1898" />
+<TGConnectingPoint num="26" id="1899" />
+<TGConnectingPoint num="27" id="1900" />
+<TGConnectingPoint num="28" id="1901" />
+<TGConnectingPoint num="29" id="1902" />
+<TGConnectingPoint num="30" id="1903" />
+<TGConnectingPoint num="31" id="1904" />
+<TGConnectingPoint num="32" id="1905" />
+<TGConnectingPoint num="33" id="1906" />
+<TGConnectingPoint num="34" id="1907" />
+<TGConnectingPoint num="35" id="1908" />
+<TGConnectingPoint num="36" id="1909" />
+<TGConnectingPoint num="37" id="1910" />
+<TGConnectingPoint num="38" id="1911" />
+<TGConnectingPoint num="39" id="1912" />
+<TGConnectingPoint num="40" id="1913" />
+<TGConnectingPoint num="41" id="1914" />
+<TGConnectingPoint num="42" id="1915" />
+<TGConnectingPoint num="43" id="1916" />
+<TGConnectingPoint num="44" id="1917" />
+<TGConnectingPoint num="45" id="1918" />
+<TGConnectingPoint num="46" id="1919" />
+<TGConnectingPoint num="47" id="1920" />
+<TGConnectingPoint num="48" id="1921" />
+<extraparam>
+<Actor data="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="604" id="1863" >
+<father id="1922" num="0" />
+<cdparam x="219" y="448" />
+<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="18" maxX="18" minY="-2" maxY="478" />
+<infoparam name="timer cancellation" value="{timer=ATST1}" />
+<TGConnectingPoint num="0" id="1855" />
+<TGConnectingPoint num="1" id="1856" />
+<TGConnectingPoint num="2" id="1857" />
+<TGConnectingPoint num="3" id="1858" />
+<TGConnectingPoint num="4" id="1859" />
+<TGConnectingPoint num="5" id="1860" />
+<TGConnectingPoint num="6" id="1861" />
+<TGConnectingPoint num="7" id="1862" />
+<extraparam>
+<Interval timer="ATST1" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="603" id="1872" >
+<father id="1922" num="1" />
+<cdparam x="219" y="344" />
+<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="18" maxX="18" minY="-2" maxY="478" />
+<infoparam name="setting timer" value="{timer=ATST1, duration=10}" />
+<TGConnectingPoint num="0" id="1864" />
+<TGConnectingPoint num="1" id="1865" />
+<TGConnectingPoint num="2" id="1866" />
+<TGConnectingPoint num="3" id="1867" />
+<TGConnectingPoint num="4" id="1868" />
+<TGConnectingPoint num="5" id="1869" />
+<TGConnectingPoint num="6" id="1870" />
+<TGConnectingPoint num="7" id="1871" />
+<extraparam>
+<Interval timer="ATST1" duration="10" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="606" id="1972" >
+<cdparam x="799" y="86" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="310" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Controller" value="AirTrafficController" />
+<TGConnectingPoint num="0" id="1923" />
+<TGConnectingPoint num="1" id="1924" />
+<TGConnectingPoint num="2" id="1925" />
+<TGConnectingPoint num="3" id="1926" />
+<TGConnectingPoint num="4" id="1927" />
+<TGConnectingPoint num="5" id="1928" />
+<TGConnectingPoint num="6" id="1929" />
+<TGConnectingPoint num="7" id="1930" />
+<TGConnectingPoint num="8" id="1931" />
+<TGConnectingPoint num="9" id="1932" />
+<TGConnectingPoint num="10" id="1933" />
+<TGConnectingPoint num="11" id="1934" />
+<TGConnectingPoint num="12" id="1935" />
+<TGConnectingPoint num="13" id="1936" />
+<TGConnectingPoint num="14" id="1937" />
+<TGConnectingPoint num="15" id="1938" />
+<TGConnectingPoint num="16" id="1939" />
+<TGConnectingPoint num="17" id="1940" />
+<TGConnectingPoint num="18" id="1941" />
+<TGConnectingPoint num="19" id="1942" />
+<TGConnectingPoint num="20" id="1943" />
+<TGConnectingPoint num="21" id="1944" />
+<TGConnectingPoint num="22" id="1945" />
+<TGConnectingPoint num="23" id="1946" />
+<TGConnectingPoint num="24" id="1947" />
+<TGConnectingPoint num="25" id="1948" />
+<TGConnectingPoint num="26" id="1949" />
+<TGConnectingPoint num="27" id="1950" />
+<TGConnectingPoint num="28" id="1951" />
+<TGConnectingPoint num="29" id="1952" />
+<TGConnectingPoint num="30" id="1953" />
+<TGConnectingPoint num="31" id="1954" />
+<TGConnectingPoint num="32" id="1955" />
+<TGConnectingPoint num="33" id="1956" />
+<TGConnectingPoint num="34" id="1957" />
+<TGConnectingPoint num="35" id="1958" />
+<TGConnectingPoint num="36" id="1959" />
+<TGConnectingPoint num="37" id="1960" />
+<TGConnectingPoint num="38" id="1961" />
+<TGConnectingPoint num="39" id="1962" />
+<TGConnectingPoint num="40" id="1963" />
+<TGConnectingPoint num="41" id="1964" />
+<TGConnectingPoint num="42" id="1965" />
+<TGConnectingPoint num="43" id="1966" />
+<TGConnectingPoint num="44" id="1967" />
+<TGConnectingPoint num="45" id="1968" />
+<TGConnectingPoint num="46" id="1969" />
+<TGConnectingPoint num="47" id="1970" />
+<TGConnectingPoint num="48" id="1971" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="2022" >
+<cdparam x="38" y="86" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Pilot" value="Pilot" />
+<TGConnectingPoint num="0" id="1973" />
+<TGConnectingPoint num="1" id="1974" />
+<TGConnectingPoint num="2" id="1975" />
+<TGConnectingPoint num="3" id="1976" />
+<TGConnectingPoint num="4" id="1977" />
+<TGConnectingPoint num="5" id="1978" />
+<TGConnectingPoint num="6" id="1979" />
+<TGConnectingPoint num="7" id="1980" />
+<TGConnectingPoint num="8" id="1981" />
+<TGConnectingPoint num="9" id="1982" />
+<TGConnectingPoint num="10" id="1983" />
+<TGConnectingPoint num="11" id="1984" />
+<TGConnectingPoint num="12" id="1985" />
+<TGConnectingPoint num="13" id="1986" />
+<TGConnectingPoint num="14" id="1987" />
+<TGConnectingPoint num="15" id="1988" />
+<TGConnectingPoint num="16" id="1989" />
+<TGConnectingPoint num="17" id="1990" />
+<TGConnectingPoint num="18" id="1991" />
+<TGConnectingPoint num="19" id="1992" />
+<TGConnectingPoint num="20" id="1993" />
+<TGConnectingPoint num="21" id="1994" />
+<TGConnectingPoint num="22" id="1995" />
+<TGConnectingPoint num="23" id="1996" />
+<TGConnectingPoint num="24" id="1997" />
+<TGConnectingPoint num="25" id="1998" />
+<TGConnectingPoint num="26" id="1999" />
+<TGConnectingPoint num="27" id="2000" />
+<TGConnectingPoint num="28" id="2001" />
+<TGConnectingPoint num="29" id="2002" />
+<TGConnectingPoint num="30" id="2003" />
+<TGConnectingPoint num="31" id="2004" />
+<TGConnectingPoint num="32" id="2005" />
+<TGConnectingPoint num="33" id="2006" />
+<TGConnectingPoint num="34" id="2007" />
+<TGConnectingPoint num="35" id="2008" />
+<TGConnectingPoint num="36" id="2009" />
+<TGConnectingPoint num="37" id="2010" />
+<TGConnectingPoint num="38" id="2011" />
+<TGConnectingPoint num="39" id="2012" />
+<TGConnectingPoint num="40" id="2013" />
+<TGConnectingPoint num="41" id="2014" />
+<TGConnectingPoint num="42" id="2015" />
+<TGConnectingPoint num="43" id="2016" />
+<TGConnectingPoint num="44" id="2017" />
+<TGConnectingPoint num="45" id="2018" />
+<TGConnectingPoint num="46" id="2019" />
+<TGConnectingPoint num="47" id="2020" />
+<TGConnectingPoint num="48" id="2021" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="2039" >
+<cdparam x="390" y="245" />
+<sizeparam width="73" height="39" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="UML Note" value="    
+CC is lost
+   
+" />
+<TGConnectingPoint num="0" id="2023" />
+<TGConnectingPoint num="1" id="2024" />
+<TGConnectingPoint num="2" id="2025" />
+<TGConnectingPoint num="3" id="2026" />
+<TGConnectingPoint num="4" id="2027" />
+<TGConnectingPoint num="5" id="2028" />
+<TGConnectingPoint num="6" id="2029" />
+<TGConnectingPoint num="7" id="2030" />
+<TGConnectingPoint num="8" id="2031" />
+<TGConnectingPoint num="9" id="2032" />
+<TGConnectingPoint num="10" id="2033" />
+<TGConnectingPoint num="11" id="2034" />
+<TGConnectingPoint num="12" id="2035" />
+<TGConnectingPoint num="13" id="2036" />
+<TGConnectingPoint num="14" id="2037" />
+<TGConnectingPoint num="15" id="2038" />
+<extraparam>
+<Line value="    " />
+<Line value="CC is lost" />
+<Line value="   " />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="107" id="2040" >
+<cdparam x="625" y="366" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconind" />
+<P1  x="625" y="366" id="1782" />
+<P2  x="804" y="366" id="1950" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2041" >
+<cdparam x="206" y="456" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconconf" />
+<P1  x="206" y="486" id="1912" />
+<P2  x="43" y="486" id="2012" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2042" >
+<cdparam x="478" y="436" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CC" />
+<P1  x="478" y="436" id="1839" />
+<P2  x="206" y="436" id="1907" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2043" >
+<cdparam x="625" y="416" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CC" />
+<P1  x="625" y="416" id="1787" />
+<P2  x="478" y="416" id="1837" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2044" >
+<cdparam x="804" y="396" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconresp" />
+<P1  x="804" y="396" id="1953" />
+<P2  x="625" y="396" id="1785" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2045" >
+<cdparam x="466" y="346" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="478" y="346" id="1830" />
+<P2  x="625" y="346" id="1780" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2046" >
+<cdparam x="206" y="326" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="206" y="326" id="1896" />
+<P2  x="478" y="326" id="1828" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2047" >
+<cdparam x="625" y="236" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CC" />
+<P1  x="625" y="226" id="1768" />
+<P2  x="478" y="226" id="1818" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2048" >
+<cdparam x="466" y="156" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="478" y="156" id="1811" />
+<P2  x="625" y="156" id="1761" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2049" >
+<cdparam x="206" y="136" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="206" y="136" id="1877" />
+<P2  x="478" y="136" id="1809" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2050" >
+<cdparam x="15" y="123" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconreq" />
+<P1  x="43" y="116" id="1975" />
+<P2  x="206" y="116" id="1875" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2051" >
+<cdparam x="803" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconresp" />
+<P1  x="804" y="206" id="1934" />
+<P2  x="625" y="206" id="1766" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2052" >
+<cdparam x="625" y="177" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconind" />
+<P1  x="625" y="176" id="1763" />
+<P2  x="804" y="176" id="1931" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</SequenceDiagramPanel>
+
+<SequenceDiagramPanel name="unsuccesful_retransmissions" minX="10" maxX="2500" minY="10" maxY="1500" >
+<COMPONENT type="605" id="2061" >
+<cdparam x="217" y="690" />
+<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="timer expiration" value="{timer=ATST1}" />
+<TGConnectingPoint num="0" id="2053" />
+<TGConnectingPoint num="1" id="2054" />
+<TGConnectingPoint num="2" id="2055" />
+<TGConnectingPoint num="3" id="2056" />
+<TGConnectingPoint num="4" id="2057" />
+<TGConnectingPoint num="5" id="2058" />
+<TGConnectingPoint num="6" id="2059" />
+<TGConnectingPoint num="7" id="2060" />
+<extraparam>
+<Interval timer="ATST1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="605" id="2070" >
+<cdparam x="214" y="264" />
+<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="timer expiration" value="{timer=ATST1}" />
+<TGConnectingPoint num="0" id="2062" />
+<TGConnectingPoint num="1" id="2063" />
+<TGConnectingPoint num="2" id="2064" />
+<TGConnectingPoint num="3" id="2065" />
+<TGConnectingPoint num="4" id="2066" />
+<TGConnectingPoint num="5" id="2067" />
+<TGConnectingPoint num="6" id="2068" />
+<TGConnectingPoint num="7" id="2069" />
+<extraparam>
+<Interval timer="ATST1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="603" id="2079" >
+<cdparam x="216" y="141" />
+<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="setting timer" value="{timer=ATST1, duration=10}" />
+<TGConnectingPoint num="0" id="2071" />
+<TGConnectingPoint num="1" id="2072" />
+<TGConnectingPoint num="2" id="2073" />
+<TGConnectingPoint num="3" id="2074" />
+<TGConnectingPoint num="4" id="2075" />
+<TGConnectingPoint num="5" id="2076" />
+<TGConnectingPoint num="6" id="2077" />
+<TGConnectingPoint num="7" id="2078" />
+<extraparam>
+<Interval timer="ATST1" duration="10" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="2154" >
+<cdparam x="615" y="76" />
+<sizeparam width="10" height="750" minWidth="10" minHeight="330" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="GroundCommunication" value="GroundCommunication" />
+<TGConnectingPoint num="0" id="2080" />
+<TGConnectingPoint num="1" id="2081" />
+<TGConnectingPoint num="2" id="2082" />
+<TGConnectingPoint num="3" id="2083" />
+<TGConnectingPoint num="4" id="2084" />
+<TGConnectingPoint num="5" id="2085" />
+<TGConnectingPoint num="6" id="2086" />
+<TGConnectingPoint num="7" id="2087" />
+<TGConnectingPoint num="8" id="2088" />
+<TGConnectingPoint num="9" id="2089" />
+<TGConnectingPoint num="10" id="2090" />
+<TGConnectingPoint num="11" id="2091" />
+<TGConnectingPoint num="12" id="2092" />
+<TGConnectingPoint num="13" id="2093" />
+<TGConnectingPoint num="14" id="2094" />
+<TGConnectingPoint num="15" id="2095" />
+<TGConnectingPoint num="16" id="2096" />
+<TGConnectingPoint num="17" id="2097" />
+<TGConnectingPoint num="18" id="2098" />
+<TGConnectingPoint num="19" id="2099" />
+<TGConnectingPoint num="20" id="2100" />
+<TGConnectingPoint num="21" id="2101" />
+<TGConnectingPoint num="22" id="2102" />
+<TGConnectingPoint num="23" id="2103" />
+<TGConnectingPoint num="24" id="2104" />
+<TGConnectingPoint num="25" id="2105" />
+<TGConnectingPoint num="26" id="2106" />
+<TGConnectingPoint num="27" id="2107" />
+<TGConnectingPoint num="28" id="2108" />
+<TGConnectingPoint num="29" id="2109" />
+<TGConnectingPoint num="30" id="2110" />
+<TGConnectingPoint num="31" id="2111" />
+<TGConnectingPoint num="32" id="2112" />
+<TGConnectingPoint num="33" id="2113" />
+<TGConnectingPoint num="34" id="2114" />
+<TGConnectingPoint num="35" id="2115" />
+<TGConnectingPoint num="36" id="2116" />
+<TGConnectingPoint num="37" id="2117" />
+<TGConnectingPoint num="38" id="2118" />
+<TGConnectingPoint num="39" id="2119" />
+<TGConnectingPoint num="40" id="2120" />
+<TGConnectingPoint num="41" id="2121" />
+<TGConnectingPoint num="42" id="2122" />
+<TGConnectingPoint num="43" id="2123" />
+<TGConnectingPoint num="44" id="2124" />
+<TGConnectingPoint num="45" id="2125" />
+<TGConnectingPoint num="46" id="2126" />
+<TGConnectingPoint num="47" id="2127" />
+<TGConnectingPoint num="48" id="2128" />
+<TGConnectingPoint num="49" id="2129" />
+<TGConnectingPoint num="50" id="2130" />
+<TGConnectingPoint num="51" id="2131" />
+<TGConnectingPoint num="52" id="2132" />
+<TGConnectingPoint num="53" id="2133" />
+<TGConnectingPoint num="54" id="2134" />
+<TGConnectingPoint num="55" id="2135" />
+<TGConnectingPoint num="56" id="2136" />
+<TGConnectingPoint num="57" id="2137" />
+<TGConnectingPoint num="58" id="2138" />
+<TGConnectingPoint num="59" id="2139" />
+<TGConnectingPoint num="60" id="2140" />
+<TGConnectingPoint num="61" id="2141" />
+<TGConnectingPoint num="62" id="2142" />
+<TGConnectingPoint num="63" id="2143" />
+<TGConnectingPoint num="64" id="2144" />
+<TGConnectingPoint num="65" id="2145" />
+<TGConnectingPoint num="66" id="2146" />
+<TGConnectingPoint num="67" id="2147" />
+<TGConnectingPoint num="68" id="2148" />
+<TGConnectingPoint num="69" id="2149" />
+<TGConnectingPoint num="70" id="2150" />
+<TGConnectingPoint num="71" id="2151" />
+<TGConnectingPoint num="72" id="2152" />
+<TGConnectingPoint num="73" id="2153" />
+<extraparam>
+<Actor data="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="2229" >
+<cdparam x="442" y="76" />
+<sizeparam width="10" height="750" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Network" value="Network" />
+<TGConnectingPoint num="0" id="2155" />
+<TGConnectingPoint num="1" id="2156" />
+<TGConnectingPoint num="2" id="2157" />
+<TGConnectingPoint num="3" id="2158" />
+<TGConnectingPoint num="4" id="2159" />
+<TGConnectingPoint num="5" id="2160" />
+<TGConnectingPoint num="6" id="2161" />
+<TGConnectingPoint num="7" id="2162" />
+<TGConnectingPoint num="8" id="2163" />
+<TGConnectingPoint num="9" id="2164" />
+<TGConnectingPoint num="10" id="2165" />
+<TGConnectingPoint num="11" id="2166" />
+<TGConnectingPoint num="12" id="2167" />
+<TGConnectingPoint num="13" id="2168" />
+<TGConnectingPoint num="14" id="2169" />
+<TGConnectingPoint num="15" id="2170" />
+<TGConnectingPoint num="16" id="2171" />
+<TGConnectingPoint num="17" id="2172" />
+<TGConnectingPoint num="18" id="2173" />
+<TGConnectingPoint num="19" id="2174" />
+<TGConnectingPoint num="20" id="2175" />
+<TGConnectingPoint num="21" id="2176" />
+<TGConnectingPoint num="22" id="2177" />
+<TGConnectingPoint num="23" id="2178" />
+<TGConnectingPoint num="24" id="2179" />
+<TGConnectingPoint num="25" id="2180" />
+<TGConnectingPoint num="26" id="2181" />
+<TGConnectingPoint num="27" id="2182" />
+<TGConnectingPoint num="28" id="2183" />
+<TGConnectingPoint num="29" id="2184" />
+<TGConnectingPoint num="30" id="2185" />
+<TGConnectingPoint num="31" id="2186" />
+<TGConnectingPoint num="32" id="2187" />
+<TGConnectingPoint num="33" id="2188" />
+<TGConnectingPoint num="34" id="2189" />
+<TGConnectingPoint num="35" id="2190" />
+<TGConnectingPoint num="36" id="2191" />
+<TGConnectingPoint num="37" id="2192" />
+<TGConnectingPoint num="38" id="2193" />
+<TGConnectingPoint num="39" id="2194" />
+<TGConnectingPoint num="40" id="2195" />
+<TGConnectingPoint num="41" id="2196" />
+<TGConnectingPoint num="42" id="2197" />
+<TGConnectingPoint num="43" id="2198" />
+<TGConnectingPoint num="44" id="2199" />
+<TGConnectingPoint num="45" id="2200" />
+<TGConnectingPoint num="46" id="2201" />
+<TGConnectingPoint num="47" id="2202" />
+<TGConnectingPoint num="48" id="2203" />
+<TGConnectingPoint num="49" id="2204" />
+<TGConnectingPoint num="50" id="2205" />
+<TGConnectingPoint num="51" id="2206" />
+<TGConnectingPoint num="52" id="2207" />
+<TGConnectingPoint num="53" id="2208" />
+<TGConnectingPoint num="54" id="2209" />
+<TGConnectingPoint num="55" id="2210" />
+<TGConnectingPoint num="56" id="2211" />
+<TGConnectingPoint num="57" id="2212" />
+<TGConnectingPoint num="58" id="2213" />
+<TGConnectingPoint num="59" id="2214" />
+<TGConnectingPoint num="60" id="2215" />
+<TGConnectingPoint num="61" id="2216" />
+<TGConnectingPoint num="62" id="2217" />
+<TGConnectingPoint num="63" id="2218" />
+<TGConnectingPoint num="64" id="2219" />
+<TGConnectingPoint num="65" id="2220" />
+<TGConnectingPoint num="66" id="2221" />
+<TGConnectingPoint num="67" id="2222" />
+<TGConnectingPoint num="68" id="2223" />
+<TGConnectingPoint num="69" id="2224" />
+<TGConnectingPoint num="70" id="2225" />
+<TGConnectingPoint num="71" id="2226" />
+<TGConnectingPoint num="72" id="2227" />
+<TGConnectingPoint num="73" id="2228" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="2322" >
+<cdparam x="196" y="76" />
+<sizeparam width="10" height="750" minWidth="10" minHeight="283" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="OnboardCommunication" value="OnboardCommunication" />
+<TGConnectingPoint num="0" id="2248" />
+<TGConnectingPoint num="1" id="2249" />
+<TGConnectingPoint num="2" id="2250" />
+<TGConnectingPoint num="3" id="2251" />
+<TGConnectingPoint num="4" id="2252" />
+<TGConnectingPoint num="5" id="2253" />
+<TGConnectingPoint num="6" id="2254" />
+<TGConnectingPoint num="7" id="2255" />
+<TGConnectingPoint num="8" id="2256" />
+<TGConnectingPoint num="9" id="2257" />
+<TGConnectingPoint num="10" id="2258" />
+<TGConnectingPoint num="11" id="2259" />
+<TGConnectingPoint num="12" id="2260" />
+<TGConnectingPoint num="13" id="2261" />
+<TGConnectingPoint num="14" id="2262" />
+<TGConnectingPoint num="15" id="2263" />
+<TGConnectingPoint num="16" id="2264" />
+<TGConnectingPoint num="17" id="2265" />
+<TGConnectingPoint num="18" id="2266" />
+<TGConnectingPoint num="19" id="2267" />
+<TGConnectingPoint num="20" id="2268" />
+<TGConnectingPoint num="21" id="2269" />
+<TGConnectingPoint num="22" id="2270" />
+<TGConnectingPoint num="23" id="2271" />
+<TGConnectingPoint num="24" id="2272" />
+<TGConnectingPoint num="25" id="2273" />
+<TGConnectingPoint num="26" id="2274" />
+<TGConnectingPoint num="27" id="2275" />
+<TGConnectingPoint num="28" id="2276" />
+<TGConnectingPoint num="29" id="2277" />
+<TGConnectingPoint num="30" id="2278" />
+<TGConnectingPoint num="31" id="2279" />
+<TGConnectingPoint num="32" id="2280" />
+<TGConnectingPoint num="33" id="2281" />
+<TGConnectingPoint num="34" id="2282" />
+<TGConnectingPoint num="35" id="2283" />
+<TGConnectingPoint num="36" id="2284" />
+<TGConnectingPoint num="37" id="2285" />
+<TGConnectingPoint num="38" id="2286" />
+<TGConnectingPoint num="39" id="2287" />
+<TGConnectingPoint num="40" id="2288" />
+<TGConnectingPoint num="41" id="2289" />
+<TGConnectingPoint num="42" id="2290" />
+<TGConnectingPoint num="43" id="2291" />
+<TGConnectingPoint num="44" id="2292" />
+<TGConnectingPoint num="45" id="2293" />
+<TGConnectingPoint num="46" id="2294" />
+<TGConnectingPoint num="47" id="2295" />
+<TGConnectingPoint num="48" id="2296" />
+<TGConnectingPoint num="49" id="2297" />
+<TGConnectingPoint num="50" id="2298" />
+<TGConnectingPoint num="51" id="2299" />
+<TGConnectingPoint num="52" id="2300" />
+<TGConnectingPoint num="53" id="2301" />
+<TGConnectingPoint num="54" id="2302" />
+<TGConnectingPoint num="55" id="2303" />
+<TGConnectingPoint num="56" id="2304" />
+<TGConnectingPoint num="57" id="2305" />
+<TGConnectingPoint num="58" id="2306" />
+<TGConnectingPoint num="59" id="2307" />
+<TGConnectingPoint num="60" id="2308" />
+<TGConnectingPoint num="61" id="2309" />
+<TGConnectingPoint num="62" id="2310" />
+<TGConnectingPoint num="63" id="2311" />
+<TGConnectingPoint num="64" id="2312" />
+<TGConnectingPoint num="65" id="2313" />
+<TGConnectingPoint num="66" id="2314" />
+<TGConnectingPoint num="67" id="2315" />
+<TGConnectingPoint num="68" id="2316" />
+<TGConnectingPoint num="69" id="2317" />
+<TGConnectingPoint num="70" id="2318" />
+<TGConnectingPoint num="71" id="2319" />
+<TGConnectingPoint num="72" id="2320" />
+<TGConnectingPoint num="73" id="2321" />
+<extraparam>
+<Actor data="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="605" id="2238" >
+<father id="2322" num="0" />
+<cdparam x="214" y="497" />
+<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="18" maxX="18" minY="-2" maxY="728" />
+<infoparam name="timer expiration" value="{timer=ATST1}" />
+<TGConnectingPoint num="0" id="2230" />
+<TGConnectingPoint num="1" id="2231" />
+<TGConnectingPoint num="2" id="2232" />
+<TGConnectingPoint num="3" id="2233" />
+<TGConnectingPoint num="4" id="2234" />
+<TGConnectingPoint num="5" id="2235" />
+<TGConnectingPoint num="6" id="2236" />
+<TGConnectingPoint num="7" id="2237" />
+<extraparam>
+<Interval timer="ATST1" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="603" id="2247" >
+<father id="2322" num="1" />
+<cdparam x="214" y="334" />
+<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="18" maxX="18" minY="-2" maxY="728" />
+<infoparam name="setting timer" value="{timer=ATST1, duration=10}" />
+<TGConnectingPoint num="0" id="2239" />
+<TGConnectingPoint num="1" id="2240" />
+<TGConnectingPoint num="2" id="2241" />
+<TGConnectingPoint num="3" id="2242" />
+<TGConnectingPoint num="4" id="2243" />
+<TGConnectingPoint num="5" id="2244" />
+<TGConnectingPoint num="6" id="2245" />
+<TGConnectingPoint num="7" id="2246" />
+<extraparam>
+<Interval timer="ATST1" duration="10" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="606" id="2397" >
+<cdparam x="794" y="76" />
+<sizeparam width="10" height="750" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Controller" value="AirTrafficController" />
+<TGConnectingPoint num="0" id="2323" />
+<TGConnectingPoint num="1" id="2324" />
+<TGConnectingPoint num="2" id="2325" />
+<TGConnectingPoint num="3" id="2326" />
+<TGConnectingPoint num="4" id="2327" />
+<TGConnectingPoint num="5" id="2328" />
+<TGConnectingPoint num="6" id="2329" />
+<TGConnectingPoint num="7" id="2330" />
+<TGConnectingPoint num="8" id="2331" />
+<TGConnectingPoint num="9" id="2332" />
+<TGConnectingPoint num="10" id="2333" />
+<TGConnectingPoint num="11" id="2334" />
+<TGConnectingPoint num="12" id="2335" />
+<TGConnectingPoint num="13" id="2336" />
+<TGConnectingPoint num="14" id="2337" />
+<TGConnectingPoint num="15" id="2338" />
+<TGConnectingPoint num="16" id="2339" />
+<TGConnectingPoint num="17" id="2340" />
+<TGConnectingPoint num="18" id="2341" />
+<TGConnectingPoint num="19" id="2342" />
+<TGConnectingPoint num="20" id="2343" />
+<TGConnectingPoint num="21" id="2344" />
+<TGConnectingPoint num="22" id="2345" />
+<TGConnectingPoint num="23" id="2346" />
+<TGConnectingPoint num="24" id="2347" />
+<TGConnectingPoint num="25" id="2348" />
+<TGConnectingPoint num="26" id="2349" />
+<TGConnectingPoint num="27" id="2350" />
+<TGConnectingPoint num="28" id="2351" />
+<TGConnectingPoint num="29" id="2352" />
+<TGConnectingPoint num="30" id="2353" />
+<TGConnectingPoint num="31" id="2354" />
+<TGConnectingPoint num="32" id="2355" />
+<TGConnectingPoint num="33" id="2356" />
+<TGConnectingPoint num="34" id="2357" />
+<TGConnectingPoint num="35" id="2358" />
+<TGConnectingPoint num="36" id="2359" />
+<TGConnectingPoint num="37" id="2360" />
+<TGConnectingPoint num="38" id="2361" />
+<TGConnectingPoint num="39" id="2362" />
+<TGConnectingPoint num="40" id="2363" />
+<TGConnectingPoint num="41" id="2364" />
+<TGConnectingPoint num="42" id="2365" />
+<TGConnectingPoint num="43" id="2366" />
+<TGConnectingPoint num="44" id="2367" />
+<TGConnectingPoint num="45" id="2368" />
+<TGConnectingPoint num="46" id="2369" />
+<TGConnectingPoint num="47" id="2370" />
+<TGConnectingPoint num="48" id="2371" />
+<TGConnectingPoint num="49" id="2372" />
+<TGConnectingPoint num="50" id="2373" />
+<TGConnectingPoint num="51" id="2374" />
+<TGConnectingPoint num="52" id="2375" />
+<TGConnectingPoint num="53" id="2376" />
+<TGConnectingPoint num="54" id="2377" />
+<TGConnectingPoint num="55" id="2378" />
+<TGConnectingPoint num="56" id="2379" />
+<TGConnectingPoint num="57" id="2380" />
+<TGConnectingPoint num="58" id="2381" />
+<TGConnectingPoint num="59" id="2382" />
+<TGConnectingPoint num="60" id="2383" />
+<TGConnectingPoint num="61" id="2384" />
+<TGConnectingPoint num="62" id="2385" />
+<TGConnectingPoint num="63" id="2386" />
+<TGConnectingPoint num="64" id="2387" />
+<TGConnectingPoint num="65" id="2388" />
+<TGConnectingPoint num="66" id="2389" />
+<TGConnectingPoint num="67" id="2390" />
+<TGConnectingPoint num="68" id="2391" />
+<TGConnectingPoint num="69" id="2392" />
+<TGConnectingPoint num="70" id="2393" />
+<TGConnectingPoint num="71" id="2394" />
+<TGConnectingPoint num="72" id="2395" />
+<TGConnectingPoint num="73" id="2396" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="606" id="2472" >
+<cdparam x="33" y="76" />
+<sizeparam width="10" height="750" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Pilot" value="Pilot" />
+<TGConnectingPoint num="0" id="2398" />
+<TGConnectingPoint num="1" id="2399" />
+<TGConnectingPoint num="2" id="2400" />
+<TGConnectingPoint num="3" id="2401" />
+<TGConnectingPoint num="4" id="2402" />
+<TGConnectingPoint num="5" id="2403" />
+<TGConnectingPoint num="6" id="2404" />
+<TGConnectingPoint num="7" id="2405" />
+<TGConnectingPoint num="8" id="2406" />
+<TGConnectingPoint num="9" id="2407" />
+<TGConnectingPoint num="10" id="2408" />
+<TGConnectingPoint num="11" id="2409" />
+<TGConnectingPoint num="12" id="2410" />
+<TGConnectingPoint num="13" id="2411" />
+<TGConnectingPoint num="14" id="2412" />
+<TGConnectingPoint num="15" id="2413" />
+<TGConnectingPoint num="16" id="2414" />
+<TGConnectingPoint num="17" id="2415" />
+<TGConnectingPoint num="18" id="2416" />
+<TGConnectingPoint num="19" id="2417" />
+<TGConnectingPoint num="20" id="2418" />
+<TGConnectingPoint num="21" id="2419" />
+<TGConnectingPoint num="22" id="2420" />
+<TGConnectingPoint num="23" id="2421" />
+<TGConnectingPoint num="24" id="2422" />
+<TGConnectingPoint num="25" id="2423" />
+<TGConnectingPoint num="26" id="2424" />
+<TGConnectingPoint num="27" id="2425" />
+<TGConnectingPoint num="28" id="2426" />
+<TGConnectingPoint num="29" id="2427" />
+<TGConnectingPoint num="30" id="2428" />
+<TGConnectingPoint num="31" id="2429" />
+<TGConnectingPoint num="32" id="2430" />
+<TGConnectingPoint num="33" id="2431" />
+<TGConnectingPoint num="34" id="2432" />
+<TGConnectingPoint num="35" id="2433" />
+<TGConnectingPoint num="36" id="2434" />
+<TGConnectingPoint num="37" id="2435" />
+<TGConnectingPoint num="38" id="2436" />
+<TGConnectingPoint num="39" id="2437" />
+<TGConnectingPoint num="40" id="2438" />
+<TGConnectingPoint num="41" id="2439" />
+<TGConnectingPoint num="42" id="2440" />
+<TGConnectingPoint num="43" id="2441" />
+<TGConnectingPoint num="44" id="2442" />
+<TGConnectingPoint num="45" id="2443" />
+<TGConnectingPoint num="46" id="2444" />
+<TGConnectingPoint num="47" id="2445" />
+<TGConnectingPoint num="48" id="2446" />
+<TGConnectingPoint num="49" id="2447" />
+<TGConnectingPoint num="50" id="2448" />
+<TGConnectingPoint num="51" id="2449" />
+<TGConnectingPoint num="52" id="2450" />
+<TGConnectingPoint num="53" id="2451" />
+<TGConnectingPoint num="54" id="2452" />
+<TGConnectingPoint num="55" id="2453" />
+<TGConnectingPoint num="56" id="2454" />
+<TGConnectingPoint num="57" id="2455" />
+<TGConnectingPoint num="58" id="2456" />
+<TGConnectingPoint num="59" id="2457" />
+<TGConnectingPoint num="60" id="2458" />
+<TGConnectingPoint num="61" id="2459" />
+<TGConnectingPoint num="62" id="2460" />
+<TGConnectingPoint num="63" id="2461" />
+<TGConnectingPoint num="64" id="2462" />
+<TGConnectingPoint num="65" id="2463" />
+<TGConnectingPoint num="66" id="2464" />
+<TGConnectingPoint num="67" id="2465" />
+<TGConnectingPoint num="68" id="2466" />
+<TGConnectingPoint num="69" id="2467" />
+<TGConnectingPoint num="70" id="2468" />
+<TGConnectingPoint num="71" id="2469" />
+<TGConnectingPoint num="72" id="2470" />
+<TGConnectingPoint num="73" id="2471" />
+<extraparam>
+<Actor data="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="2489" >
+<cdparam x="385" y="235" />
+<sizeparam width="73" height="39" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="UML Note" value="    
+CC is lost
+   
+" />
+<TGConnectingPoint num="0" id="2473" />
+<TGConnectingPoint num="1" id="2474" />
+<TGConnectingPoint num="2" id="2475" />
+<TGConnectingPoint num="3" id="2476" />
+<TGConnectingPoint num="4" id="2477" />
+<TGConnectingPoint num="5" id="2478" />
+<TGConnectingPoint num="6" id="2479" />
+<TGConnectingPoint num="7" id="2480" />
+<TGConnectingPoint num="8" id="2481" />
+<TGConnectingPoint num="9" id="2482" />
+<TGConnectingPoint num="10" id="2483" />
+<TGConnectingPoint num="11" id="2484" />
+<TGConnectingPoint num="12" id="2485" />
+<TGConnectingPoint num="13" id="2486" />
+<TGConnectingPoint num="14" id="2487" />
+<TGConnectingPoint num="15" id="2488" />
+<extraparam>
+<Line value="    " />
+<Line value="CC is lost" />
+<Line value="   " />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="2506" >
+<cdparam x="387" y="639" />
+<sizeparam width="73" height="39" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="UML Note" value="    
+CC is lost
+   
+" />
+<TGConnectingPoint num="0" id="2490" />
+<TGConnectingPoint num="1" id="2491" />
+<TGConnectingPoint num="2" id="2492" />
+<TGConnectingPoint num="3" id="2493" />
+<TGConnectingPoint num="4" id="2494" />
+<TGConnectingPoint num="5" id="2495" />
+<TGConnectingPoint num="6" id="2496" />
+<TGConnectingPoint num="7" id="2497" />
+<TGConnectingPoint num="8" id="2498" />
+<TGConnectingPoint num="9" id="2499" />
+<TGConnectingPoint num="10" id="2500" />
+<TGConnectingPoint num="11" id="2501" />
+<TGConnectingPoint num="12" id="2502" />
+<TGConnectingPoint num="13" id="2503" />
+<TGConnectingPoint num="14" id="2504" />
+<TGConnectingPoint num="15" id="2505" />
+<extraparam>
+<Line value="    " />
+<Line value="CC is lost" />
+<Line value="   " />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="2523" >
+<cdparam x="384" y="440" />
+<sizeparam width="73" height="39" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="UML Note" value="    
+CC is lost
+   
+" />
+<TGConnectingPoint num="0" id="2507" />
+<TGConnectingPoint num="1" id="2508" />
+<TGConnectingPoint num="2" id="2509" />
+<TGConnectingPoint num="3" id="2510" />
+<TGConnectingPoint num="4" id="2511" />
+<TGConnectingPoint num="5" id="2512" />
+<TGConnectingPoint num="6" id="2513" />
+<TGConnectingPoint num="7" id="2514" />
+<TGConnectingPoint num="8" id="2515" />
+<TGConnectingPoint num="9" id="2516" />
+<TGConnectingPoint num="10" id="2517" />
+<TGConnectingPoint num="11" id="2518" />
+<TGConnectingPoint num="12" id="2519" />
+<TGConnectingPoint num="13" id="2520" />
+<TGConnectingPoint num="14" id="2521" />
+<TGConnectingPoint num="15" id="2522" />
+<extraparam>
+<Line value="    " />
+<Line value="CC is lost" />
+<Line value="   " />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="107" id="2524" >
+<cdparam x="201" y="726" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INerror" />
+<P1  x="201" y="726" id="2312" />
+<P2  x="38" y="726" id="2462" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2525" >
+<cdparam x="620" y="616" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CC" />
+<P1  x="620" y="616" id="2133" />
+<P2  x="447" y="616" id="2208" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2526" >
+<cdparam x="799" y="596" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconresp" />
+<P1  x="799" y="596" id="2374" />
+<P2  x="620" y="596" id="2131" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2527" >
+<cdparam x="620" y="576" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconind" />
+<P1  x="620" y="576" id="2129" />
+<P2  x="799" y="576" id="2372" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2528" >
+<cdparam x="447" y="556" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="447" y="556" id="2202" />
+<P2  x="620" y="556" id="2127" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2529" >
+<cdparam x="201" y="536" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="201" y="536" id="2293" />
+<P2  x="447" y="536" id="2200" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2530" >
+<cdparam x="620" y="406" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CC" />
+<P1  x="620" y="406" id="2112" />
+<P2  x="447" y="406" id="2187" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2531" >
+<cdparam x="799" y="386" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconresp" />
+<P1  x="799" y="386" id="2353" />
+<P2  x="620" y="386" id="2110" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2534" >
+<cdparam x="620" y="356" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconind" />
+<P1  x="620" y="356" id="2107" />
+<P2  x="799" y="356" id="2350" />
+<Point x="619" y="355" />
+<Point x="621" y="355" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2532" >
+<father id="2534" num="0" />
+<cdparam x="619" y="355" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2533" >
+<father id="2534" num="1" />
+<cdparam x="621" y="355" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="106" id="2535" >
+<cdparam x="461" y="336" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="447" y="336" id="2180" />
+<P2  x="620" y="336" id="2105" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2536" >
+<cdparam x="201" y="316" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="201" y="316" id="2271" />
+<P2  x="447" y="316" id="2178" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2537" >
+<cdparam x="620" y="226" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CC" />
+<P1  x="620" y="216" id="2093" />
+<P2  x="447" y="216" id="2168" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2538" >
+<cdparam x="461" y="146" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="447" y="146" id="2161" />
+<P2  x="620" y="146" id="2086" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="106" id="2539" >
+<cdparam x="201" y="126" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="CR" />
+<P1  x="201" y="126" id="2252" />
+<P2  x="447" y="126" id="2159" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2540" >
+<cdparam x="10" y="113" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="INconreq" />
+<P1  x="38" y="106" id="2400" />
+<P2  x="201" y="106" id="2250" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2541" >
+<cdparam x="798" y="197" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconresp" />
+<P1  x="799" y="196" id="2334" />
+<P2  x="620" y="196" id="2091" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="107" id="2542" >
+<cdparam x="620" y="167" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from instance to instance" value="INconind" />
+<P1  x="620" y="166" id="2088" />
+<P2  x="799" y="166" id="2331" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</SequenceDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="AVATAR Design" nameTab="Design_unlossy" >
+<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" >
+<MainCode value="void __user_init() {"/>
+<MainCode value="}"/>
+<Optimized value="true" />
+<Validated value="" />
+<Ignored value="" />
+
+<CONNECTOR type="5002" id="2548" >
+<cdparam x="117" y="266" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="" />
+<TGConnectingPoint num="0" id="2545" />
+<TGConnectingPoint num="1" id="2546" />
+<TGConnectingPoint num="2" id="2547" />
+<P1  x="117" y="266" id="2601" />
+<P2  x="464" y="267" id="2627" />
+<Point x="117" y="308" />
+<Point x="464" y="308" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in CC()" />
+<osd value="out CC()" />
+<isd value="in CR()" />
+<oso value="out CR()" />
+<FIFOType asynchronous="true" size="1" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR><SUBCOMPONENT type="-1" id="2543" >
+<father id="2548" num="0" />
+<cdparam x="117" y="308" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2544" >
+<father id="2548" num="1" />
+<cdparam x="464" y="308" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5002" id="2550" >
+<cdparam x="449" y="116" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block0 to Block0" value="" />
+<TGConnectingPoint num="0" id="2549" />
+<P1  x="424" y="104" id="2643" />
+<P2  x="424" y="143" id="2613" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in INconind()" />
+<osd value="out INconind()" />
+<isd value="in INconresp()" />
+<oso value="out INconresp()" />
+<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="5002" id="2552" >
+<cdparam x="145" y="116" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block0 to Block0" value="" />
+<TGConnectingPoint num="0" id="2551" />
+<P1  x="158" y="104" id="2668" />
+<P2  x="158" y="142" id="2588" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in INconconf()" />
+<osd value="out INconconf()" />
+<isd value="in INconreq()" />
+<oso value="out INconreq()" />
+<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<COMPONENT type="301" id="2569" >
+<cdparam x="235" y="287" />
+<sizeparam width="111" height="15" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="Unlossy channel
+" />
+<TGConnectingPoint num="0" id="2553" />
+<TGConnectingPoint num="1" id="2554" />
+<TGConnectingPoint num="2" id="2555" />
+<TGConnectingPoint num="3" id="2556" />
+<TGConnectingPoint num="4" id="2557" />
+<TGConnectingPoint num="5" id="2558" />
+<TGConnectingPoint num="6" id="2559" />
+<TGConnectingPoint num="7" id="2560" />
+<TGConnectingPoint num="8" id="2561" />
+<TGConnectingPoint num="9" id="2562" />
+<TGConnectingPoint num="10" id="2563" />
+<TGConnectingPoint num="11" id="2564" />
+<TGConnectingPoint num="12" id="2565" />
+<TGConnectingPoint num="13" id="2566" />
+<TGConnectingPoint num="14" id="2567" />
+<TGConnectingPoint num="15" id="2568" />
+<extraparam>
+<Line value="Unlossy channel" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="2586" >
+<cdparam x="10" y="332" />
+<sizeparam width="588" height="51" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="
+  Black squares: the protocol entities communicate by rendezvous with the Pilot and the Controller.
+  White squares: the protocol entities communicate bu FIFO queues with their underlying network.
+   
+" />
+<TGConnectingPoint num="0" id="2570" />
+<TGConnectingPoint num="1" id="2571" />
+<TGConnectingPoint num="2" id="2572" />
+<TGConnectingPoint num="3" id="2573" />
+<TGConnectingPoint num="4" id="2574" />
+<TGConnectingPoint num="5" id="2575" />
+<TGConnectingPoint num="6" id="2576" />
+<TGConnectingPoint num="7" id="2577" />
+<TGConnectingPoint num="8" id="2578" />
+<TGConnectingPoint num="9" id="2579" />
+<TGConnectingPoint num="10" id="2580" />
+<TGConnectingPoint num="11" id="2581" />
+<TGConnectingPoint num="12" id="2582" />
+<TGConnectingPoint num="13" id="2583" />
+<TGConnectingPoint num="14" id="2584" />
+<TGConnectingPoint num="15" id="2585" />
+<extraparam>
+<Line value="" />
+<Line value="  Black squares: the protocol entities communicate by rendezvous with the Pilot and the Controller." />
+<Line value="  White squares: the protocol entities communicate bu FIFO queues with their underlying network." />
+<Line value="   " />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="2611" >
+<cdparam x="77" y="142" />
+<sizeparam width="163" height="124" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="OnBoardCommunication" />
+<TGConnectingPoint num="0" id="2587" />
+<TGConnectingPoint num="1" id="2588" />
+<TGConnectingPoint num="2" id="2589" />
+<TGConnectingPoint num="3" id="2590" />
+<TGConnectingPoint num="4" id="2591" />
+<TGConnectingPoint num="5" id="2592" />
+<TGConnectingPoint num="6" id="2593" />
+<TGConnectingPoint num="7" id="2594" />
+<TGConnectingPoint num="8" id="2595" />
+<TGConnectingPoint num="9" id="2596" />
+<TGConnectingPoint num="10" id="2597" />
+<TGConnectingPoint num="11" id="2598" />
+<TGConnectingPoint num="12" id="2599" />
+<TGConnectingPoint num="13" id="2600" />
+<TGConnectingPoint num="14" id="2601" />
+<TGConnectingPoint num="15" id="2602" />
+<TGConnectingPoint num="16" id="2603" />
+<TGConnectingPoint num="17" id="2604" />
+<TGConnectingPoint num="18" id="2605" />
+<TGConnectingPoint num="19" id="2606" />
+<TGConnectingPoint num="20" id="2607" />
+<TGConnectingPoint num="21" id="2608" />
+<TGConnectingPoint num="22" id="2609" />
+<TGConnectingPoint num="23" id="2610" />
+<extraparam>
+<CryptoBlock value="false" />
+<Signal value="in INconreq()" attached="false" />
+<Signal value="out INconconf()" attached="false" />
+<Signal value="out CR()" attached="false" />
+<Signal value="in CC()" attached="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="2636" >
+<cdparam x="344" y="143" />
+<sizeparam width="161" height="124" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="GroundCommunication" />
+<TGConnectingPoint num="0" id="2612" />
+<TGConnectingPoint num="1" id="2613" />
+<TGConnectingPoint num="2" id="2614" />
+<TGConnectingPoint num="3" id="2615" />
+<TGConnectingPoint num="4" id="2616" />
+<TGConnectingPoint num="5" id="2617" />
+<TGConnectingPoint num="6" id="2618" />
+<TGConnectingPoint num="7" id="2619" />
+<TGConnectingPoint num="8" id="2620" />
+<TGConnectingPoint num="9" id="2621" />
+<TGConnectingPoint num="10" id="2622" />
+<TGConnectingPoint num="11" id="2623" />
+<TGConnectingPoint num="12" id="2624" />
+<TGConnectingPoint num="13" id="2625" />
+<TGConnectingPoint num="14" id="2626" />
+<TGConnectingPoint num="15" id="2627" />
+<TGConnectingPoint num="16" id="2628" />
+<TGConnectingPoint num="17" id="2629" />
+<TGConnectingPoint num="18" id="2630" />
+<TGConnectingPoint num="19" id="2631" />
+<TGConnectingPoint num="20" id="2632" />
+<TGConnectingPoint num="21" id="2633" />
+<TGConnectingPoint num="22" id="2634" />
+<TGConnectingPoint num="23" id="2635" />
+<extraparam>
+<CryptoBlock value="false" />
+<Signal value="in CR()" attached="false" />
+<Signal value="out CC()" attached="false" />
+<Signal value="out INconind()" attached="false" />
+<Signal value="in INconresp()" attached="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="2661" >
+<cdparam x="346" y="10" />
+<sizeparam width="157" height="94" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="Controller" />
+<TGConnectingPoint num="0" id="2637" />
+<TGConnectingPoint num="1" id="2638" />
+<TGConnectingPoint num="2" id="2639" />
+<TGConnectingPoint num="3" id="2640" />
+<TGConnectingPoint num="4" id="2641" />
+<TGConnectingPoint num="5" id="2642" />
+<TGConnectingPoint num="6" id="2643" />
+<TGConnectingPoint num="7" id="2644" />
+<TGConnectingPoint num="8" id="2645" />
+<TGConnectingPoint num="9" id="2646" />
+<TGConnectingPoint num="10" id="2647" />
+<TGConnectingPoint num="11" id="2648" />
+<TGConnectingPoint num="12" id="2649" />
+<TGConnectingPoint num="13" id="2650" />
+<TGConnectingPoint num="14" id="2651" />
+<TGConnectingPoint num="15" id="2652" />
+<TGConnectingPoint num="16" id="2653" />
+<TGConnectingPoint num="17" id="2654" />
+<TGConnectingPoint num="18" id="2655" />
+<TGConnectingPoint num="19" id="2656" />
+<TGConnectingPoint num="20" id="2657" />
+<TGConnectingPoint num="21" id="2658" />
+<TGConnectingPoint num="22" id="2659" />
+<TGConnectingPoint num="23" id="2660" />
+<extraparam>
+<CryptoBlock value="false" />
+<Signal value="in INconind()" attached="false" />
+<Signal value="out INconresp()" attached="false" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="2686" >
+<cdparam x="76" y="10" />
+<sizeparam width="165" height="94" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="Pilot" />
+<TGConnectingPoint num="0" id="2662" />
+<TGConnectingPoint num="1" id="2663" />
+<TGConnectingPoint num="2" id="2664" />
+<TGConnectingPoint num="3" id="2665" />
+<TGConnectingPoint num="4" id="2666" />
+<TGConnectingPoint num="5" id="2667" />
+<TGConnectingPoint num="6" id="2668" />
+<TGConnectingPoint num="7" id="2669" />
+<TGConnectingPoint num="8" id="2670" />
+<TGConnectingPoint num="9" id="2671" />
+<TGConnectingPoint num="10" id="2672" />
+<TGConnectingPoint num="11" id="2673" />
+<TGConnectingPoint num="12" id="2674" />
+<TGConnectingPoint num="13" id="2675" />
+<TGConnectingPoint num="14" id="2676" />
+<TGConnectingPoint num="15" id="2677" />
+<TGConnectingPoint num="16" id="2678" />
+<TGConnectingPoint num="17" id="2679" />
+<TGConnectingPoint num="18" id="2680" />
+<TGConnectingPoint num="19" id="2681" />
+<TGConnectingPoint num="20" id="2682" />
+<TGConnectingPoint num="21" id="2683" />
+<TGConnectingPoint num="22" id="2684" />
+<TGConnectingPoint num="23" id="2685" />
+<extraparam>
+<CryptoBlock value="false" />
+<Signal value="out INconreq()" attached="false" />
+<Signal value="in INconconf()" attached="false" />
+</extraparam>
+</COMPONENT>
+
+
+</AVATARBlockDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="OnBoardCommunication" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="2693" >
+<cdparam x="82" y="38" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="2692" />
+<P1  x="68" y="42" id="2944" />
+<P2  x="88" y="61" id="2904" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2691" >
+<father id="2693" num="0" />
+<cdparam x="82" y="78" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2687" />
+<TGConnectingPoint num="1" id="2688" />
+<TGConnectingPoint num="2" id="2689" />
+<TGConnectingPoint num="3" id="2690" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2700" >
+<cdparam x="88" y="111" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="2699" />
+<P1  x="88" y="111" id="2909" />
+<P2  x="88" y="133" id="2892" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2698" >
+<father id="2700" num="0" />
+<cdparam x="88" y="151" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2694" />
+<TGConnectingPoint num="1" id="2695" />
+<TGConnectingPoint num="2" id="2696" />
+<TGConnectingPoint num="3" id="2697" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2707" >
+<cdparam x="88" y="163" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2706" />
+<P1  x="88" y="163" id="2893" />
+<P2  x="87" y="181" id="2881" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2705" >
+<father id="2707" num="0" />
+<cdparam x="88" y="203" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2701" />
+<TGConnectingPoint num="1" id="2702" />
+<TGConnectingPoint num="2" id="2703" />
+<TGConnectingPoint num="3" id="2704" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2714" >
+<cdparam x="87" y="211" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="2713" />
+<P1  x="87" y="211" id="2882" />
+<P2  x="87" y="232" id="2841" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2712" >
+<father id="2714" num="0" />
+<cdparam x="87" y="251" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2708" />
+<TGConnectingPoint num="1" id="2709" />
+<TGConnectingPoint num="2" id="2710" />
+<TGConnectingPoint num="3" id="2711" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2721" >
+<cdparam x="304" y="109" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="2720" />
+<P1  x="304" y="109" id="2805" />
+<P2  x="304" y="134" id="2788" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2719" >
+<father id="2721" num="0" />
+<cdparam x="304" y="149" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2715" />
+<TGConnectingPoint num="1" id="2716" />
+<TGConnectingPoint num="2" id="2717" />
+<TGConnectingPoint num="3" id="2718" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2728" >
+<cdparam x="304" y="164" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2727" />
+<P1  x="304" y="164" id="2789" />
+<P2  x="304" y="188" id="2777" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2726" >
+<father id="2728" num="0" />
+<cdparam x="304" y="204" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2722" />
+<TGConnectingPoint num="1" id="2723" />
+<TGConnectingPoint num="2" id="2724" />
+<TGConnectingPoint num="3" id="2725" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2735" >
+<cdparam x="304" y="218" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="2734" />
+<P1  x="304" y="218" id="2778" />
+<P2  x="304" y="241" id="2737" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2733" >
+<father id="2735" num="0" />
+<cdparam x="304" y="258" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2729" />
+<TGConnectingPoint num="1" id="2730" />
+<TGConnectingPoint num="2" id="2731" />
+<TGConnectingPoint num="3" id="2732" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5106" id="2776" >
+<cdparam x="246" y="241" />
+<sizeparam width="117" height="47" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="CONNECTED" />
+<TGConnectingPoint num="0" id="2736" />
+<TGConnectingPoint num="1" id="2737" />
+<TGConnectingPoint num="2" id="2738" />
+<TGConnectingPoint num="3" id="2739" />
+<TGConnectingPoint num="4" id="2740" />
+<TGConnectingPoint num="5" id="2741" />
+<TGConnectingPoint num="6" id="2742" />
+<TGConnectingPoint num="7" id="2743" />
+<TGConnectingPoint num="8" id="2744" />
+<TGConnectingPoint num="9" id="2745" />
+<TGConnectingPoint num="10" id="2746" />
+<TGConnectingPoint num="11" id="2747" />
+<TGConnectingPoint num="12" id="2748" />
+<TGConnectingPoint num="13" id="2749" />
+<TGConnectingPoint num="14" id="2750" />
+<TGConnectingPoint num="15" id="2751" />
+<TGConnectingPoint num="16" id="2752" />
+<TGConnectingPoint num="17" id="2753" />
+<TGConnectingPoint num="18" id="2754" />
+<TGConnectingPoint num="19" id="2755" />
+<TGConnectingPoint num="20" id="2756" />
+<TGConnectingPoint num="21" id="2757" />
+<TGConnectingPoint num="22" id="2758" />
+<TGConnectingPoint num="23" id="2759" />
+<TGConnectingPoint num="24" id="2760" />
+<TGConnectingPoint num="25" id="2761" />
+<TGConnectingPoint num="26" id="2762" />
+<TGConnectingPoint num="27" id="2763" />
+<TGConnectingPoint num="28" id="2764" />
+<TGConnectingPoint num="29" id="2765" />
+<TGConnectingPoint num="30" id="2766" />
+<TGConnectingPoint num="31" id="2767" />
+<TGConnectingPoint num="32" id="2768" />
+<TGConnectingPoint num="33" id="2769" />
+<TGConnectingPoint num="34" id="2770" />
+<TGConnectingPoint num="35" id="2771" />
+<TGConnectingPoint num="36" id="2772" />
+<TGConnectingPoint num="37" id="2773" />
+<TGConnectingPoint num="38" id="2774" />
+<TGConnectingPoint num="39" id="2775" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="2787" >
+<cdparam x="267" y="193" />
+<sizeparam width="74" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INconconf()" />
+<TGConnectingPoint num="0" id="2777" />
+<TGConnectingPoint num="1" id="2778" />
+<TGConnectingPoint num="2" id="2779" />
+<TGConnectingPoint num="3" id="2780" />
+<TGConnectingPoint num="4" id="2781" />
+<TGConnectingPoint num="5" id="2782" />
+<TGConnectingPoint num="6" id="2783" />
+<TGConnectingPoint num="7" id="2784" />
+<TGConnectingPoint num="8" id="2785" />
+<TGConnectingPoint num="9" id="2786" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="2798" >
+<cdparam x="283" y="139" />
+<sizeparam width="42" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="CC()" />
+<TGConnectingPoint num="0" id="2788" />
+<TGConnectingPoint num="1" id="2789" />
+<TGConnectingPoint num="2" id="2790" />
+<TGConnectingPoint num="3" id="2791" />
+<TGConnectingPoint num="4" id="2792" />
+<TGConnectingPoint num="5" id="2793" />
+<TGConnectingPoint num="6" id="2794" />
+<TGConnectingPoint num="7" id="2795" />
+<TGConnectingPoint num="8" id="2796" />
+<TGConnectingPoint num="9" id="2797" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="2839" >
+<cdparam x="246" y="58" />
+<sizeparam width="117" height="51" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="WAIT_FOR_CONF" />
+<TGConnectingPoint num="0" id="2799" />
+<TGConnectingPoint num="1" id="2800" />
+<TGConnectingPoint num="2" id="2801" />
+<TGConnectingPoint num="3" id="2802" />
+<TGConnectingPoint num="4" id="2803" />
+<TGConnectingPoint num="5" id="2804" />
+<TGConnectingPoint num="6" id="2805" />
+<TGConnectingPoint num="7" id="2806" />
+<TGConnectingPoint num="8" id="2807" />
+<TGConnectingPoint num="9" id="2808" />
+<TGConnectingPoint num="10" id="2809" />
+<TGConnectingPoint num="11" id="2810" />
+<TGConnectingPoint num="12" id="2811" />
+<TGConnectingPoint num="13" id="2812" />
+<TGConnectingPoint num="14" id="2813" />
+<TGConnectingPoint num="15" id="2814" />
+<TGConnectingPoint num="16" id="2815" />
+<TGConnectingPoint num="17" id="2816" />
+<TGConnectingPoint num="18" id="2817" />
+<TGConnectingPoint num="19" id="2818" />
+<TGConnectingPoint num="20" id="2819" />
+<TGConnectingPoint num="21" id="2820" />
+<TGConnectingPoint num="22" id="2821" />
+<TGConnectingPoint num="23" id="2822" />
+<TGConnectingPoint num="24" id="2823" />
+<TGConnectingPoint num="25" id="2824" />
+<TGConnectingPoint num="26" id="2825" />
+<TGConnectingPoint num="27" id="2826" />
+<TGConnectingPoint num="28" id="2827" />
+<TGConnectingPoint num="29" id="2828" />
+<TGConnectingPoint num="30" id="2829" />
+<TGConnectingPoint num="31" id="2830" />
+<TGConnectingPoint num="32" id="2831" />
+<TGConnectingPoint num="33" id="2832" />
+<TGConnectingPoint num="34" id="2833" />
+<TGConnectingPoint num="35" id="2834" />
+<TGConnectingPoint num="36" id="2835" />
+<TGConnectingPoint num="37" id="2836" />
+<TGConnectingPoint num="38" id="2837" />
+<TGConnectingPoint num="39" id="2838" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="2880" >
+<cdparam x="19" y="232" />
+<sizeparam width="137" height="52" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="WAIT_FOR_CONF" />
+<TGConnectingPoint num="0" id="2840" />
+<TGConnectingPoint num="1" id="2841" />
+<TGConnectingPoint num="2" id="2842" />
+<TGConnectingPoint num="3" id="2843" />
+<TGConnectingPoint num="4" id="2844" />
+<TGConnectingPoint num="5" id="2845" />
+<TGConnectingPoint num="6" id="2846" />
+<TGConnectingPoint num="7" id="2847" />
+<TGConnectingPoint num="8" id="2848" />
+<TGConnectingPoint num="9" id="2849" />
+<TGConnectingPoint num="10" id="2850" />
+<TGConnectingPoint num="11" id="2851" />
+<TGConnectingPoint num="12" id="2852" />
+<TGConnectingPoint num="13" id="2853" />
+<TGConnectingPoint num="14" id="2854" />
+<TGConnectingPoint num="15" id="2855" />
+<TGConnectingPoint num="16" id="2856" />
+<TGConnectingPoint num="17" id="2857" />
+<TGConnectingPoint num="18" id="2858" />
+<TGConnectingPoint num="19" id="2859" />
+<TGConnectingPoint num="20" id="2860" />
+<TGConnectingPoint num="21" id="2861" />
+<TGConnectingPoint num="22" id="2862" />
+<TGConnectingPoint num="23" id="2863" />
+<TGConnectingPoint num="24" id="2864" />
+<TGConnectingPoint num="25" id="2865" />
+<TGConnectingPoint num="26" id="2866" />
+<TGConnectingPoint num="27" id="2867" />
+<TGConnectingPoint num="28" id="2868" />
+<TGConnectingPoint num="29" id="2869" />
+<TGConnectingPoint num="30" id="2870" />
+<TGConnectingPoint num="31" id="2871" />
+<TGConnectingPoint num="32" id="2872" />
+<TGConnectingPoint num="33" id="2873" />
+<TGConnectingPoint num="34" id="2874" />
+<TGConnectingPoint num="35" id="2875" />
+<TGConnectingPoint num="36" id="2876" />
+<TGConnectingPoint num="37" id="2877" />
+<TGConnectingPoint num="38" id="2878" />
+<TGConnectingPoint num="39" id="2879" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="2891" >
+<cdparam x="70" y="186" />
+<sizeparam width="34" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="CR()" />
+<TGConnectingPoint num="0" id="2881" />
+<TGConnectingPoint num="1" id="2882" />
+<TGConnectingPoint num="2" id="2883" />
+<TGConnectingPoint num="3" id="2884" />
+<TGConnectingPoint num="4" id="2885" />
+<TGConnectingPoint num="5" id="2886" />
+<TGConnectingPoint num="6" id="2887" />
+<TGConnectingPoint num="7" id="2888" />
+<TGConnectingPoint num="8" id="2889" />
+<TGConnectingPoint num="9" id="2890" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="2902" >
+<cdparam x="49" y="138" />
+<sizeparam width="78" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INconreq()" />
+<TGConnectingPoint num="0" id="2892" />
+<TGConnectingPoint num="1" id="2893" />
+<TGConnectingPoint num="2" id="2894" />
+<TGConnectingPoint num="3" id="2895" />
+<TGConnectingPoint num="4" id="2896" />
+<TGConnectingPoint num="5" id="2897" />
+<TGConnectingPoint num="6" id="2898" />
+<TGConnectingPoint num="7" id="2899" />
+<TGConnectingPoint num="8" id="2900" />
+<TGConnectingPoint num="9" id="2901" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="2943" >
+<cdparam x="38" y="61" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="IDLE" />
+<TGConnectingPoint num="0" id="2903" />
+<TGConnectingPoint num="1" id="2904" />
+<TGConnectingPoint num="2" id="2905" />
+<TGConnectingPoint num="3" id="2906" />
+<TGConnectingPoint num="4" id="2907" />
+<TGConnectingPoint num="5" id="2908" />
+<TGConnectingPoint num="6" id="2909" />
+<TGConnectingPoint num="7" id="2910" />
+<TGConnectingPoint num="8" id="2911" />
+<TGConnectingPoint num="9" id="2912" />
+<TGConnectingPoint num="10" id="2913" />
+<TGConnectingPoint num="11" id="2914" />
+<TGConnectingPoint num="12" id="2915" />
+<TGConnectingPoint num="13" id="2916" />
+<TGConnectingPoint num="14" id="2917" />
+<TGConnectingPoint num="15" id="2918" />
+<TGConnectingPoint num="16" id="2919" />
+<TGConnectingPoint num="17" id="2920" />
+<TGConnectingPoint num="18" id="2921" />
+<TGConnectingPoint num="19" id="2922" />
+<TGConnectingPoint num="20" id="2923" />
+<TGConnectingPoint num="21" id="2924" />
+<TGConnectingPoint num="22" id="2925" />
+<TGConnectingPoint num="23" id="2926" />
+<TGConnectingPoint num="24" id="2927" />
+<TGConnectingPoint num="25" id="2928" />
+<TGConnectingPoint num="26" id="2929" />
+<TGConnectingPoint num="27" id="2930" />
+<TGConnectingPoint num="28" id="2931" />
+<TGConnectingPoint num="29" id="2932" />
+<TGConnectingPoint num="30" id="2933" />
+<TGConnectingPoint num="31" id="2934" />
+<TGConnectingPoint num="32" id="2935" />
+<TGConnectingPoint num="33" id="2936" />
+<TGConnectingPoint num="34" id="2937" />
+<TGConnectingPoint num="35" id="2938" />
+<TGConnectingPoint num="36" id="2939" />
+<TGConnectingPoint num="37" id="2940" />
+<TGConnectingPoint num="38" id="2941" />
+<TGConnectingPoint num="39" id="2942" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="2945" >
+<cdparam x="61" y="22" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="2944" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="GroundCommunication" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="2952" >
+<cdparam x="86" y="48" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="2951" />
+<P1  x="86" y="48" id="3203" />
+<P2  x="87" y="72" id="3163" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2950" >
+<father id="2952" num="0" />
+<cdparam x="86" y="88" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2946" />
+<TGConnectingPoint num="1" id="2947" />
+<TGConnectingPoint num="2" id="2948" />
+<TGConnectingPoint num="3" id="2949" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2959" >
+<cdparam x="99" y="122" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="2958" />
+<P1  x="99" y="122" id="3192" />
+<P2  x="99" y="151" id="3151" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2957" >
+<father id="2959" num="0" />
+<cdparam x="99" y="162" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2953" />
+<TGConnectingPoint num="1" id="2954" />
+<TGConnectingPoint num="2" id="2955" />
+<TGConnectingPoint num="3" id="2956" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2966" >
+<cdparam x="99" y="181" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2965" />
+<P1  x="99" y="181" id="3152" />
+<P2  x="99" y="207" id="3140" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2964" >
+<father id="2966" num="0" />
+<cdparam x="99" y="221" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2960" />
+<TGConnectingPoint num="1" id="2961" />
+<TGConnectingPoint num="2" id="2962" />
+<TGConnectingPoint num="3" id="2963" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2973" >
+<cdparam x="99" y="237" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="2972" />
+<P1  x="99" y="237" id="3141" />
+<P2  x="99" y="262" id="3100" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2971" >
+<father id="2973" num="0" />
+<cdparam x="99" y="277" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2967" />
+<TGConnectingPoint num="1" id="2968" />
+<TGConnectingPoint num="2" id="2969" />
+<TGConnectingPoint num="3" id="2970" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2980" >
+<cdparam x="327" y="119" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="2979" />
+<P1  x="327" y="119" id="3088" />
+<P2  x="327" y="145" id="3047" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2978" >
+<father id="2980" num="0" />
+<cdparam x="327" y="159" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2974" />
+<TGConnectingPoint num="1" id="2975" />
+<TGConnectingPoint num="2" id="2976" />
+<TGConnectingPoint num="3" id="2977" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2987" >
+<cdparam x="327" y="175" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="2986" />
+<P1  x="327" y="175" id="3048" />
+<P2  x="327" y="204" id="3036" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2985" >
+<father id="2987" num="0" />
+<cdparam x="327" y="215" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2981" />
+<TGConnectingPoint num="1" id="2982" />
+<TGConnectingPoint num="2" id="2983" />
+<TGConnectingPoint num="3" id="2984" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="2994" >
+<cdparam x="327" y="234" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="2993" />
+<P1  x="327" y="234" id="3037" />
+<P2  x="327" y="261" id="2996" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2992" >
+<father id="2994" num="0" />
+<cdparam x="327" y="274" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="2988" />
+<TGConnectingPoint num="1" id="2989" />
+<TGConnectingPoint num="2" id="2990" />
+<TGConnectingPoint num="3" id="2991" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5106" id="3035" >
+<cdparam x="277" y="261" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="IDLE" />
+<TGConnectingPoint num="0" id="2995" />
+<TGConnectingPoint num="1" id="2996" />
+<TGConnectingPoint num="2" id="2997" />
+<TGConnectingPoint num="3" id="2998" />
+<TGConnectingPoint num="4" id="2999" />
+<TGConnectingPoint num="5" id="3000" />
+<TGConnectingPoint num="6" id="3001" />
+<TGConnectingPoint num="7" id="3002" />
+<TGConnectingPoint num="8" id="3003" />
+<TGConnectingPoint num="9" id="3004" />
+<TGConnectingPoint num="10" id="3005" />
+<TGConnectingPoint num="11" id="3006" />
+<TGConnectingPoint num="12" id="3007" />
+<TGConnectingPoint num="13" id="3008" />
+<TGConnectingPoint num="14" id="3009" />
+<TGConnectingPoint num="15" id="3010" />
+<TGConnectingPoint num="16" id="3011" />
+<TGConnectingPoint num="17" id="3012" />
+<TGConnectingPoint num="18" id="3013" />
+<TGConnectingPoint num="19" id="3014" />
+<TGConnectingPoint num="20" id="3015" />
+<TGConnectingPoint num="21" id="3016" />
+<TGConnectingPoint num="22" id="3017" />
+<TGConnectingPoint num="23" id="3018" />
+<TGConnectingPoint num="24" id="3019" />
+<TGConnectingPoint num="25" id="3020" />
+<TGConnectingPoint num="26" id="3021" />
+<TGConnectingPoint num="27" id="3022" />
+<TGConnectingPoint num="28" id="3023" />
+<TGConnectingPoint num="29" id="3024" />
+<TGConnectingPoint num="30" id="3025" />
+<TGConnectingPoint num="31" id="3026" />
+<TGConnectingPoint num="32" id="3027" />
+<TGConnectingPoint num="33" id="3028" />
+<TGConnectingPoint num="34" id="3029" />
+<TGConnectingPoint num="35" id="3030" />
+<TGConnectingPoint num="36" id="3031" />
+<TGConnectingPoint num="37" id="3032" />
+<TGConnectingPoint num="38" id="3033" />
+<TGConnectingPoint num="39" id="3034" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="3046" >
+<cdparam x="310" y="209" />
+<sizeparam width="34" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="CC()" />
+<TGConnectingPoint num="0" id="3036" />
+<TGConnectingPoint num="1" id="3037" />
+<TGConnectingPoint num="2" id="3038" />
+<TGConnectingPoint num="3" id="3039" />
+<TGConnectingPoint num="4" id="3040" />
+<TGConnectingPoint num="5" id="3041" />
+<TGConnectingPoint num="6" id="3042" />
+<TGConnectingPoint num="7" id="3043" />
+<TGConnectingPoint num="8" id="3044" />
+<TGConnectingPoint num="9" id="3045" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="3057" >
+<cdparam x="285" y="150" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INconresp()" />
+<TGConnectingPoint num="0" id="3047" />
+<TGConnectingPoint num="1" id="3048" />
+<TGConnectingPoint num="2" id="3049" />
+<TGConnectingPoint num="3" id="3050" />
+<TGConnectingPoint num="4" id="3051" />
+<TGConnectingPoint num="5" id="3052" />
+<TGConnectingPoint num="6" id="3053" />
+<TGConnectingPoint num="7" id="3054" />
+<TGConnectingPoint num="8" id="3055" />
+<TGConnectingPoint num="9" id="3056" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="3098" >
+<cdparam x="254" y="69" />
+<sizeparam width="119" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="WAIT_FOR_RESP" />
+<TGConnectingPoint num="0" id="3058" />
+<TGConnectingPoint num="1" id="3059" />
+<TGConnectingPoint num="2" id="3060" />
+<TGConnectingPoint num="3" id="3061" />
+<TGConnectingPoint num="4" id="3062" />
+<TGConnectingPoint num="5" id="3063" />
+<TGConnectingPoint num="6" id="3064" />
+<TGConnectingPoint num="7" id="3065" />
+<TGConnectingPoint num="8" id="3066" />
+<TGConnectingPoint num="9" id="3067" />
+<TGConnectingPoint num="10" id="3068" />
+<TGConnectingPoint num="11" id="3069" />
+<TGConnectingPoint num="12" id="3070" />
+<TGConnectingPoint num="13" id="3071" />
+<TGConnectingPoint num="14" id="3072" />
+<TGConnectingPoint num="15" id="3073" />
+<TGConnectingPoint num="16" id="3074" />
+<TGConnectingPoint num="17" id="3075" />
+<TGConnectingPoint num="18" id="3076" />
+<TGConnectingPoint num="19" id="3077" />
+<TGConnectingPoint num="20" id="3078" />
+<TGConnectingPoint num="21" id="3079" />
+<TGConnectingPoint num="22" id="3080" />
+<TGConnectingPoint num="23" id="3081" />
+<TGConnectingPoint num="24" id="3082" />
+<TGConnectingPoint num="25" id="3083" />
+<TGConnectingPoint num="26" id="3084" />
+<TGConnectingPoint num="27" id="3085" />
+<TGConnectingPoint num="28" id="3086" />
+<TGConnectingPoint num="29" id="3087" />
+<TGConnectingPoint num="30" id="3088" />
+<TGConnectingPoint num="31" id="3089" />
+<TGConnectingPoint num="32" id="3090" />
+<TGConnectingPoint num="33" id="3091" />
+<TGConnectingPoint num="34" id="3092" />
+<TGConnectingPoint num="35" id="3093" />
+<TGConnectingPoint num="36" id="3094" />
+<TGConnectingPoint num="37" id="3095" />
+<TGConnectingPoint num="38" id="3096" />
+<TGConnectingPoint num="39" id="3097" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="3139" >
+<cdparam x="39" y="262" />
+<sizeparam width="121" height="49" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="WAIT_FOR_RESP" />
+<TGConnectingPoint num="0" id="3099" />
+<TGConnectingPoint num="1" id="3100" />
+<TGConnectingPoint num="2" id="3101" />
+<TGConnectingPoint num="3" id="3102" />
+<TGConnectingPoint num="4" id="3103" />
+<TGConnectingPoint num="5" id="3104" />
+<TGConnectingPoint num="6" id="3105" />
+<TGConnectingPoint num="7" id="3106" />
+<TGConnectingPoint num="8" id="3107" />
+<TGConnectingPoint num="9" id="3108" />
+<TGConnectingPoint num="10" id="3109" />
+<TGConnectingPoint num="11" id="3110" />
+<TGConnectingPoint num="12" id="3111" />
+<TGConnectingPoint num="13" id="3112" />
+<TGConnectingPoint num="14" id="3113" />
+<TGConnectingPoint num="15" id="3114" />
+<TGConnectingPoint num="16" id="3115" />
+<TGConnectingPoint num="17" id="3116" />
+<TGConnectingPoint num="18" id="3117" />
+<TGConnectingPoint num="19" id="3118" />
+<TGConnectingPoint num="20" id="3119" />
+<TGConnectingPoint num="21" id="3120" />
+<TGConnectingPoint num="22" id="3121" />
+<TGConnectingPoint num="23" id="3122" />
+<TGConnectingPoint num="24" id="3123" />
+<TGConnectingPoint num="25" id="3124" />
+<TGConnectingPoint num="26" id="3125" />
+<TGConnectingPoint num="27" id="3126" />
+<TGConnectingPoint num="28" id="3127" />
+<TGConnectingPoint num="29" id="3128" />
+<TGConnectingPoint num="30" id="3129" />
+<TGConnectingPoint num="31" id="3130" />
+<TGConnectingPoint num="32" id="3131" />
+<TGConnectingPoint num="33" id="3132" />
+<TGConnectingPoint num="34" id="3133" />
+<TGConnectingPoint num="35" id="3134" />
+<TGConnectingPoint num="36" id="3135" />
+<TGConnectingPoint num="37" id="3136" />
+<TGConnectingPoint num="38" id="3137" />
+<TGConnectingPoint num="39" id="3138" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="3150" >
+<cdparam x="65" y="212" />
+<sizeparam width="68" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INconind()" />
+<TGConnectingPoint num="0" id="3140" />
+<TGConnectingPoint num="1" id="3141" />
+<TGConnectingPoint num="2" id="3142" />
+<TGConnectingPoint num="3" id="3143" />
+<TGConnectingPoint num="4" id="3144" />
+<TGConnectingPoint num="5" id="3145" />
+<TGConnectingPoint num="6" id="3146" />
+<TGConnectingPoint num="7" id="3147" />
+<TGConnectingPoint num="8" id="3148" />
+<TGConnectingPoint num="9" id="3149" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="3161" >
+<cdparam x="78" y="156" />
+<sizeparam width="42" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="CR()" />
+<TGConnectingPoint num="0" id="3151" />
+<TGConnectingPoint num="1" id="3152" />
+<TGConnectingPoint num="2" id="3153" />
+<TGConnectingPoint num="3" id="3154" />
+<TGConnectingPoint num="4" id="3155" />
+<TGConnectingPoint num="5" id="3156" />
+<TGConnectingPoint num="6" id="3157" />
+<TGConnectingPoint num="7" id="3158" />
+<TGConnectingPoint num="8" id="3159" />
+<TGConnectingPoint num="9" id="3160" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="3202" >
+<cdparam x="37" y="72" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="IDLE" />
+<TGConnectingPoint num="0" id="3162" />
+<TGConnectingPoint num="1" id="3163" />
+<TGConnectingPoint num="2" id="3164" />
+<TGConnectingPoint num="3" id="3165" />
+<TGConnectingPoint num="4" id="3166" />
+<TGConnectingPoint num="5" id="3167" />
+<TGConnectingPoint num="6" id="3168" />
+<TGConnectingPoint num="7" id="3169" />
+<TGConnectingPoint num="8" id="3170" />
+<TGConnectingPoint num="9" id="3171" />
+<TGConnectingPoint num="10" id="3172" />
+<TGConnectingPoint num="11" id="3173" />
+<TGConnectingPoint num="12" id="3174" />
+<TGConnectingPoint num="13" id="3175" />
+<TGConnectingPoint num="14" id="3176" />
+<TGConnectingPoint num="15" id="3177" />
+<TGConnectingPoint num="16" id="3178" />
+<TGConnectingPoint num="17" id="3179" />
+<TGConnectingPoint num="18" id="3180" />
+<TGConnectingPoint num="19" id="3181" />
+<TGConnectingPoint num="20" id="3182" />
+<TGConnectingPoint num="21" id="3183" />
+<TGConnectingPoint num="22" id="3184" />
+<TGConnectingPoint num="23" id="3185" />
+<TGConnectingPoint num="24" id="3186" />
+<TGConnectingPoint num="25" id="3187" />
+<TGConnectingPoint num="26" id="3188" />
+<TGConnectingPoint num="27" id="3189" />
+<TGConnectingPoint num="28" id="3190" />
+<TGConnectingPoint num="29" id="3191" />
+<TGConnectingPoint num="30" id="3192" />
+<TGConnectingPoint num="31" id="3193" />
+<TGConnectingPoint num="32" id="3194" />
+<TGConnectingPoint num="33" id="3195" />
+<TGConnectingPoint num="34" id="3196" />
+<TGConnectingPoint num="35" id="3197" />
+<TGConnectingPoint num="36" id="3198" />
+<TGConnectingPoint num="37" id="3199" />
+<TGConnectingPoint num="38" id="3200" />
+<TGConnectingPoint num="39" id="3201" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="3204" >
+<cdparam x="79" y="28" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="3203" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Controller" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="3217" >
+<cdparam x="153" y="198" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3213" />
+<TGConnectingPoint num="1" id="3214" />
+<TGConnectingPoint num="2" id="3215" />
+<TGConnectingPoint num="3" id="3216" />
+<P1  x="153" y="198" id="3264" />
+<P2  x="261" y="114" id="3297" />
+<Point x="153" y="216" />
+<Point x="309" y="216" />
+<Point x="309" y="114" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3205" >
+<father id="3217" num="0" />
+<cdparam x="153" y="216" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3206" >
+<father id="3217" num="1" />
+<cdparam x="309" y="216" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3207" >
+<father id="3217" num="2" />
+<cdparam x="309" y="114" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3212" >
+<father id="3217" num="3" />
+<cdparam x="153" y="238" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3208" />
+<TGConnectingPoint num="1" id="3209" />
+<TGConnectingPoint num="2" id="3210" />
+<TGConnectingPoint num="3" id="3211" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3230" >
+<cdparam x="247" y="197" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3226" />
+<TGConnectingPoint num="1" id="3227" />
+<TGConnectingPoint num="2" id="3228" />
+<TGConnectingPoint num="3" id="3229" />
+<P1  x="247" y="197" id="3253" />
+<P2  x="261" y="133" id="3287" />
+<Point x="247" y="207" />
+<Point x="298" y="207" />
+<Point x="298" y="133" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3218" >
+<father id="3230" num="0" />
+<cdparam x="247" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3219" >
+<father id="3230" num="1" />
+<cdparam x="298" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3220" >
+<father id="3230" num="2" />
+<cdparam x="298" y="133" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3225" >
+<father id="3230" num="3" />
+<cdparam x="247" y="237" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3221" />
+<TGConnectingPoint num="1" id="3222" />
+<TGConnectingPoint num="2" id="3223" />
+<TGConnectingPoint num="3" id="3224" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3237" >
+<cdparam x="186" y="62" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="3236" />
+<P1  x="186" y="62" id="3315" />
+<P2  x="211" y="96" id="3275" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3235" >
+<father id="3237" num="0" />
+<cdparam x="211" y="104" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3231" />
+<TGConnectingPoint num="1" id="3232" />
+<TGConnectingPoint num="2" id="3233" />
+<TGConnectingPoint num="3" id="3234" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3244" >
+<cdparam x="161" y="146" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="3243" />
+<P1  x="186" y="146" id="3288" />
+<P2  x="153" y="168" id="3263" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3242" >
+<father id="3244" num="0" />
+<cdparam x="161" y="186" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3238" />
+<TGConnectingPoint num="1" id="3239" />
+<TGConnectingPoint num="2" id="3240" />
+<TGConnectingPoint num="3" id="3241" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3251" >
+<cdparam x="211" y="201" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="3250" />
+<P1  x="236" y="146" id="3289" />
+<P2  x="247" y="167" id="3252" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3249" >
+<father id="3251" num="0" />
+<cdparam x="211" y="241" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3245" />
+<TGConnectingPoint num="1" id="3246" />
+<TGConnectingPoint num="2" id="3247" />
+<TGConnectingPoint num="3" id="3248" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="3262" >
+<cdparam x="209" y="172" />
+<sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INconresp()" />
+<TGConnectingPoint num="0" id="3252" />
+<TGConnectingPoint num="1" id="3253" />
+<TGConnectingPoint num="2" id="3254" />
+<TGConnectingPoint num="3" id="3255" />
+<TGConnectingPoint num="4" id="3256" />
+<TGConnectingPoint num="5" id="3257" />
+<TGConnectingPoint num="6" id="3258" />
+<TGConnectingPoint num="7" id="3259" />
+<TGConnectingPoint num="8" id="3260" />
+<TGConnectingPoint num="9" id="3261" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="3273" >
+<cdparam x="115" y="173" />
+<sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INconind()" />
+<TGConnectingPoint num="0" id="3263" />
+<TGConnectingPoint num="1" id="3264" />
+<TGConnectingPoint num="2" id="3265" />
+<TGConnectingPoint num="3" id="3266" />
+<TGConnectingPoint num="4" id="3267" />
+<TGConnectingPoint num="5" id="3268" />
+<TGConnectingPoint num="6" id="3269" />
+<TGConnectingPoint num="7" id="3270" />
+<TGConnectingPoint num="8" id="3271" />
+<TGConnectingPoint num="9" id="3272" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="3314" >
+<cdparam x="161" y="96" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="ACTIVE" />
+<TGConnectingPoint num="0" id="3274" />
+<TGConnectingPoint num="1" id="3275" />
+<TGConnectingPoint num="2" id="3276" />
+<TGConnectingPoint num="3" id="3277" />
+<TGConnectingPoint num="4" id="3278" />
+<TGConnectingPoint num="5" id="3279" />
+<TGConnectingPoint num="6" id="3280" />
+<TGConnectingPoint num="7" id="3281" />
+<TGConnectingPoint num="8" id="3282" />
+<TGConnectingPoint num="9" id="3283" />
+<TGConnectingPoint num="10" id="3284" />
+<TGConnectingPoint num="11" id="3285" />
+<TGConnectingPoint num="12" id="3286" />
+<TGConnectingPoint num="13" id="3287" />
+<TGConnectingPoint num="14" id="3288" />
+<TGConnectingPoint num="15" id="3289" />
+<TGConnectingPoint num="16" id="3290" />
+<TGConnectingPoint num="17" id="3291" />
+<TGConnectingPoint num="18" id="3292" />
+<TGConnectingPoint num="19" id="3293" />
+<TGConnectingPoint num="20" id="3294" />
+<TGConnectingPoint num="21" id="3295" />
+<TGConnectingPoint num="22" id="3296" />
+<TGConnectingPoint num="23" id="3297" />
+<TGConnectingPoint num="24" id="3298" />
+<TGConnectingPoint num="25" id="3299" />
+<TGConnectingPoint num="26" id="3300" />
+<TGConnectingPoint num="27" id="3301" />
+<TGConnectingPoint num="28" id="3302" />
+<TGConnectingPoint num="29" id="3303" />
+<TGConnectingPoint num="30" id="3304" />
+<TGConnectingPoint num="31" id="3305" />
+<TGConnectingPoint num="32" id="3306" />
+<TGConnectingPoint num="33" id="3307" />
+<TGConnectingPoint num="34" id="3308" />
+<TGConnectingPoint num="35" id="3309" />
+<TGConnectingPoint num="36" id="3310" />
+<TGConnectingPoint num="37" id="3311" />
+<TGConnectingPoint num="38" id="3312" />
+<TGConnectingPoint num="39" id="3313" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="3316" >
+<cdparam x="179" y="42" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="3315" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Pilot" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="3329" >
+<cdparam x="79" y="166" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3325" />
+<TGConnectingPoint num="1" id="3326" />
+<TGConnectingPoint num="2" id="3327" />
+<TGConnectingPoint num="3" id="3328" />
+<P1  x="79" y="166" id="3376" />
+<P2  x="216" y="78" id="3399" />
+<Point x="79" y="189" />
+<Point x="341" y="189" />
+<Point x="341" y="78" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3317" >
+<father id="3329" num="0" />
+<cdparam x="79" y="189" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3318" >
+<father id="3329" num="1" />
+<cdparam x="341" y="189" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3319" >
+<father id="3329" num="2" />
+<cdparam x="341" y="78" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3324" >
+<father id="3329" num="3" />
+<cdparam x="79" y="206" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3320" />
+<TGConnectingPoint num="1" id="3321" />
+<TGConnectingPoint num="2" id="3322" />
+<TGConnectingPoint num="3" id="3323" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3342" >
+<cdparam x="177" y="166" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3338" />
+<TGConnectingPoint num="1" id="3339" />
+<TGConnectingPoint num="2" id="3340" />
+<TGConnectingPoint num="3" id="3341" />
+<P1  x="177" y="166" id="3365" />
+<P2  x="216" y="91" id="3392" />
+<Point x="177" y="183" />
+<Point x="330" y="183" />
+<Point x="330" y="91" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3330" >
+<father id="3342" num="0" />
+<cdparam x="177" y="183" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3331" >
+<father id="3342" num="1" />
+<cdparam x="330" y="183" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3332" >
+<father id="3342" num="2" />
+<cdparam x="330" y="91" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3337" >
+<father id="3342" num="3" />
+<cdparam x="177" y="206" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3333" />
+<TGConnectingPoint num="1" id="3334" />
+<TGConnectingPoint num="2" id="3335" />
+<TGConnectingPoint num="3" id="3336" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3349" >
+<cdparam x="165" y="44" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="3348" />
+<P1  x="165" y="44" id="3386" />
+<P2  x="166" y="66" id="3389" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3347" >
+<father id="3349" num="0" />
+<cdparam x="165" y="84" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3343" />
+<TGConnectingPoint num="1" id="3344" />
+<TGConnectingPoint num="2" id="3345" />
+<TGConnectingPoint num="3" id="3346" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3356" >
+<cdparam x="178" y="116" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="3355" />
+<P1  x="128" y="116" id="3416" />
+<P2  x="79" y="136" id="3375" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3354" >
+<father id="3356" num="0" />
+<cdparam x="178" y="156" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3350" />
+<TGConnectingPoint num="1" id="3351" />
+<TGConnectingPoint num="2" id="3352" />
+<TGConnectingPoint num="3" id="3353" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3363" >
+<cdparam x="178" y="168" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="3362" />
+<P1  x="166" y="116" id="3394" />
+<P2  x="177" y="136" id="3364" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3361" >
+<father id="3363" num="0" />
+<cdparam x="178" y="208" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3357" />
+<TGConnectingPoint num="1" id="3358" />
+<TGConnectingPoint num="2" id="3359" />
+<TGConnectingPoint num="3" id="3360" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5104" id="3374" >
+<cdparam x="136" y="141" />
+<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INconconf()" />
+<TGConnectingPoint num="0" id="3364" />
+<TGConnectingPoint num="1" id="3365" />
+<TGConnectingPoint num="2" id="3366" />
+<TGConnectingPoint num="3" id="3367" />
+<TGConnectingPoint num="4" id="3368" />
+<TGConnectingPoint num="5" id="3369" />
+<TGConnectingPoint num="6" id="3370" />
+<TGConnectingPoint num="7" id="3371" />
+<TGConnectingPoint num="8" id="3372" />
+<TGConnectingPoint num="9" id="3373" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="3385" >
+<cdparam x="44" y="141" />
+<sizeparam width="70" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INconreq()" />
+<TGConnectingPoint num="0" id="3375" />
+<TGConnectingPoint num="1" id="3376" />
+<TGConnectingPoint num="2" id="3377" />
+<TGConnectingPoint num="3" id="3378" />
+<TGConnectingPoint num="4" id="3379" />
+<TGConnectingPoint num="5" id="3380" />
+<TGConnectingPoint num="6" id="3381" />
+<TGConnectingPoint num="7" id="3382" />
+<TGConnectingPoint num="8" id="3383" />
+<TGConnectingPoint num="9" id="3384" />
+</COMPONENT>
+
+<COMPONENT type="5100" id="3387" >
+<cdparam x="158" y="24" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="3386" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="3428" >
+<cdparam x="116" y="66" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="ACTIVE" />
+<TGConnectingPoint num="0" id="3388" />
+<TGConnectingPoint num="1" id="3389" />
+<TGConnectingPoint num="2" id="3390" />
+<TGConnectingPoint num="3" id="3391" />
+<TGConnectingPoint num="4" id="3392" />
+<TGConnectingPoint num="5" id="3393" />
+<TGConnectingPoint num="6" id="3394" />
+<TGConnectingPoint num="7" id="3395" />
+<TGConnectingPoint num="8" id="3396" />
+<TGConnectingPoint num="9" id="3397" />
+<TGConnectingPoint num="10" id="3398" />
+<TGConnectingPoint num="11" id="3399" />
+<TGConnectingPoint num="12" id="3400" />
+<TGConnectingPoint num="13" id="3401" />
+<TGConnectingPoint num="14" id="3402" />
+<TGConnectingPoint num="15" id="3403" />
+<TGConnectingPoint num="16" id="3404" />
+<TGConnectingPoint num="17" id="3405" />
+<TGConnectingPoint num="18" id="3406" />
+<TGConnectingPoint num="19" id="3407" />
+<TGConnectingPoint num="20" id="3408" />
+<TGConnectingPoint num="21" id="3409" />
+<TGConnectingPoint num="22" id="3410" />
+<TGConnectingPoint num="23" id="3411" />
+<TGConnectingPoint num="24" id="3412" />
+<TGConnectingPoint num="25" id="3413" />
+<TGConnectingPoint num="26" id="3414" />
+<TGConnectingPoint num="27" id="3415" />
+<TGConnectingPoint num="28" id="3416" />
+<TGConnectingPoint num="29" id="3417" />
+<TGConnectingPoint num="30" id="3418" />
+<TGConnectingPoint num="31" id="3419" />
+<TGConnectingPoint num="32" id="3420" />
+<TGConnectingPoint num="33" id="3421" />
+<TGConnectingPoint num="34" id="3422" />
+<TGConnectingPoint num="35" id="3423" />
+<TGConnectingPoint num="36" id="3424" />
+<TGConnectingPoint num="37" id="3425" />
+<TGConnectingPoint num="38" id="3426" />
+<TGConnectingPoint num="39" id="3427" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="AVATAR Design" nameTab="Design_lossy" >
+<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" >
+<MainCode value="void __user_init() {"/>
+<MainCode value="}"/>
+<Optimized value="true" />
+<Validated value="OnBoardCommunication;GroundCommunication;Controller;Pilot;" />
+<Ignored value="" />
+
+<CONNECTOR type="5002" id="3434" >
+<cdparam x="117" y="266" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="" />
+<TGConnectingPoint num="0" id="3431" />
+<TGConnectingPoint num="1" id="3432" />
+<TGConnectingPoint num="2" id="3433" />
+<P1  x="118" y="320" id="3493" />
+<P2  x="463" y="311" id="3519" />
+<Point x="118" y="400" />
+<Point x="462" y="400" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<isd value="in CR()" />
+<isd value="in DR()" />
+<oso value="out CR()" />
+<oso value="out DR()" />
+<FIFOType asynchronous="true" size="1" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR><SUBCOMPONENT type="-1" id="3429" >
+<father id="3434" num="0" />
+<cdparam x="118" y="400" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3430" >
+<father id="3434" num="1" />
+<cdparam x="462" y="400" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5002" id="3440" >
+<cdparam x="158" y="266" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="" />
+<TGConnectingPoint num="0" id="3437" />
+<TGConnectingPoint num="1" id="3438" />
+<TGConnectingPoint num="2" id="3439" />
+<P1  x="161" y="320" id="3485" />
+<P2  x="424" y="311" id="3510" />
+<Point x="161" y="352" />
+<Point x="423" y="352" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in CC()" />
+<osd value="out CC()" />
+<FIFOType asynchronous="true" size="1" blocking="false" private="true" broadcast="false" lossy="true" />
+</extraparam>
+</CONNECTOR><SUBCOMPONENT type="-1" id="3435" >
+<father id="3440" num="0" />
+<cdparam x="161" y="352" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="3436" >
+<father id="3440" num="1" />
+<cdparam x="423" y="352" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="5002" id="3442" >
+<cdparam x="449" y="116" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block0 to Block0" value="" />
+<TGConnectingPoint num="0" id="3441" />
+<P1  x="423" y="118" id="3535" />
+<P2  x="424" y="134" id="3505" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in INconind()" />
+<iso value="in INerror_ground()" />
+<osd value="out INconind()" />
+<osd value="out INerror_ground()" />
+<isd value="in INconresp()" />
+<oso value="out INconresp()" />
+<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="5002" id="3444" >
+<cdparam x="145" y="116" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block0 to Block0" value="" />
+<TGConnectingPoint num="0" id="3443" />
+<P1  x="161" y="117" id="3560" />
+<P2  x="161" y="138" id="3480" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in INconconf()" />
+<iso value="in INerror()" />
+<osd value="out INconconf()" />
+<osd value="out INerror()" />
+<isd value="in INconreq()" />
+<oso value="out INconreq()" />
+<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<COMPONENT type="301" id="3461" >
+<cdparam x="204" y="333" />
+<sizeparam width="207" height="15" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="  CC may be lost (lossy channel).
+" />
+<TGConnectingPoint num="0" id="3445" />
+<TGConnectingPoint num="1" id="3446" />
+<TGConnectingPoint num="2" id="3447" />
+<TGConnectingPoint num="3" id="3448" />
+<TGConnectingPoint num="4" id="3449" />
+<TGConnectingPoint num="5" id="3450" />
+<TGConnectingPoint num="6" id="3451" />
+<TGConnectingPoint num="7" id="3452" />
+<TGConnectingPoint num="8" id="3453" />
+<TGConnectingPoint num="9" id="3454" />
+<TGConnectingPoint num="10" id="3455" />
+<TGConnectingPoint num="11" id="3456" />
+<TGConnectingPoint num="12" id="3457" />
+<TGConnectingPoint num="13" id="3458" />
+<TGConnectingPoint num="14" id="3459" />
+<TGConnectingPoint num="15" id="3460" />
+<extraparam>
+<Line value="  CC may be lost (lossy channel)." />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="3478" >
+<cdparam x="234" y="380" />
+<sizeparam width="194" height="15" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="  CRs and DRs will not be lost.
+" />
+<TGConnectingPoint num="0" id="3462" />
+<TGConnectingPoint num="1" id="3463" />
+<TGConnectingPoint num="2" id="3464" />
+<TGConnectingPoint num="3" id="3465" />
+<TGConnectingPoint num="4" id="3466" />
+<TGConnectingPoint num="5" id="3467" />
+<TGConnectingPoint num="6" id="3468" />
+<TGConnectingPoint num="7" id="3469" />
+<TGConnectingPoint num="8" id="3470" />
+<TGConnectingPoint num="9" id="3471" />
+<TGConnectingPoint num="10" id="3472" />
+<TGConnectingPoint num="11" id="3473" />
+<TGConnectingPoint num="12" id="3474" />
+<TGConnectingPoint num="13" id="3475" />
+<TGConnectingPoint num="14" id="3476" />
+<TGConnectingPoint num="15" id="3477" />
+<extraparam>
+<Line value="  CRs and DRs will not be lost." />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="3503" >
+<cdparam x="75" y="138" />
+<sizeparam width="172" height="182" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="OnBoardCommunication" />
+<TGConnectingPoint num="0" id="3479" />
+<TGConnectingPoint num="1" id="3480" />
+<TGConnectingPoint num="2" id="3481" />
+<TGConnectingPoint num="3" id="3482" />
+<TGConnectingPoint num="4" id="3483" />
+<TGConnectingPoint num="5" id="3484" />
+<TGConnectingPoint num="6" id="3485" />
+<TGConnectingPoint num="7" id="3486" />
+<TGConnectingPoint num="8" id="3487" />
+<TGConnectingPoint num="9" id="3488" />
+<TGConnectingPoint num="10" id="3489" />
+<TGConnectingPoint num="11" id="3490" />
+<TGConnectingPoint num="12" id="3491" />
+<TGConnectingPoint num="13" id="3492" />
+<TGConnectingPoint num="14" id="3493" />
+<TGConnectingPoint num="15" id="3494" />
+<TGConnectingPoint num="16" id="3495" />
+<TGConnectingPoint num="17" id="3496" />
+<TGConnectingPoint num="18" id="3497" />
+<TGConnectingPoint num="19" id="3498" />
+<TGConnectingPoint num="20" id="3499" />
+<TGConnectingPoint num="21" id="3500" />
+<TGConnectingPoint num="22" id="3501" />
+<TGConnectingPoint num="23" id="3502" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="ATST1" value="" type="9" typeOther="" />
+<Attribute access="0" id="retransmissionCounter" value="" type="8" typeOther="" />
+<Attribute access="0" id="maxRetransmissions" value="2" type="8" typeOther="" />
+<Signal value="in INconreq()" attached="true" />
+<Signal value="out INconconf()" attached="true" />
+<Signal value="out INerror()" attached="true" />
+<Signal value="out CR()" attached="true" />
+<Signal value="in CC()" attached="true" />
+<Signal value="out DR()" attached="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="3528" >
+<cdparam x="346" y="134" />
+<sizeparam width="157" height="177" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="GroundCommunication" />
+<TGConnectingPoint num="0" id="3504" />
+<TGConnectingPoint num="1" id="3505" />
+<TGConnectingPoint num="2" id="3506" />
+<TGConnectingPoint num="3" id="3507" />
+<TGConnectingPoint num="4" id="3508" />
+<TGConnectingPoint num="5" id="3509" />
+<TGConnectingPoint num="6" id="3510" />
+<TGConnectingPoint num="7" id="3511" />
+<TGConnectingPoint num="8" id="3512" />
+<TGConnectingPoint num="9" id="3513" />
+<TGConnectingPoint num="10" id="3514" />
+<TGConnectingPoint num="11" id="3515" />
+<TGConnectingPoint num="12" id="3516" />
+<TGConnectingPoint num="13" id="3517" />
+<TGConnectingPoint num="14" id="3518" />
+<TGConnectingPoint num="15" id="3519" />
+<TGConnectingPoint num="16" id="3520" />
+<TGConnectingPoint num="17" id="3521" />
+<TGConnectingPoint num="18" id="3522" />
+<TGConnectingPoint num="19" id="3523" />
+<TGConnectingPoint num="20" id="3524" />
+<TGConnectingPoint num="21" id="3525" />
+<TGConnectingPoint num="22" id="3526" />
+<TGConnectingPoint num="23" id="3527" />
+<extraparam>
+<CryptoBlock value="false" />
+<Signal value="in CR()" attached="true" />
+<Signal value="out CC()" attached="true" />
+<Signal value="out INconind()" attached="true" />
+<Signal value="in INconresp()" attached="true" />
+<Signal value="out INerror_ground()" attached="true" />
+<Signal value="in DR()" attached="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="3553" >
+<cdparam x="346" y="10" />
+<sizeparam width="155" height="108" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="Controller" />
+<TGConnectingPoint num="0" id="3529" />
+<TGConnectingPoint num="1" id="3530" />
+<TGConnectingPoint num="2" id="3531" />
+<TGConnectingPoint num="3" id="3532" />
+<TGConnectingPoint num="4" id="3533" />
+<TGConnectingPoint num="5" id="3534" />
+<TGConnectingPoint num="6" id="3535" />
+<TGConnectingPoint num="7" id="3536" />
+<TGConnectingPoint num="8" id="3537" />
+<TGConnectingPoint num="9" id="3538" />
+<TGConnectingPoint num="10" id="3539" />
+<TGConnectingPoint num="11" id="3540" />
+<TGConnectingPoint num="12" id="3541" />
+<TGConnectingPoint num="13" id="3542" />
+<TGConnectingPoint num="14" id="3543" />
+<TGConnectingPoint num="15" id="3544" />
+<TGConnectingPoint num="16" id="3545" />
+<TGConnectingPoint num="17" id="3546" />
+<TGConnectingPoint num="18" id="3547" />
+<TGConnectingPoint num="19" id="3548" />
+<TGConnectingPoint num="20" id="3549" />
+<TGConnectingPoint num="21" id="3550" />
+<TGConnectingPoint num="22" id="3551" />
+<TGConnectingPoint num="23" id="3552" />
+<extraparam>
+<CryptoBlock value="false" />
+<Signal value="in INconind()" attached="true" />
+<Signal value="out INconresp()" attached="true" />
+<Signal value="in INerror_ground()" attached="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="3578" >
+<cdparam x="76" y="13" />
+<sizeparam width="171" height="104" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="Pilot" />
+<TGConnectingPoint num="0" id="3554" />
+<TGConnectingPoint num="1" id="3555" />
+<TGConnectingPoint num="2" id="3556" />
+<TGConnectingPoint num="3" id="3557" />
+<TGConnectingPoint num="4" id="3558" />
+<TGConnectingPoint num="5" id="3559" />
+<TGConnectingPoint num="6" id="3560" />
+<TGConnectingPoint num="7" id="3561" />
+<TGConnectingPoint num="8" id="3562" />
+<TGConnectingPoint num="9" id="3563" />
+<TGConnectingPoint num="10" id="3564" />
+<TGConnectingPoint num="11" id="3565" />
+<TGConnectingPoint num="12" id="3566" />
+<TGConnectingPoint num="13" id="3567" />
+<TGConnectingPoint num="14" id="3568" />
+<TGConnectingPoint num="15" id="3569" />
+<TGConnectingPoint num="16" id="3570" />
+<TGConnectingPoint num="17" id="3571" />
+<TGConnectingPoint num="18" id="3572" />
+<TGConnectingPoint num="19" id="3573" />
+<TGConnectingPoint num="20" id="3574" />
+<TGConnectingPoint num="21" id="3575" />
+<TGConnectingPoint num="22" id="3576" />
+<TGConnectingPoint num="23" id="3577" />
+<extraparam>
+<CryptoBlock value="false" />
+<Signal value="out INconreq()" attached="true" />
+<Signal value="in INconconf()" attached="true" />
+<Signal value="in INerror()" attached="true" />
+</extraparam>
+</COMPONENT>
+
+
+</AVATARBlockDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="OnBoardCommunication" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="3585" >
+<cdparam x="473" y="237" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3584" />
+<P1  x="472" y="233" id="3760" />
+<P2  x="472" y="260" id="3743" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3583" >
+<father id="3585" num="0" />
+<cdparam x="476" y="245" />
+<sizeparam width="35" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3579" />
+<TGConnectingPoint num="1" id="3580" />
+<TGConnectingPoint num="2" id="3581" />
+<TGConnectingPoint num="3" id="3582" />
+<extraparam>
+<guard value="[ else]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3592" >
+<cdparam x="473" y="165" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3591" />
+<P1  x="473" y="165" id="3793" />
+<P2  x="472" y="183" id="3754" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3590" >
+<father id="3592" num="0" />
+<cdparam x="473" y="205" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3586" />
+<TGConnectingPoint num="1" id="3587" />
+<TGConnectingPoint num="2" id="3588" />
+<TGConnectingPoint num="3" id="3589" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3599" >
+<cdparam x="630" y="229" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3598" />
+<P1  x="619" y="228" id="3771" />
+<P2  x="619" y="248" id="3885" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3597" >
+<father id="3599" num="0" />
+<cdparam x="630" y="269" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3593" />
+<TGConnectingPoint num="1" id="3594" />
+<TGConnectingPoint num="2" id="3595" />
+<TGConnectingPoint num="3" id="3596" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3606" >
+<cdparam x="619" y="174" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3605" />
+<P1  x="619" y="174" id="3897" />
+<P2  x="619" y="198" id="3770" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3604" >
+<father id="3606" num="0" />
+<cdparam x="619" y="214" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3600" />
+<TGConnectingPoint num="1" id="3601" />
+<TGConnectingPoint num="2" id="3602" />
+<TGConnectingPoint num="3" id="3603" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3613" >
+<cdparam x="94" y="283" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3612" />
+<P1  x="99" y="284" id="3782" />
+<P2  x="100" y="299" id="3989" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3611" >
+<father id="3613" num="0" />
+<cdparam x="94" y="323" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3607" />
+<TGConnectingPoint num="1" id="3608" />
+<TGConnectingPoint num="2" id="3609" />
+<TGConnectingPoint num="3" id="3610" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3620" >
+<cdparam x="98" y="235" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3619" />
+<P1  x="98" y="235" id="3833" />
+<P2  x="99" y="254" id="3781" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3618" >
+<father id="3620" num="0" />
+<cdparam x="98" y="275" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3614" />
+<TGConnectingPoint num="1" id="3615" />
+<TGConnectingPoint num="2" id="3616" />
+<TGConnectingPoint num="3" id="3617" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3627" >
+<cdparam x="635" y="109" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3626" />
+<P1  x="532" y="109" id="3935" />
+<P2  x="473" y="135" id="3792" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3625" >
+<father id="3627" num="0" />
+<cdparam x="635" y="149" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3621" />
+<TGConnectingPoint num="1" id="3622" />
+<TGConnectingPoint num="2" id="3623" />
+<TGConnectingPoint num="3" id="3624" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3634" >
+<cdparam x="86" y="162" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3633" />
+<P1  x="86" y="162" id="4001" />
+<P2  x="86" y="193" id="3804" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3632" >
+<father id="3634" num="0" />
+<cdparam x="93" y="175" />
+<sizeparam width="155" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3628" />
+<TGConnectingPoint num="1" id="3629" />
+<TGConnectingPoint num="2" id="3630" />
+<TGConnectingPoint num="3" id="3631" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="retransmissionCounter = 0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3641" >
+<cdparam x="576" y="109" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="3640" />
+<P1  x="619" y="109" id="3938" />
+<P2  x="619" y="144" id="3896" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3639" >
+<father id="3641" num="0" />
+<cdparam x="576" y="151" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3635" />
+<TGConnectingPoint num="1" id="3636" />
+<TGConnectingPoint num="2" id="3637" />
+<TGConnectingPoint num="3" id="3638" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3648" >
+<cdparam x="85" y="210" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="3647" />
+<P1  x="100" y="329" id="3990" />
+<P2  x="100" y="351" id="3949" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3646" >
+<father id="3648" num="0" />
+<cdparam x="85" y="250" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3642" />
+<TGConnectingPoint num="1" id="3643" />
+<TGConnectingPoint num="2" id="3644" />
+<TGConnectingPoint num="3" id="3645" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3655" >
+<cdparam x="86" y="110" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="3654" />
+<P1  x="86" y="110" id="4017" />
+<P2  x="86" y="132" id="4000" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3653" >
+<father id="3655" num="0" />
+<cdparam x="86" y="150" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3649" />
+<TGConnectingPoint num="1" id="3650" />
+<TGConnectingPoint num="2" id="3651" />
+<TGConnectingPoint num="3" id="3652" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3662" >
+<cdparam x="80" y="37" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="3661" />
+<P1  x="67" y="36" id="4052" />
+<P2  x="86" y="60" id="4012" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3660" >
+<father id="3662" num="0" />
+<cdparam x="82" y="38" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3656" />
+<TGConnectingPoint num="1" id="3657" />
+<TGConnectingPoint num="2" id="3658" />
+<TGConnectingPoint num="3" id="3659" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3669" >
+<cdparam x="619" y="278" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3668" />
+<P1  x="619" y="278" id="3886" />
+<P2  x="619" y="302" id="3845" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3667" >
+<father id="3669" num="0" />
+<cdparam x="619" y="318" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3663" />
+<TGConnectingPoint num="1" id="3664" />
+<TGConnectingPoint num="2" id="3665" />
+<TGConnectingPoint num="3" id="3666" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3676" >
+<cdparam x="286" y="212" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3675" />
+<P1  x="447" y="208" id="3755" />
+<P2  x="138" y="208" id="3826" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3674" >
+<father id="3676" num="0" />
+<cdparam x="154" y="206" />
+<sizeparam width="302" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3670" />
+<TGConnectingPoint num="1" id="3671" />
+<TGConnectingPoint num="2" id="3672" />
+<TGConnectingPoint num="3" id="3673" />
+<extraparam>
+<guard value="[ retransmissionCounter &lt; maxRetransmissions]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="retransmissionCounter = retransmissionCounter + 1" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3683" >
+<cdparam x="473" y="290" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3682" />
+<P1  x="472" y="290" id="3744" />
+<P2  x="473" y="308" id="3691" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3681" >
+<father id="3683" num="0" />
+<cdparam x="466" y="297" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3677" />
+<TGConnectingPoint num="1" id="3678" />
+<TGConnectingPoint num="2" id="3679" />
+<TGConnectingPoint num="3" id="3680" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="3690" >
+<cdparam x="459" y="334" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="3689" />
+<P1  x="473" y="338" id="3692" />
+<P2  x="473" y="366" id="3719" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3688" >
+<father id="3690" num="0" />
+<cdparam x="459" y="350" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="3684" />
+<TGConnectingPoint num="1" id="3685" />
+<TGConnectingPoint num="2" id="3686" />
+<TGConnectingPoint num="3" id="3687" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="3701" >
+<cdparam x="456" y="313" />
+<sizeparam width="35" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="DR()" />
+<TGConnectingPoint num="0" id="3691" />
+<TGConnectingPoint num="1" id="3692" />
+<TGConnectingPoint num="2" id="3693" />
+<TGConnectingPoint num="3" id="3694" />
+<TGConnectingPoint num="4" id="3695" />
+<TGConnectingPoint num="5" id="3696" />
+<TGConnectingPoint num="6" id="3697" />
+<TGConnectingPoint num="7" id="3698" />
+<TGConnectingPoint num="8" id="3699" />
+<TGConnectingPoint num="9" id="3700" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="3742" >
+<cdparam x="436" y="366" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="State" value="ERROR" />
+<TGConnectingPoint num="0" id="3702" />
+<TGConnectingPoint num="1" id="3703" />
+<TGConnectingPoint num="2" id="3704" />
+<TGConnectingPoint num="3" id="3705" />
+<TGConnectingPoint num="4" id="3706" />
+<TGConnectingPoint num="5" id="3707" />
+<TGConnectingPoint num="6" id="3708" />
+<TGConnectingPoint num="7" id="3709" />
+<TGConnectingPoint num="8" id="3710" />
+<TGConnectingPoint num="9" id="3711" />
+<TGConnectingPoint num="10" id="3712" />
+<TGConnectingPoint num="11" id="3713" />
+<TGConnectingPoint num="12" id="3714" />
+<TGConnectingPoint num="13" id="3715" />
+<TGConnectingPoint num="14" id="3716" />
+<TGConnectingPoint num="15" id="3717" />
+<TGConnectingPoint num="16" id="3718" />
+<TGConnectingPoint num="17" id="3719" />
+<TGConnectingPoint num="18" id="3720" />
+<TGConnectingPoint num="19" id="3721" />
+<TGConnectingPoint num="20" id="3722" />
+<TGConnectingPoint num="21" id="3723" />
+<TGConnectingPoint num="22" id="3724" />
+<TGConnectingPoint num="23" id="3725" />
+<TGConnectingPoint num="24" id="3726" />
+<TGConnectingPoint num="25" id="3727" />
+<TGConnectingPoint num="26" id="3728" />
+<TGConnectingPoint num="27" id="3729" />
+<TGConnectingPoint num="28" id="3730" />
+<TGConnectingPoint num="29" id="3731" />
+<TGConnectingPoint num="30" id="3732" />
+<TGConnectingPoint num="31" id="3733" />
+<TGConnectingPoint num="32" id="3734" />
+<TGConnectingPoint num="33" id="3735" />
+<TGConnectingPoint num="34" id="3736" />
+<TGConnectingPoint num="35" id="3737" />
+<TGConnectingPoint num="36" id="3738" />
+<TGConnectingPoint num="37" id="3739" />
+<TGConnectingPoint num="38" id="3740" />
+<TGConnectingPoint num="39" id="3741" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="3753" >
+<cdparam x="443" y="265" />
+<sizeparam width="59" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INerror()" />
+<TGConnectingPoint num="0" id="3743" />
+<TGConnectingPoint num="1" id="3744" />
+<TGConnectingPoint num="2" id="3745" />
+<TGConnectingPoint num="3" id="3746" />
+<TGConnectingPoint num="4" id="3747" />
+<TGConnectingPoint num="5" id="3748" />
+<TGConnectingPoint num="6" id="3749" />
+<TGConnectingPoint num="7" id="3750" />
+<TGConnectingPoint num="8" id="3751" />
+<TGConnectingPoint num="9" id="3752" />
+</COMPONENT>
+
+<COMPONENT type="5107" id="3769" >
+<cdparam x="457" y="193" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="3754" />
+<TGConnectingPoint num="1" id="3755" />
+<TGConnectingPoint num="2" id="3756" />
+<TGConnectingPoint num="3" id="3757" />
+<TGConnectingPoint num="4" id="3758" />
+<TGConnectingPoint num="5" id="3759" />
+<TGConnectingPoint num="6" id="3760" />
+<TGConnectingPoint num="7" id="3761" />
+<TGConnectingPoint num="8" id="3762" />
+<TGConnectingPoint num="9" id="3763" />
+<TGConnectingPoint num="10" id="3764" />
+<TGConnectingPoint num="11" id="3765" />
+<TGConnectingPoint num="12" id="3766" />
+<TGConnectingPoint num="13" id="3767" />
+<TGConnectingPoint num="14" id="3768" />
+</COMPONENT>
+
+<COMPONENT type="5110" id="3780" >
+<cdparam x="577" y="203" />
+<sizeparam width="85" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Reset timer" value="reset(ATST1)" />
+<TGConnectingPoint num="0" id="3770" />
+<TGConnectingPoint num="1" id="3771" />
+<TGConnectingPoint num="2" id="3772" />
+<TGConnectingPoint num="3" id="3773" />
+<TGConnectingPoint num="4" id="3774" />
+<TGConnectingPoint num="5" id="3775" />
+<TGConnectingPoint num="6" id="3776" />
+<TGConnectingPoint num="7" id="3777" />
+<TGConnectingPoint num="8" id="3778" />
+<TGConnectingPoint num="9" id="3779" />
+</COMPONENT>
+
+<COMPONENT type="5109" id="3791" >
+<cdparam x="36" y="259" />
+<sizeparam width="127" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Set timer" value="setTimer(ATST1,10)" />
+<TGConnectingPoint num="0" id="3781" />
+<TGConnectingPoint num="1" id="3782" />
+<TGConnectingPoint num="2" id="3783" />
+<TGConnectingPoint num="3" id="3784" />
+<TGConnectingPoint num="4" id="3785" />
+<TGConnectingPoint num="5" id="3786" />
+<TGConnectingPoint num="6" id="3787" />
+<TGConnectingPoint num="7" id="3788" />
+<TGConnectingPoint num="8" id="3789" />
+<TGConnectingPoint num="9" id="3790" />
+</COMPONENT>
+
+<COMPONENT type="5111" id="3802" >
+<cdparam x="422" y="140" />
+<sizeparam width="103" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Reset timer" value="expire(ATST1)" />
+<TGConnectingPoint num="0" id="3792" />
+<TGConnectingPoint num="1" id="3793" />
+<TGConnectingPoint num="2" id="3794" />
+<TGConnectingPoint num="3" id="3795" />
+<TGConnectingPoint num="4" id="3796" />
+<TGConnectingPoint num="5" id="3797" />
+<TGConnectingPoint num="6" id="3798" />
+<TGConnectingPoint num="7" id="3799" />
+<TGConnectingPoint num="8" id="3800" />
+<TGConnectingPoint num="9" id="3801" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="3843" >
+<cdparam x="35" y="193" />
+<sizeparam width="103" height="42" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="State" value="SEND" />
+<TGConnectingPoint num="0" id="3803" />
+<TGConnectingPoint num="1" id="3804" />
+<TGConnectingPoint num="2" id="3805" />
+<TGConnectingPoint num="3" id="3806" />
+<TGConnectingPoint num="4" id="3807" />
+<TGConnectingPoint num="5" id="3808" />
+<TGConnectingPoint num="6" id="3809" />
+<TGConnectingPoint num="7" id="3810" />
+<TGConnectingPoint num="8" id="3811" />
+<TGConnectingPoint num="9" id="3812" />
+<TGConnectingPoint num="10" id="3813" />
+<TGConnectingPoint num="11" id="3814" />
+<TGConnectingPoint num="12" id="3815" />
+<TGConnectingPoint num="13" id="3816" />
+<TGConnectingPoint num="14" id="3817" />
+<TGConnectingPoint num="15" id="3818" />
+<TGConnectingPoint num="16" id="3819" />
+<TGConnectingPoint num="17" id="3820" />
+<TGConnectingPoint num="18" id="3821" />
+<TGConnectingPoint num="19" id="3822" />
+<TGConnectingPoint num="20" id="3823" />
+<TGConnectingPoint num="21" id="3824" />
+<TGConnectingPoint num="22" id="3825" />
+<TGConnectingPoint num="23" id="3826" />
+<TGConnectingPoint num="24" id="3827" />
+<TGConnectingPoint num="25" id="3828" />
+<TGConnectingPoint num="26" id="3829" />
+<TGConnectingPoint num="27" id="3830" />
+<TGConnectingPoint num="28" id="3831" />
+<TGConnectingPoint num="29" id="3832" />
+<TGConnectingPoint num="30" id="3833" />
+<TGConnectingPoint num="31" id="3834" />
+<TGConnectingPoint num="32" id="3835" />
+<TGConnectingPoint num="33" id="3836" />
+<TGConnectingPoint num="34" id="3837" />
+<TGConnectingPoint num="35" id="3838" />
+<TGConnectingPoint num="36" id="3839" />
+<TGConnectingPoint num="37" id="3840" />
+<TGConnectingPoint num="38" id="3841" />
+<TGConnectingPoint num="39" id="3842" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="3884" >
+<cdparam x="569" y="302" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="CONNECTED" />
+<TGConnectingPoint num="0" id="3844" />
+<TGConnectingPoint num="1" id="3845" />
+<TGConnectingPoint num="2" id="3846" />
+<TGConnectingPoint num="3" id="3847" />
+<TGConnectingPoint num="4" id="3848" />
+<TGConnectingPoint num="5" id="3849" />
+<TGConnectingPoint num="6" id="3850" />
+<TGConnectingPoint num="7" id="3851" />
+<TGConnectingPoint num="8" id="3852" />
+<TGConnectingPoint num="9" id="3853" />
+<TGConnectingPoint num="10" id="3854" />
+<TGConnectingPoint num="11" id="3855" />
+<TGConnectingPoint num="12" id="3856" />
+<TGConnectingPoint num="13" id="3857" />
+<TGConnectingPoint num="14" id="3858" />
+<TGConnectingPoint num="15" id="3859" />
+<TGConnectingPoint num="16" id="3860" />
+<TGConnectingPoint num="17" id="3861" />
+<TGConnectingPoint num="18" id="3862" />
+<TGConnectingPoint num="19" id="3863" />
+<TGConnectingPoint num="20" id="3864" />
+<TGConnectingPoint num="21" id="3865" />
+<TGConnectingPoint num="22" id="3866" />
+<TGConnectingPoint num="23" id="3867" />
+<TGConnectingPoint num="24" id="3868" />
+<TGConnectingPoint num="25" id="3869" />
+<TGConnectingPoint num="26" id="3870" />
+<TGConnectingPoint num="27" id="3871" />
+<TGConnectingPoint num="28" id="3872" />
+<TGConnectingPoint num="29" id="3873" />
+<TGConnectingPoint num="30" id="3874" />
+<TGConnectingPoint num="31" id="3875" />
+<TGConnectingPoint num="32" id="3876" />
+<TGConnectingPoint num="33" id="3877" />
+<TGConnectingPoint num="34" id="3878" />
+<TGConnectingPoint num="35" id="3879" />
+<TGConnectingPoint num="36" id="3880" />
+<TGConnectingPoint num="37" id="3881" />
+<TGConnectingPoint num="38" id="3882" />
+<TGConnectingPoint num="39" id="3883" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="3895" >
+<cdparam x="582" y="253" />
+<sizeparam width="74" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INconconf()" />
+<TGConnectingPoint num="0" id="3885" />
+<TGConnectingPoint num="1" id="3886" />
+<TGConnectingPoint num="2" id="3887" />
+<TGConnectingPoint num="3" id="3888" />
+<TGConnectingPoint num="4" id="3889" />
+<TGConnectingPoint num="5" id="3890" />
+<TGConnectingPoint num="6" id="3891" />
+<TGConnectingPoint num="7" id="3892" />
+<TGConnectingPoint num="8" id="3893" />
+<TGConnectingPoint num="9" id="3894" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="3906" >
+<cdparam x="598" y="149" />
+<sizeparam width="42" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="CC()" />
+<TGConnectingPoint num="0" id="3896" />
+<TGConnectingPoint num="1" id="3897" />
+<TGConnectingPoint num="2" id="3898" />
+<TGConnectingPoint num="3" id="3899" />
+<TGConnectingPoint num="4" id="3900" />
+<TGConnectingPoint num="5" id="3901" />
+<TGConnectingPoint num="6" id="3902" />
+<TGConnectingPoint num="7" id="3903" />
+<TGConnectingPoint num="8" id="3904" />
+<TGConnectingPoint num="9" id="3905" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="3947" >
+<cdparam x="518" y="58" />
+<sizeparam width="117" height="51" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="WAIT_FOR_CONF" />
+<TGConnectingPoint num="0" id="3907" />
+<TGConnectingPoint num="1" id="3908" />
+<TGConnectingPoint num="2" id="3909" />
+<TGConnectingPoint num="3" id="3910" />
+<TGConnectingPoint num="4" id="3911" />
+<TGConnectingPoint num="5" id="3912" />
+<TGConnectingPoint num="6" id="3913" />
+<TGConnectingPoint num="7" id="3914" />
+<TGConnectingPoint num="8" id="3915" />
+<TGConnectingPoint num="9" id="3916" />
+<TGConnectingPoint num="10" id="3917" />
+<TGConnectingPoint num="11" id="3918" />
+<TGConnectingPoint num="12" id="3919" />
+<TGConnectingPoint num="13" id="3920" />
+<TGConnectingPoint num="14" id="3921" />
+<TGConnectingPoint num="15" id="3922" />
+<TGConnectingPoint num="16" id="3923" />
+<TGConnectingPoint num="17" id="3924" />
+<TGConnectingPoint num="18" id="3925" />
+<TGConnectingPoint num="19" id="3926" />
+<TGConnectingPoint num="20" id="3927" />
+<TGConnectingPoint num="21" id="3928" />
+<TGConnectingPoint num="22" id="3929" />
+<TGConnectingPoint num="23" id="3930" />
+<TGConnectingPoint num="24" id="3931" />
+<TGConnectingPoint num="25" id="3932" />
+<TGConnectingPoint num="26" id="3933" />
+<TGConnectingPoint num="27" id="3934" />
+<TGConnectingPoint num="28" id="3935" />
+<TGConnectingPoint num="29" id="3936" />
+<TGConnectingPoint num="30" id="3937" />
+<TGConnectingPoint num="31" id="3938" />
+<TGConnectingPoint num="32" id="3939" />
+<TGConnectingPoint num="33" id="3940" />
+<TGConnectingPoint num="34" id="3941" />
+<TGConnectingPoint num="35" id="3942" />
+<TGConnectingPoint num="36" id="3943" />
+<TGConnectingPoint num="37" id="3944" />
+<TGConnectingPoint num="38" id="3945" />
+<TGConnectingPoint num="39" id="3946" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="3988" >
+<cdparam x="32" y="351" />
+<sizeparam width="137" height="52" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="WAIT_FOR_CONF" />
+<TGConnectingPoint num="0" id="3948" />
+<TGConnectingPoint num="1" id="3949" />
+<TGConnectingPoint num="2" id="3950" />
+<TGConnectingPoint num="3" id="3951" />
+<TGConnectingPoint num="4" id="3952" />
+<TGConnectingPoint num="5" id="3953" />
+<TGConnectingPoint num="6" id="3954" />
+<TGConnectingPoint num="7" id="3955" />
+<TGConnectingPoint num="8" id="3956" />
+<TGConnectingPoint num="9" id="3957" />
+<TGConnectingPoint num="10" id="3958" />
+<TGConnectingPoint num="11" id="3959" />
+<TGConnectingPoint num="12" id="3960" />
+<TGConnectingPoint num="13" id="3961" />
+<TGConnectingPoint num="14" id="3962" />
+<TGConnectingPoint num="15" id="3963" />
+<TGConnectingPoint num="16" id="3964" />
+<TGConnectingPoint num="17" id="3965" />
+<TGConnectingPoint num="18" id="3966" />
+<TGConnectingPoint num="19" id="3967" />
+<TGConnectingPoint num="20" id="3968" />
+<TGConnectingPoint num="21" id="3969" />
+<TGConnectingPoint num="22" id="3970" />
+<TGConnectingPoint num="23" id="3971" />
+<TGConnectingPoint num="24" id="3972" />
+<TGConnectingPoint num="25" id="3973" />
+<TGConnectingPoint num="26" id="3974" />
+<TGConnectingPoint num="27" id="3975" />
+<TGConnectingPoint num="28" id="3976" />
+<TGConnectingPoint num="29" id="3977" />
+<TGConnectingPoint num="30" id="3978" />
+<TGConnectingPoint num="31" id="3979" />
+<TGConnectingPoint num="32" id="3980" />
+<TGConnectingPoint num="33" id="3981" />
+<TGConnectingPoint num="34" id="3982" />
+<TGConnectingPoint num="35" id="3983" />
+<TGConnectingPoint num="36" id="3984" />
+<TGConnectingPoint num="37" id="3985" />
+<TGConnectingPoint num="38" id="3986" />
+<TGConnectingPoint num="39" id="3987" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="3999" >
+<cdparam x="83" y="304" />
+<sizeparam width="34" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="CR()" />
+<TGConnectingPoint num="0" id="3989" />
+<TGConnectingPoint num="1" id="3990" />
+<TGConnectingPoint num="2" id="3991" />
+<TGConnectingPoint num="3" id="3992" />
+<TGConnectingPoint num="4" id="3993" />
+<TGConnectingPoint num="5" id="3994" />
+<TGConnectingPoint num="6" id="3995" />
+<TGConnectingPoint num="7" id="3996" />
+<TGConnectingPoint num="8" id="3997" />
+<TGConnectingPoint num="9" id="3998" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="4010" >
+<cdparam x="47" y="137" />
+<sizeparam width="78" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INconreq()" />
+<TGConnectingPoint num="0" id="4000" />
+<TGConnectingPoint num="1" id="4001" />
+<TGConnectingPoint num="2" id="4002" />
+<TGConnectingPoint num="3" id="4003" />
+<TGConnectingPoint num="4" id="4004" />
+<TGConnectingPoint num="5" id="4005" />
+<TGConnectingPoint num="6" id="4006" />
+<TGConnectingPoint num="7" id="4007" />
+<TGConnectingPoint num="8" id="4008" />
+<TGConnectingPoint num="9" id="4009" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="4051" >
+<cdparam x="36" y="60" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="IDLE" />
+<TGConnectingPoint num="0" id="4011" />
+<TGConnectingPoint num="1" id="4012" />
+<TGConnectingPoint num="2" id="4013" />
+<TGConnectingPoint num="3" id="4014" />
+<TGConnectingPoint num="4" id="4015" />
+<TGConnectingPoint num="5" id="4016" />
+<TGConnectingPoint num="6" id="4017" />
+<TGConnectingPoint num="7" id="4018" />
+<TGConnectingPoint num="8" id="4019" />
+<TGConnectingPoint num="9" id="4020" />
+<TGConnectingPoint num="10" id="4021" />
+<TGConnectingPoint num="11" id="4022" />
+<TGConnectingPoint num="12" id="4023" />
+<TGConnectingPoint num="13" id="4024" />
+<TGConnectingPoint num="14" id="4025" />
+<TGConnectingPoint num="15" id="4026" />
+<TGConnectingPoint num="16" id="4027" />
+<TGConnectingPoint num="17" id="4028" />
+<TGConnectingPoint num="18" id="4029" />
+<TGConnectingPoint num="19" id="4030" />
+<TGConnectingPoint num="20" id="4031" />
+<TGConnectingPoint num="21" id="4032" />
+<TGConnectingPoint num="22" id="4033" />
+<TGConnectingPoint num="23" id="4034" />
+<TGConnectingPoint num="24" id="4035" />
+<TGConnectingPoint num="25" id="4036" />
+<TGConnectingPoint num="26" id="4037" />
+<TGConnectingPoint num="27" id="4038" />
+<TGConnectingPoint num="28" id="4039" />
+<TGConnectingPoint num="29" id="4040" />
+<TGConnectingPoint num="30" id="4041" />
+<TGConnectingPoint num="31" id="4042" />
+<TGConnectingPoint num="32" id="4043" />
+<TGConnectingPoint num="33" id="4044" />
+<TGConnectingPoint num="34" id="4045" />
+<TGConnectingPoint num="35" id="4046" />
+<TGConnectingPoint num="36" id="4047" />
+<TGConnectingPoint num="37" id="4048" />
+<TGConnectingPoint num="38" id="4049" />
+<TGConnectingPoint num="39" id="4050" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="4053" >
+<cdparam x="60" y="16" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="4052" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="GroundCommunication" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="4060" >
+<cdparam x="483" y="115" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4059" />
+<P1  x="490" y="122" id="4362" />
+<P2  x="490" y="143" id="4293" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4058" >
+<father id="4060" num="0" />
+<cdparam x="486" y="129" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4054" />
+<TGConnectingPoint num="1" id="4055" />
+<TGConnectingPoint num="2" id="4056" />
+<TGConnectingPoint num="3" id="4057" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4067" >
+<cdparam x="492" y="175" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4066" />
+<P1  x="490" y="173" id="4294" />
+<P2  x="490" y="197" id="4304" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4065" >
+<father id="4067" num="0" />
+<cdparam x="491" y="186" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4061" />
+<TGConnectingPoint num="1" id="4062" />
+<TGConnectingPoint num="2" id="4063" />
+<TGConnectingPoint num="3" id="4064" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4074" >
+<cdparam x="490" y="193" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4073" />
+<P1  x="490" y="227" id="4305" />
+<P2  x="490" y="255" id="4316" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4072" >
+<father id="4074" num="0" />
+<cdparam x="486" y="224" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4068" />
+<TGConnectingPoint num="1" id="4069" />
+<TGConnectingPoint num="2" id="4070" />
+<TGConnectingPoint num="3" id="4071" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4081" >
+<cdparam x="86" y="48" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="4080" />
+<P1  x="75" y="47" id="4291" />
+<P2  x="87" y="72" id="4251" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4079" >
+<father id="4081" num="0" />
+<cdparam x="86" y="88" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4075" />
+<TGConnectingPoint num="1" id="4076" />
+<TGConnectingPoint num="2" id="4077" />
+<TGConnectingPoint num="3" id="4078" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4088" >
+<cdparam x="99" y="122" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="4087" />
+<P1  x="99" y="122" id="4280" />
+<P2  x="99" y="151" id="4239" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4086" >
+<father id="4088" num="0" />
+<cdparam x="99" y="162" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4082" />
+<TGConnectingPoint num="1" id="4083" />
+<TGConnectingPoint num="2" id="4084" />
+<TGConnectingPoint num="3" id="4085" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4095" >
+<cdparam x="99" y="181" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="4094" />
+<P1  x="99" y="181" id="4240" />
+<P2  x="99" y="207" id="4228" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4093" >
+<father id="4095" num="0" />
+<cdparam x="99" y="221" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4089" />
+<TGConnectingPoint num="1" id="4090" />
+<TGConnectingPoint num="2" id="4091" />
+<TGConnectingPoint num="3" id="4092" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4102" >
+<cdparam x="99" y="237" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="4101" />
+<P1  x="99" y="237" id="4229" />
+<P2  x="99" y="262" id="4188" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4100" >
+<father id="4102" num="0" />
+<cdparam x="99" y="277" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4096" />
+<TGConnectingPoint num="1" id="4097" />
+<TGConnectingPoint num="2" id="4098" />
+<TGConnectingPoint num="3" id="4099" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4109" >
+<cdparam x="327" y="119" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="4108" />
+<P1  x="327" y="119" id="4176" />
+<P2  x="327" y="145" id="4135" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4107" >
+<father id="4109" num="0" />
+<cdparam x="327" y="159" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4103" />
+<TGConnectingPoint num="1" id="4104" />
+<TGConnectingPoint num="2" id="4105" />
+<TGConnectingPoint num="3" id="4106" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4116" >
+<cdparam x="327" y="175" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="4115" />
+<P1  x="327" y="175" id="4136" />
+<P2  x="327" y="204" id="4124" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4114" >
+<father id="4116" num="0" />
+<cdparam x="327" y="215" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4110" />
+<TGConnectingPoint num="1" id="4111" />
+<TGConnectingPoint num="2" id="4112" />
+<TGConnectingPoint num="3" id="4113" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4123" >
+<cdparam x="327" y="234" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4122" />
+<P1  x="327" y="234" id="4125" />
+<P2  x="327" y="266" id="4398" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4121" >
+<father id="4123" num="0" />
+<cdparam x="331" y="251" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4117" />
+<TGConnectingPoint num="1" id="4118" />
+<TGConnectingPoint num="2" id="4119" />
+<TGConnectingPoint num="3" id="4120" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="4134" >
+<cdparam x="310" y="209" />
+<sizeparam width="34" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="CC()" />
+<TGConnectingPoint num="0" id="4124" />
+<TGConnectingPoint num="1" id="4125" />
+<TGConnectingPoint num="2" id="4126" />
+<TGConnectingPoint num="3" id="4127" />
+<TGConnectingPoint num="4" id="4128" />
+<TGConnectingPoint num="5" id="4129" />
+<TGConnectingPoint num="6" id="4130" />
+<TGConnectingPoint num="7" id="4131" />
+<TGConnectingPoint num="8" id="4132" />
+<TGConnectingPoint num="9" id="4133" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="4145" >
+<cdparam x="285" y="150" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INconresp()" />
+<TGConnectingPoint num="0" id="4135" />
+<TGConnectingPoint num="1" id="4136" />
+<TGConnectingPoint num="2" id="4137" />
+<TGConnectingPoint num="3" id="4138" />
+<TGConnectingPoint num="4" id="4139" />
+<TGConnectingPoint num="5" id="4140" />
+<TGConnectingPoint num="6" id="4141" />
+<TGConnectingPoint num="7" id="4142" />
+<TGConnectingPoint num="8" id="4143" />
+<TGConnectingPoint num="9" id="4144" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="4186" >
+<cdparam x="254" y="69" />
+<sizeparam width="119" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="WAIT_FOR_RESP" />
+<TGConnectingPoint num="0" id="4146" />
+<TGConnectingPoint num="1" id="4147" />
+<TGConnectingPoint num="2" id="4148" />
+<TGConnectingPoint num="3" id="4149" />
+<TGConnectingPoint num="4" id="4150" />
+<TGConnectingPoint num="5" id="4151" />
+<TGConnectingPoint num="6" id="4152" />
+<TGConnectingPoint num="7" id="4153" />
+<TGConnectingPoint num="8" id="4154" />
+<TGConnectingPoint num="9" id="4155" />
+<TGConnectingPoint num="10" id="4156" />
+<TGConnectingPoint num="11" id="4157" />
+<TGConnectingPoint num="12" id="4158" />
+<TGConnectingPoint num="13" id="4159" />
+<TGConnectingPoint num="14" id="4160" />
+<TGConnectingPoint num="15" id="4161" />
+<TGConnectingPoint num="16" id="4162" />
+<TGConnectingPoint num="17" id="4163" />
+<TGConnectingPoint num="18" id="4164" />
+<TGConnectingPoint num="19" id="4165" />
+<TGConnectingPoint num="20" id="4166" />
+<TGConnectingPoint num="21" id="4167" />
+<TGConnectingPoint num="22" id="4168" />
+<TGConnectingPoint num="23" id="4169" />
+<TGConnectingPoint num="24" id="4170" />
+<TGConnectingPoint num="25" id="4171" />
+<TGConnectingPoint num="26" id="4172" />
+<TGConnectingPoint num="27" id="4173" />
+<TGConnectingPoint num="28" id="4174" />
+<TGConnectingPoint num="29" id="4175" />
+<TGConnectingPoint num="30" id="4176" />
+<TGConnectingPoint num="31" id="4177" />
+<TGConnectingPoint num="32" id="4178" />
+<TGConnectingPoint num="33" id="4179" />
+<TGConnectingPoint num="34" id="4180" />
+<TGConnectingPoint num="35" id="4181" />
+<TGConnectingPoint num="36" id="4182" />
+<TGConnectingPoint num="37" id="4183" />
+<TGConnectingPoint num="38" id="4184" />
+<TGConnectingPoint num="39" id="4185" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="4227" >
+<cdparam x="39" y="262" />
+<sizeparam width="121" height="49" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="WAIT_FOR_RESP" />
+<TGConnectingPoint num="0" id="4187" />
+<TGConnectingPoint num="1" id="4188" />
+<TGConnectingPoint num="2" id="4189" />
+<TGConnectingPoint num="3" id="4190" />
+<TGConnectingPoint num="4" id="4191" />
+<TGConnectingPoint num="5" id="4192" />
+<TGConnectingPoint num="6" id="4193" />
+<TGConnectingPoint num="7" id="4194" />
+<TGConnectingPoint num="8" id="4195" />
+<TGConnectingPoint num="9" id="4196" />
+<TGConnectingPoint num="10" id="4197" />
+<TGConnectingPoint num="11" id="4198" />
+<TGConnectingPoint num="12" id="4199" />
+<TGConnectingPoint num="13" id="4200" />
+<TGConnectingPoint num="14" id="4201" />
+<TGConnectingPoint num="15" id="4202" />
+<TGConnectingPoint num="16" id="4203" />
+<TGConnectingPoint num="17" id="4204" />
+<TGConnectingPoint num="18" id="4205" />
+<TGConnectingPoint num="19" id="4206" />
+<TGConnectingPoint num="20" id="4207" />
+<TGConnectingPoint num="21" id="4208" />
+<TGConnectingPoint num="22" id="4209" />
+<TGConnectingPoint num="23" id="4210" />
+<TGConnectingPoint num="24" id="4211" />
+<TGConnectingPoint num="25" id="4212" />
+<TGConnectingPoint num="26" id="4213" />
+<TGConnectingPoint num="27" id="4214" />
+<TGConnectingPoint num="28" id="4215" />
+<TGConnectingPoint num="29" id="4216" />
+<TGConnectingPoint num="30" id="4217" />
+<TGConnectingPoint num="31" id="4218" />
+<TGConnectingPoint num="32" id="4219" />
+<TGConnectingPoint num="33" id="4220" />
+<TGConnectingPoint num="34" id="4221" />
+<TGConnectingPoint num="35" id="4222" />
+<TGConnectingPoint num="36" id="4223" />
+<TGConnectingPoint num="37" id="4224" />
+<TGConnectingPoint num="38" id="4225" />
+<TGConnectingPoint num="39" id="4226" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="4238" >
+<cdparam x="65" y="212" />
+<sizeparam width="68" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INconind()" />
+<TGConnectingPoint num="0" id="4228" />
+<TGConnectingPoint num="1" id="4229" />
+<TGConnectingPoint num="2" id="4230" />
+<TGConnectingPoint num="3" id="4231" />
+<TGConnectingPoint num="4" id="4232" />
+<TGConnectingPoint num="5" id="4233" />
+<TGConnectingPoint num="6" id="4234" />
+<TGConnectingPoint num="7" id="4235" />
+<TGConnectingPoint num="8" id="4236" />
+<TGConnectingPoint num="9" id="4237" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="4249" >
+<cdparam x="78" y="156" />
+<sizeparam width="42" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="CR()" />
+<TGConnectingPoint num="0" id="4239" />
+<TGConnectingPoint num="1" id="4240" />
+<TGConnectingPoint num="2" id="4241" />
+<TGConnectingPoint num="3" id="4242" />
+<TGConnectingPoint num="4" id="4243" />
+<TGConnectingPoint num="5" id="4244" />
+<TGConnectingPoint num="6" id="4245" />
+<TGConnectingPoint num="7" id="4246" />
+<TGConnectingPoint num="8" id="4247" />
+<TGConnectingPoint num="9" id="4248" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="4290" >
+<cdparam x="37" y="72" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="IDLE" />
+<TGConnectingPoint num="0" id="4250" />
+<TGConnectingPoint num="1" id="4251" />
+<TGConnectingPoint num="2" id="4252" />
+<TGConnectingPoint num="3" id="4253" />
+<TGConnectingPoint num="4" id="4254" />
+<TGConnectingPoint num="5" id="4255" />
+<TGConnectingPoint num="6" id="4256" />
+<TGConnectingPoint num="7" id="4257" />
+<TGConnectingPoint num="8" id="4258" />
+<TGConnectingPoint num="9" id="4259" />
+<TGConnectingPoint num="10" id="4260" />
+<TGConnectingPoint num="11" id="4261" />
+<TGConnectingPoint num="12" id="4262" />
+<TGConnectingPoint num="13" id="4263" />
+<TGConnectingPoint num="14" id="4264" />
+<TGConnectingPoint num="15" id="4265" />
+<TGConnectingPoint num="16" id="4266" />
+<TGConnectingPoint num="17" id="4267" />
+<TGConnectingPoint num="18" id="4268" />
+<TGConnectingPoint num="19" id="4269" />
+<TGConnectingPoint num="20" id="4270" />
+<TGConnectingPoint num="21" id="4271" />
+<TGConnectingPoint num="22" id="4272" />
+<TGConnectingPoint num="23" id="4273" />
+<TGConnectingPoint num="24" id="4274" />
+<TGConnectingPoint num="25" id="4275" />
+<TGConnectingPoint num="26" id="4276" />
+<TGConnectingPoint num="27" id="4277" />
+<TGConnectingPoint num="28" id="4278" />
+<TGConnectingPoint num="29" id="4279" />
+<TGConnectingPoint num="30" id="4280" />
+<TGConnectingPoint num="31" id="4281" />
+<TGConnectingPoint num="32" id="4282" />
+<TGConnectingPoint num="33" id="4283" />
+<TGConnectingPoint num="34" id="4284" />
+<TGConnectingPoint num="35" id="4285" />
+<TGConnectingPoint num="36" id="4286" />
+<TGConnectingPoint num="37" id="4287" />
+<TGConnectingPoint num="38" id="4288" />
+<TGConnectingPoint num="39" id="4289" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="4292" >
+<cdparam x="68" y="27" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="4291" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="4303" >
+<cdparam x="469" y="148" />
+<sizeparam width="43" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="DR()" />
+<TGConnectingPoint num="0" id="4293" />
+<TGConnectingPoint num="1" id="4294" />
+<TGConnectingPoint num="2" id="4295" />
+<TGConnectingPoint num="3" id="4296" />
+<TGConnectingPoint num="4" id="4297" />
+<TGConnectingPoint num="5" id="4298" />
+<TGConnectingPoint num="6" id="4299" />
+<TGConnectingPoint num="7" id="4300" />
+<TGConnectingPoint num="8" id="4301" />
+<TGConnectingPoint num="9" id="4302" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="4314" >
+<cdparam x="437" y="202" />
+<sizeparam width="106" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INerror_ground()" />
+<TGConnectingPoint num="0" id="4304" />
+<TGConnectingPoint num="1" id="4305" />
+<TGConnectingPoint num="2" id="4306" />
+<TGConnectingPoint num="3" id="4307" />
+<TGConnectingPoint num="4" id="4308" />
+<TGConnectingPoint num="5" id="4309" />
+<TGConnectingPoint num="6" id="4310" />
+<TGConnectingPoint num="7" id="4311" />
+<TGConnectingPoint num="8" id="4312" />
+<TGConnectingPoint num="9" id="4313" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="4355" >
+<cdparam x="440" y="255" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="State" value="ERROR" />
+<TGConnectingPoint num="0" id="4315" />
+<TGConnectingPoint num="1" id="4316" />
+<TGConnectingPoint num="2" id="4317" />
+<TGConnectingPoint num="3" id="4318" />
+<TGConnectingPoint num="4" id="4319" />
+<TGConnectingPoint num="5" id="4320" />
+<TGConnectingPoint num="6" id="4321" />
+<TGConnectingPoint num="7" id="4322" />
+<TGConnectingPoint num="8" id="4323" />
+<TGConnectingPoint num="9" id="4324" />
+<TGConnectingPoint num="10" id="4325" />
+<TGConnectingPoint num="11" id="4326" />
+<TGConnectingPoint num="12" id="4327" />
+<TGConnectingPoint num="13" id="4328" />
+<TGConnectingPoint num="14" id="4329" />
+<TGConnectingPoint num="15" id="4330" />
+<TGConnectingPoint num="16" id="4331" />
+<TGConnectingPoint num="17" id="4332" />
+<TGConnectingPoint num="18" id="4333" />
+<TGConnectingPoint num="19" id="4334" />
+<TGConnectingPoint num="20" id="4335" />
+<TGConnectingPoint num="21" id="4336" />
+<TGConnectingPoint num="22" id="4337" />
+<TGConnectingPoint num="23" id="4338" />
+<TGConnectingPoint num="24" id="4339" />
+<TGConnectingPoint num="25" id="4340" />
+<TGConnectingPoint num="26" id="4341" />
+<TGConnectingPoint num="27" id="4342" />
+<TGConnectingPoint num="28" id="4343" />
+<TGConnectingPoint num="29" id="4344" />
+<TGConnectingPoint num="30" id="4345" />
+<TGConnectingPoint num="31" id="4346" />
+<TGConnectingPoint num="32" id="4347" />
+<TGConnectingPoint num="33" id="4348" />
+<TGConnectingPoint num="34" id="4349" />
+<TGConnectingPoint num="35" id="4350" />
+<TGConnectingPoint num="36" id="4351" />
+<TGConnectingPoint num="37" id="4352" />
+<TGConnectingPoint num="38" id="4353" />
+<TGConnectingPoint num="39" id="4354" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="4396" >
+<cdparam x="440" y="63" />
+<sizeparam width="100" height="59" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="State" value="CONNECTED" />
+<TGConnectingPoint num="0" id="4356" />
+<TGConnectingPoint num="1" id="4357" />
+<TGConnectingPoint num="2" id="4358" />
+<TGConnectingPoint num="3" id="4359" />
+<TGConnectingPoint num="4" id="4360" />
+<TGConnectingPoint num="5" id="4361" />
+<TGConnectingPoint num="6" id="4362" />
+<TGConnectingPoint num="7" id="4363" />
+<TGConnectingPoint num="8" id="4364" />
+<TGConnectingPoint num="9" id="4365" />
+<TGConnectingPoint num="10" id="4366" />
+<TGConnectingPoint num="11" id="4367" />
+<TGConnectingPoint num="12" id="4368" />
+<TGConnectingPoint num="13" id="4369" />
+<TGConnectingPoint num="14" id="4370" />
+<TGConnectingPoint num="15" id="4371" />
+<TGConnectingPoint num="16" id="4372" />
+<TGConnectingPoint num="17" id="4373" />
+<TGConnectingPoint num="18" id="4374" />
+<TGConnectingPoint num="19" id="4375" />
+<TGConnectingPoint num="20" id="4376" />
+<TGConnectingPoint num="21" id="4377" />
+<TGConnectingPoint num="22" id="4378" />
+<TGConnectingPoint num="23" id="4379" />
+<TGConnectingPoint num="24" id="4380" />
+<TGConnectingPoint num="25" id="4381" />
+<TGConnectingPoint num="26" id="4382" />
+<TGConnectingPoint num="27" id="4383" />
+<TGConnectingPoint num="28" id="4384" />
+<TGConnectingPoint num="29" id="4385" />
+<TGConnectingPoint num="30" id="4386" />
+<TGConnectingPoint num="31" id="4387" />
+<TGConnectingPoint num="32" id="4388" />
+<TGConnectingPoint num="33" id="4389" />
+<TGConnectingPoint num="34" id="4390" />
+<TGConnectingPoint num="35" id="4391" />
+<TGConnectingPoint num="36" id="4392" />
+<TGConnectingPoint num="37" id="4393" />
+<TGConnectingPoint num="38" id="4394" />
+<TGConnectingPoint num="39" id="4395" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="4437" >
+<cdparam x="277" y="266" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="State" value="CONNECTED" />
+<TGConnectingPoint num="0" id="4397" />
+<TGConnectingPoint num="1" id="4398" />
+<TGConnectingPoint num="2" id="4399" />
+<TGConnectingPoint num="3" id="4400" />
+<TGConnectingPoint num="4" id="4401" />
+<TGConnectingPoint num="5" id="4402" />
+<TGConnectingPoint num="6" id="4403" />
+<TGConnectingPoint num="7" id="4404" />
+<TGConnectingPoint num="8" id="4405" />
+<TGConnectingPoint num="9" id="4406" />
+<TGConnectingPoint num="10" id="4407" />
+<TGConnectingPoint num="11" id="4408" />
+<TGConnectingPoint num="12" id="4409" />
+<TGConnectingPoint num="13" id="4410" />
+<TGConnectingPoint num="14" id="4411" />
+<TGConnectingPoint num="15" id="4412" />
+<TGConnectingPoint num="16" id="4413" />
+<TGConnectingPoint num="17" id="4414" />
+<TGConnectingPoint num="18" id="4415" />
+<TGConnectingPoint num="19" id="4416" />
+<TGConnectingPoint num="20" id="4417" />
+<TGConnectingPoint num="21" id="4418" />
+<TGConnectingPoint num="22" id="4419" />
+<TGConnectingPoint num="23" id="4420" />
+<TGConnectingPoint num="24" id="4421" />
+<TGConnectingPoint num="25" id="4422" />
+<TGConnectingPoint num="26" id="4423" />
+<TGConnectingPoint num="27" id="4424" />
+<TGConnectingPoint num="28" id="4425" />
+<TGConnectingPoint num="29" id="4426" />
+<TGConnectingPoint num="30" id="4427" />
+<TGConnectingPoint num="31" id="4428" />
+<TGConnectingPoint num="32" id="4429" />
+<TGConnectingPoint num="33" id="4430" />
+<TGConnectingPoint num="34" id="4431" />
+<TGConnectingPoint num="35" id="4432" />
+<TGConnectingPoint num="36" id="4433" />
+<TGConnectingPoint num="37" id="4434" />
+<TGConnectingPoint num="38" id="4435" />
+<TGConnectingPoint num="39" id="4436" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Controller" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="4452" >
+<cdparam x="374" y="197" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4447" />
+<TGConnectingPoint num="1" id="4448" />
+<TGConnectingPoint num="2" id="4449" />
+<TGConnectingPoint num="3" id="4450" />
+<TGConnectingPoint num="4" id="4451" />
+<P1  x="374" y="197" id="4510" />
+<P2  x="248" y="96" id="4561" />
+<Point x="374" y="212" />
+<Point x="441" y="212" />
+<Point x="441" y="90" />
+<Point x="274" y="90" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4438" >
+<father id="4452" num="0" />
+<cdparam x="374" y="212" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4439" >
+<father id="4452" num="1" />
+<cdparam x="441" y="212" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4440" >
+<father id="4452" num="2" />
+<cdparam x="441" y="90" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4441" >
+<father id="4452" num="3" />
+<cdparam x="274" y="90" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4446" >
+<father id="4452" num="4" />
+<cdparam x="311" y="146" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4442" />
+<TGConnectingPoint num="1" id="4443" />
+<TGConnectingPoint num="2" id="4444" />
+<TGConnectingPoint num="3" id="4445" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4461" >
+<cdparam x="261" y="102" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4459" />
+<TGConnectingPoint num="1" id="4460" />
+<P1  x="261" y="102" id="4564" />
+<P2  x="374" y="167" id="4509" />
+<Point x="374" y="102" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4453" >
+<father id="4461" num="0" />
+<cdparam x="374" y="102" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4458" >
+<father id="4461" num="1" />
+<cdparam x="321" y="99" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4454" />
+<TGConnectingPoint num="1" id="4455" />
+<TGConnectingPoint num="2" id="4456" />
+<TGConnectingPoint num="3" id="4457" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4474" >
+<cdparam x="153" y="198" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4470" />
+<TGConnectingPoint num="1" id="4471" />
+<TGConnectingPoint num="2" id="4472" />
+<TGConnectingPoint num="3" id="4473" />
+<P1  x="153" y="198" id="4532" />
+<P2  x="261" y="114" id="4565" />
+<Point x="153" y="216" />
+<Point x="309" y="216" />
+<Point x="309" y="114" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4462" >
+<father id="4474" num="0" />
+<cdparam x="153" y="216" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4463" >
+<father id="4474" num="1" />
+<cdparam x="309" y="216" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4464" >
+<father id="4474" num="2" />
+<cdparam x="309" y="114" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4469" >
+<father id="4474" num="3" />
+<cdparam x="153" y="238" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4465" />
+<TGConnectingPoint num="1" id="4466" />
+<TGConnectingPoint num="2" id="4467" />
+<TGConnectingPoint num="3" id="4468" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4487" >
+<cdparam x="247" y="197" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4483" />
+<TGConnectingPoint num="1" id="4484" />
+<TGConnectingPoint num="2" id="4485" />
+<TGConnectingPoint num="3" id="4486" />
+<P1  x="247" y="197" id="4521" />
+<P2  x="261" y="133" id="4555" />
+<Point x="247" y="207" />
+<Point x="298" y="207" />
+<Point x="298" y="133" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4475" >
+<father id="4487" num="0" />
+<cdparam x="247" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4476" >
+<father id="4487" num="1" />
+<cdparam x="298" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4477" >
+<father id="4487" num="2" />
+<cdparam x="298" y="133" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4482" >
+<father id="4487" num="3" />
+<cdparam x="247" y="237" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4478" />
+<TGConnectingPoint num="1" id="4479" />
+<TGConnectingPoint num="2" id="4480" />
+<TGConnectingPoint num="3" id="4481" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4494" >
+<cdparam x="186" y="62" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="4493" />
+<P1  x="186" y="62" id="4583" />
+<P2  x="211" y="96" id="4543" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4492" >
+<father id="4494" num="0" />
+<cdparam x="211" y="104" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4488" />
+<TGConnectingPoint num="1" id="4489" />
+<TGConnectingPoint num="2" id="4490" />
+<TGConnectingPoint num="3" id="4491" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4501" >
+<cdparam x="161" y="146" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="4500" />
+<P1  x="186" y="146" id="4556" />
+<P2  x="153" y="168" id="4531" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4499" >
+<father id="4501" num="0" />
+<cdparam x="161" y="186" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4495" />
+<TGConnectingPoint num="1" id="4496" />
+<TGConnectingPoint num="2" id="4497" />
+<TGConnectingPoint num="3" id="4498" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4508" >
+<cdparam x="211" y="201" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="4507" />
+<P1  x="236" y="146" id="4557" />
+<P2  x="247" y="167" id="4520" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4506" >
+<father id="4508" num="0" />
+<cdparam x="211" y="241" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4502" />
+<TGConnectingPoint num="1" id="4503" />
+<TGConnectingPoint num="2" id="4504" />
+<TGConnectingPoint num="3" id="4505" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5104" id="4519" >
+<cdparam x="317" y="172" />
+<sizeparam width="114" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INerror_ground()" />
+<TGConnectingPoint num="0" id="4509" />
+<TGConnectingPoint num="1" id="4510" />
+<TGConnectingPoint num="2" id="4511" />
+<TGConnectingPoint num="3" id="4512" />
+<TGConnectingPoint num="4" id="4513" />
+<TGConnectingPoint num="5" id="4514" />
+<TGConnectingPoint num="6" id="4515" />
+<TGConnectingPoint num="7" id="4516" />
+<TGConnectingPoint num="8" id="4517" />
+<TGConnectingPoint num="9" id="4518" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="4530" >
+<cdparam x="209" y="172" />
+<sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INconresp()" />
+<TGConnectingPoint num="0" id="4520" />
+<TGConnectingPoint num="1" id="4521" />
+<TGConnectingPoint num="2" id="4522" />
+<TGConnectingPoint num="3" id="4523" />
+<TGConnectingPoint num="4" id="4524" />
+<TGConnectingPoint num="5" id="4525" />
+<TGConnectingPoint num="6" id="4526" />
+<TGConnectingPoint num="7" id="4527" />
+<TGConnectingPoint num="8" id="4528" />
+<TGConnectingPoint num="9" id="4529" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="4541" >
+<cdparam x="115" y="173" />
+<sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INconind()" />
+<TGConnectingPoint num="0" id="4531" />
+<TGConnectingPoint num="1" id="4532" />
+<TGConnectingPoint num="2" id="4533" />
+<TGConnectingPoint num="3" id="4534" />
+<TGConnectingPoint num="4" id="4535" />
+<TGConnectingPoint num="5" id="4536" />
+<TGConnectingPoint num="6" id="4537" />
+<TGConnectingPoint num="7" id="4538" />
+<TGConnectingPoint num="8" id="4539" />
+<TGConnectingPoint num="9" id="4540" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="4582" >
+<cdparam x="161" y="96" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="ACTIVE" />
+<TGConnectingPoint num="0" id="4542" />
+<TGConnectingPoint num="1" id="4543" />
+<TGConnectingPoint num="2" id="4544" />
+<TGConnectingPoint num="3" id="4545" />
+<TGConnectingPoint num="4" id="4546" />
+<TGConnectingPoint num="5" id="4547" />
+<TGConnectingPoint num="6" id="4548" />
+<TGConnectingPoint num="7" id="4549" />
+<TGConnectingPoint num="8" id="4550" />
+<TGConnectingPoint num="9" id="4551" />
+<TGConnectingPoint num="10" id="4552" />
+<TGConnectingPoint num="11" id="4553" />
+<TGConnectingPoint num="12" id="4554" />
+<TGConnectingPoint num="13" id="4555" />
+<TGConnectingPoint num="14" id="4556" />
+<TGConnectingPoint num="15" id="4557" />
+<TGConnectingPoint num="16" id="4558" />
+<TGConnectingPoint num="17" id="4559" />
+<TGConnectingPoint num="18" id="4560" />
+<TGConnectingPoint num="19" id="4561" />
+<TGConnectingPoint num="20" id="4562" />
+<TGConnectingPoint num="21" id="4563" />
+<TGConnectingPoint num="22" id="4564" />
+<TGConnectingPoint num="23" id="4565" />
+<TGConnectingPoint num="24" id="4566" />
+<TGConnectingPoint num="25" id="4567" />
+<TGConnectingPoint num="26" id="4568" />
+<TGConnectingPoint num="27" id="4569" />
+<TGConnectingPoint num="28" id="4570" />
+<TGConnectingPoint num="29" id="4571" />
+<TGConnectingPoint num="30" id="4572" />
+<TGConnectingPoint num="31" id="4573" />
+<TGConnectingPoint num="32" id="4574" />
+<TGConnectingPoint num="33" id="4575" />
+<TGConnectingPoint num="34" id="4576" />
+<TGConnectingPoint num="35" id="4577" />
+<TGConnectingPoint num="36" id="4578" />
+<TGConnectingPoint num="37" id="4579" />
+<TGConnectingPoint num="38" id="4580" />
+<TGConnectingPoint num="39" id="4581" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="4584" >
+<cdparam x="179" y="42" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="4583" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Pilot" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="4597" >
+<cdparam x="261" y="165" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4593" />
+<TGConnectingPoint num="1" id="4594" />
+<TGConnectingPoint num="2" id="4595" />
+<TGConnectingPoint num="3" id="4596" />
+<P1  x="271" y="165" id="4653" />
+<P2  x="216" y="109" id="4714" />
+<Point x="271" y="173" />
+<Point x="320" y="173" />
+<Point x="320" y="109" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4585" >
+<father id="4597" num="0" />
+<cdparam x="271" y="173" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4586" >
+<father id="4597" num="1" />
+<cdparam x="320" y="173" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4587" >
+<father id="4597" num="2" />
+<cdparam x="320" y="109" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4592" >
+<father id="4597" num="3" />
+<cdparam x="238" y="137" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4588" />
+<TGConnectingPoint num="1" id="4589" />
+<TGConnectingPoint num="2" id="4590" />
+<TGConnectingPoint num="3" id="4591" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4610" >
+<cdparam x="79" y="166" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4606" />
+<TGConnectingPoint num="1" id="4607" />
+<TGConnectingPoint num="2" id="4608" />
+<TGConnectingPoint num="3" id="4609" />
+<P1  x="79" y="166" id="4675" />
+<P2  x="216" y="78" id="4698" />
+<Point x="79" y="189" />
+<Point x="341" y="189" />
+<Point x="341" y="78" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4598" >
+<father id="4610" num="0" />
+<cdparam x="79" y="189" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4599" >
+<father id="4610" num="1" />
+<cdparam x="341" y="189" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4600" >
+<father id="4610" num="2" />
+<cdparam x="341" y="78" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4605" >
+<father id="4610" num="3" />
+<cdparam x="79" y="206" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4601" />
+<TGConnectingPoint num="1" id="4602" />
+<TGConnectingPoint num="2" id="4603" />
+<TGConnectingPoint num="3" id="4604" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4623" >
+<cdparam x="177" y="166" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4619" />
+<TGConnectingPoint num="1" id="4620" />
+<TGConnectingPoint num="2" id="4621" />
+<TGConnectingPoint num="3" id="4622" />
+<P1  x="177" y="166" id="4664" />
+<P2  x="216" y="91" id="4691" />
+<Point x="177" y="183" />
+<Point x="330" y="183" />
+<Point x="330" y="91" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4611" >
+<father id="4623" num="0" />
+<cdparam x="177" y="183" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4612" >
+<father id="4623" num="1" />
+<cdparam x="330" y="183" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4613" >
+<father id="4623" num="2" />
+<cdparam x="330" y="91" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="4618" >
+<father id="4623" num="3" />
+<cdparam x="177" y="206" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4614" />
+<TGConnectingPoint num="1" id="4615" />
+<TGConnectingPoint num="2" id="4616" />
+<TGConnectingPoint num="3" id="4617" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4630" >
+<cdparam x="165" y="44" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="4629" />
+<P1  x="165" y="44" id="4685" />
+<P2  x="166" y="66" id="4688" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4628" >
+<father id="4630" num="0" />
+<cdparam x="165" y="84" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4624" />
+<TGConnectingPoint num="1" id="4625" />
+<TGConnectingPoint num="2" id="4626" />
+<TGConnectingPoint num="3" id="4627" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4637" >
+<cdparam x="178" y="116" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="4636" />
+<P1  x="128" y="116" id="4715" />
+<P2  x="79" y="136" id="4674" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4635" >
+<father id="4637" num="0" />
+<cdparam x="178" y="156" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4631" />
+<TGConnectingPoint num="1" id="4632" />
+<TGConnectingPoint num="2" id="4633" />
+<TGConnectingPoint num="3" id="4634" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4644" >
+<cdparam x="178" y="168" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="4643" />
+<P1  x="166" y="116" id="4693" />
+<P2  x="177" y="136" id="4663" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4642" >
+<father id="4644" num="0" />
+<cdparam x="178" y="208" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4638" />
+<TGConnectingPoint num="1" id="4639" />
+<TGConnectingPoint num="2" id="4640" />
+<TGConnectingPoint num="3" id="4641" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="4651" >
+<cdparam x="216" y="116" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="4650" />
+<P1  x="216" y="116" id="4694" />
+<P2  x="271" y="135" id="4652" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="4649" >
+<father id="4651" num="0" />
+<cdparam x="246" y="129" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="4645" />
+<TGConnectingPoint num="1" id="4646" />
+<TGConnectingPoint num="2" id="4647" />
+<TGConnectingPoint num="3" id="4648" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5104" id="4662" >
+<cdparam x="238" y="140" />
+<sizeparam width="67" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INerror()" />
+<TGConnectingPoint num="0" id="4652" />
+<TGConnectingPoint num="1" id="4653" />
+<TGConnectingPoint num="2" id="4654" />
+<TGConnectingPoint num="3" id="4655" />
+<TGConnectingPoint num="4" id="4656" />
+<TGConnectingPoint num="5" id="4657" />
+<TGConnectingPoint num="6" id="4658" />
+<TGConnectingPoint num="7" id="4659" />
+<TGConnectingPoint num="8" id="4660" />
+<TGConnectingPoint num="9" id="4661" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="4673" >
+<cdparam x="136" y="141" />
+<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="INconconf()" />
+<TGConnectingPoint num="0" id="4663" />
+<TGConnectingPoint num="1" id="4664" />
+<TGConnectingPoint num="2" id="4665" />
+<TGConnectingPoint num="3" id="4666" />
+<TGConnectingPoint num="4" id="4667" />
+<TGConnectingPoint num="5" id="4668" />
+<TGConnectingPoint num="6" id="4669" />
+<TGConnectingPoint num="7" id="4670" />
+<TGConnectingPoint num="8" id="4671" />
+<TGConnectingPoint num="9" id="4672" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="4684" >
+<cdparam x="44" y="141" />
+<sizeparam width="70" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="INconreq()" />
+<TGConnectingPoint num="0" id="4674" />
+<TGConnectingPoint num="1" id="4675" />
+<TGConnectingPoint num="2" id="4676" />
+<TGConnectingPoint num="3" id="4677" />
+<TGConnectingPoint num="4" id="4678" />
+<TGConnectingPoint num="5" id="4679" />
+<TGConnectingPoint num="6" id="4680" />
+<TGConnectingPoint num="7" id="4681" />
+<TGConnectingPoint num="8" id="4682" />
+<TGConnectingPoint num="9" id="4683" />
+</COMPONENT>
+
+<COMPONENT type="5100" id="4686" >
+<cdparam x="158" y="24" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="4685" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="4727" >
+<cdparam x="116" y="66" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="ACTIVE" />
+<TGConnectingPoint num="0" id="4687" />
+<TGConnectingPoint num="1" id="4688" />
+<TGConnectingPoint num="2" id="4689" />
+<TGConnectingPoint num="3" id="4690" />
+<TGConnectingPoint num="4" id="4691" />
+<TGConnectingPoint num="5" id="4692" />
+<TGConnectingPoint num="6" id="4693" />
+<TGConnectingPoint num="7" id="4694" />
+<TGConnectingPoint num="8" id="4695" />
+<TGConnectingPoint num="9" id="4696" />
+<TGConnectingPoint num="10" id="4697" />
+<TGConnectingPoint num="11" id="4698" />
+<TGConnectingPoint num="12" id="4699" />
+<TGConnectingPoint num="13" id="4700" />
+<TGConnectingPoint num="14" id="4701" />
+<TGConnectingPoint num="15" id="4702" />
+<TGConnectingPoint num="16" id="4703" />
+<TGConnectingPoint num="17" id="4704" />
+<TGConnectingPoint num="18" id="4705" />
+<TGConnectingPoint num="19" id="4706" />
+<TGConnectingPoint num="20" id="4707" />
+<TGConnectingPoint num="21" id="4708" />
+<TGConnectingPoint num="22" id="4709" />
+<TGConnectingPoint num="23" id="4710" />
+<TGConnectingPoint num="24" id="4711" />
+<TGConnectingPoint num="25" id="4712" />
+<TGConnectingPoint num="26" id="4713" />
+<TGConnectingPoint num="27" id="4714" />
+<TGConnectingPoint num="28" id="4715" />
+<TGConnectingPoint num="29" id="4716" />
+<TGConnectingPoint num="30" id="4717" />
+<TGConnectingPoint num="31" id="4718" />
+<TGConnectingPoint num="32" id="4719" />
+<TGConnectingPoint num="33" id="4720" />
+<TGConnectingPoint num="34" id="4721" />
+<TGConnectingPoint num="35" id="4722" />
+<TGConnectingPoint num="36" id="4723" />
+<TGConnectingPoint num="37" id="4724" />
+<TGConnectingPoint num="38" id="4725" />
+<TGConnectingPoint num="39" id="4726" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+</Modeling>
+
+
+
+
+</TURTLEGMODELING>
\ No newline at end of file
diff --git a/ttool/src/test/resources/ui/diagram2avatar/input/ebook_reader_01.xml b/ttool/src/test/resources/ui/diagram2avatar/input/ebook_reader_01.xml
new file mode 100644
index 0000000000000000000000000000000000000000..186d52671d4de03c396fdc74ef63229c013a3f4d
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/input/ebook_reader_01.xml
@@ -0,0 +1,3797 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<TURTLEGMODELING version="0.99-beta4">
+
+<Modeling type="AVATAR Design" nameTab="AVATAR Design" >
+<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" >
+<MainCode value="void __user_init() {"/>
+<MainCode value="}"/>
+<Optimized value="true" />
+<Validated value="PageLoader;UserModel;DisplayDriver;EReaderController;" />
+<Ignored value="" />
+
+<CONNECTOR type="5002" id="2" >
+<cdparam x="504" y="199" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block0 to Block0" value="" />
+<TGConnectingPoint num="0" id="1" />
+<P1  x="491" y="260" id="57" />
+<P2  x="491" y="282" id="127" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in loadPage(Document doc, int pageid)" />
+<osd value="out loadPage(Document doc, int pageid)" />
+<isd value="in getPage(Page aPage)" />
+<oso value="out pageReady(Page aPage)" />
+<FIFOType asynchronous="true" size="4" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="5002" id="4" >
+<cdparam x="490" y="519" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block0 to Block0" value="" />
+<TGConnectingPoint num="0" id="3" />
+<P1  x="639" y="375" id="79" />
+<P2  x="606" y="374" id="130" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<isd value="in home()" />
+<isd value="in openDocument(Document doc)" />
+<isd value="in flipNextPage()" />
+<isd value="in flipPreviousPage()" />
+<isd value="in goToPage(int index)" />
+<oso value="out home()" />
+<oso value="out openDocument(Document doc)" />
+<oso value="out flipNextPage()" />
+<oso value="out flipPreviousPage()" />
+<oso value="out goToPage(int index)" />
+<FIFOType asynchronous="true" size="10" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="5002" id="6" >
+<cdparam x="248" y="317" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Block0 to Block0" value="" />
+<TGConnectingPoint num="0" id="5" />
+<P1  x="342" y="375" id="105" />
+<P2  x="377" y="374" id="129" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in displayPage(Page page)" />
+<osd value="out displayPage(Page page)" />
+<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<COMPONENT type="5003" id="15" >
+<cdparam x="633" y="78" />
+<sizeparam width="212" height="167" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DataType0" value="MemoryForPages" />
+<TGConnectingPoint num="0" id="7" />
+<TGConnectingPoint num="1" id="8" />
+<TGConnectingPoint num="2" id="9" />
+<TGConnectingPoint num="3" id="10" />
+<TGConnectingPoint num="4" id="11" />
+<TGConnectingPoint num="5" id="12" />
+<TGConnectingPoint num="6" id="13" />
+<TGConnectingPoint num="7" id="14" />
+<extraparam>
+<Attribute access="0" id="index1" value="" type="8" typeOther="" />
+<Attribute access="0" id="data1" value="" type="8" typeOther="" />
+<Attribute access="0" id="index2" value="" type="8" typeOther="" />
+<Attribute access="0" id="data2" value="" type="8" typeOther="" />
+<Attribute access="0" id="index3" value="" type="8" typeOther="" />
+<Attribute access="0" id="data3" value="" type="8" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="32" >
+<cdparam x="636" y="10" />
+<sizeparam width="366" height="27" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="Add the possibility to prefetch pages, and keep the old
+ones in memory (for example, the three last!)
+" />
+<TGConnectingPoint num="0" id="16" />
+<TGConnectingPoint num="1" id="17" />
+<TGConnectingPoint num="2" id="18" />
+<TGConnectingPoint num="3" id="19" />
+<TGConnectingPoint num="4" id="20" />
+<TGConnectingPoint num="5" id="21" />
+<TGConnectingPoint num="6" id="22" />
+<TGConnectingPoint num="7" id="23" />
+<TGConnectingPoint num="8" id="24" />
+<TGConnectingPoint num="9" id="25" />
+<TGConnectingPoint num="10" id="26" />
+<TGConnectingPoint num="11" id="27" />
+<TGConnectingPoint num="12" id="28" />
+<TGConnectingPoint num="13" id="29" />
+<TGConnectingPoint num="14" id="30" />
+<TGConnectingPoint num="15" id="31" />
+<extraparam>
+<Line value="Add the possibility to prefetch pages, and keep the old" />
+<Line value="ones in memory (for example, the three last!)" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5003" id="41" >
+<cdparam x="147" y="167" />
+<sizeparam width="163" height="96" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DataType0" value="Page" />
+<TGConnectingPoint num="0" id="33" />
+<TGConnectingPoint num="1" id="34" />
+<TGConnectingPoint num="2" id="35" />
+<TGConnectingPoint num="3" id="36" />
+<TGConnectingPoint num="4" id="37" />
+<TGConnectingPoint num="5" id="38" />
+<TGConnectingPoint num="6" id="39" />
+<TGConnectingPoint num="7" id="40" />
+<extraparam>
+<Attribute access="0" id="data" value="" type="8" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5003" id="50" >
+<cdparam x="148" y="66" />
+<sizeparam width="162" height="92" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DataType0" value="Document" />
+<TGConnectingPoint num="0" id="42" />
+<TGConnectingPoint num="1" id="43" />
+<TGConnectingPoint num="2" id="44" />
+<TGConnectingPoint num="3" id="45" />
+<TGConnectingPoint num="4" id="46" />
+<TGConnectingPoint num="5" id="47" />
+<TGConnectingPoint num="6" id="48" />
+<TGConnectingPoint num="7" id="49" />
+<extraparam>
+<Attribute access="0" id="id" value="" type="8" typeOther="" />
+<Attribute access="0" id="nbOfPages" value="" type="8" typeOther="" />
+<Attribute access="0" id="currentPage" value="0" type="8" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="75" >
+<cdparam x="379" y="69" />
+<sizeparam width="225" height="191" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="PageLoader" />
+<TGConnectingPoint num="0" id="51" />
+<TGConnectingPoint num="1" id="52" />
+<TGConnectingPoint num="2" id="53" />
+<TGConnectingPoint num="3" id="54" />
+<TGConnectingPoint num="4" id="55" />
+<TGConnectingPoint num="5" id="56" />
+<TGConnectingPoint num="6" id="57" />
+<TGConnectingPoint num="7" id="58" />
+<TGConnectingPoint num="8" id="59" />
+<TGConnectingPoint num="9" id="60" />
+<TGConnectingPoint num="10" id="61" />
+<TGConnectingPoint num="11" id="62" />
+<TGConnectingPoint num="12" id="63" />
+<TGConnectingPoint num="13" id="64" />
+<TGConnectingPoint num="14" id="65" />
+<TGConnectingPoint num="15" id="66" />
+<TGConnectingPoint num="16" id="67" />
+<TGConnectingPoint num="17" id="68" />
+<TGConnectingPoint num="18" id="69" />
+<TGConnectingPoint num="19" id="70" />
+<TGConnectingPoint num="20" id="71" />
+<TGConnectingPoint num="21" id="72" />
+<TGConnectingPoint num="22" id="73" />
+<TGConnectingPoint num="23" id="74" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="doc" value="" type="5" typeOther="Document" />
+<Attribute access="0" id="page" value="" type="5" typeOther="Page" />
+<Attribute access="0" id="pageid" value="" type="8" typeOther="" />
+<Attribute access="0" id="minPageLoadingTime" value="10" type="8" typeOther="" />
+<Attribute access="0" id="maxPageLoadingTime" value="2000" type="8" typeOther="" />
+<Attribute access="0" id="x" value="" type="8" typeOther="" />
+<Attribute access="0" id="memoryPageAccessTime" value="2" type="8" typeOther="" />
+<Attribute access="0" id="memory" value="" type="5" typeOther="MemoryForPages" />
+<Signal value="in loadPage(Document doc, int pageid)" attached="true" />
+<Signal value="out pageReady(Page aPage)" attached="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="100" >
+<cdparam x="639" y="283" />
+<sizeparam width="198" height="184" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="UserModel" />
+<TGConnectingPoint num="0" id="76" />
+<TGConnectingPoint num="1" id="77" />
+<TGConnectingPoint num="2" id="78" />
+<TGConnectingPoint num="3" id="79" />
+<TGConnectingPoint num="4" id="80" />
+<TGConnectingPoint num="5" id="81" />
+<TGConnectingPoint num="6" id="82" />
+<TGConnectingPoint num="7" id="83" />
+<TGConnectingPoint num="8" id="84" />
+<TGConnectingPoint num="9" id="85" />
+<TGConnectingPoint num="10" id="86" />
+<TGConnectingPoint num="11" id="87" />
+<TGConnectingPoint num="12" id="88" />
+<TGConnectingPoint num="13" id="89" />
+<TGConnectingPoint num="14" id="90" />
+<TGConnectingPoint num="15" id="91" />
+<TGConnectingPoint num="16" id="92" />
+<TGConnectingPoint num="17" id="93" />
+<TGConnectingPoint num="18" id="94" />
+<TGConnectingPoint num="19" id="95" />
+<TGConnectingPoint num="20" id="96" />
+<TGConnectingPoint num="21" id="97" />
+<TGConnectingPoint num="22" id="98" />
+<TGConnectingPoint num="23" id="99" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="doc1" value="" type="5" typeOther="Document" />
+<Attribute access="0" id="doc2" value="" type="5" typeOther="Document" />
+<Attribute access="0" id="index" value="" type="8" typeOther="" />
+<Signal value="out home()" attached="false" />
+<Signal value="out openDocument(Document doc)" attached="true" />
+<Signal value="out flipNextPage()" attached="true" />
+<Signal value="out flipPreviousPage()" attached="false" />
+<Signal value="out goToPage(int index)" attached="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="125" >
+<cdparam x="92" y="287" />
+<sizeparam width="250" height="177" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="DisplayDriver" />
+<TGConnectingPoint num="0" id="101" />
+<TGConnectingPoint num="1" id="102" />
+<TGConnectingPoint num="2" id="103" />
+<TGConnectingPoint num="3" id="104" />
+<TGConnectingPoint num="4" id="105" />
+<TGConnectingPoint num="5" id="106" />
+<TGConnectingPoint num="6" id="107" />
+<TGConnectingPoint num="7" id="108" />
+<TGConnectingPoint num="8" id="109" />
+<TGConnectingPoint num="9" id="110" />
+<TGConnectingPoint num="10" id="111" />
+<TGConnectingPoint num="11" id="112" />
+<TGConnectingPoint num="12" id="113" />
+<TGConnectingPoint num="13" id="114" />
+<TGConnectingPoint num="14" id="115" />
+<TGConnectingPoint num="15" id="116" />
+<TGConnectingPoint num="16" id="117" />
+<TGConnectingPoint num="17" id="118" />
+<TGConnectingPoint num="18" id="119" />
+<TGConnectingPoint num="19" id="120" />
+<TGConnectingPoint num="20" id="121" />
+<TGConnectingPoint num="21" id="122" />
+<TGConnectingPoint num="22" id="123" />
+<TGConnectingPoint num="23" id="124" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="page" value="" type="5" typeOther="Page" />
+<Attribute access="0" id="data" value="" type="8" typeOther="" />
+<Method value="printPage(int data)" />
+<Signal value="in displayPage(Page page)" attached="true" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="150" >
+<cdparam x="377" y="282" />
+<sizeparam width="229" height="184" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Block0" value="EReaderController" />
+<TGConnectingPoint num="0" id="126" />
+<TGConnectingPoint num="1" id="127" />
+<TGConnectingPoint num="2" id="128" />
+<TGConnectingPoint num="3" id="129" />
+<TGConnectingPoint num="4" id="130" />
+<TGConnectingPoint num="5" id="131" />
+<TGConnectingPoint num="6" id="132" />
+<TGConnectingPoint num="7" id="133" />
+<TGConnectingPoint num="8" id="134" />
+<TGConnectingPoint num="9" id="135" />
+<TGConnectingPoint num="10" id="136" />
+<TGConnectingPoint num="11" id="137" />
+<TGConnectingPoint num="12" id="138" />
+<TGConnectingPoint num="13" id="139" />
+<TGConnectingPoint num="14" id="140" />
+<TGConnectingPoint num="15" id="141" />
+<TGConnectingPoint num="16" id="142" />
+<TGConnectingPoint num="17" id="143" />
+<TGConnectingPoint num="18" id="144" />
+<TGConnectingPoint num="19" id="145" />
+<TGConnectingPoint num="20" id="146" />
+<TGConnectingPoint num="21" id="147" />
+<TGConnectingPoint num="22" id="148" />
+<TGConnectingPoint num="23" id="149" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="currentDocument" value="" type="5" typeOther="Document" />
+<Attribute access="0" id="currentPage" value="" type="8" typeOther="" />
+<Attribute access="0" id="page" value="" type="5" typeOther="Page" />
+<Signal value="out displayPage(Page page)" attached="true" />
+<Signal value="in openDocument(Document doc)" attached="true" />
+<Signal value="in flipNextPage()" attached="true" />
+<Signal value="in flipPreviousPage()" attached="true" />
+<Signal value="in goToPage(int index)" attached="true" />
+<Signal value="in home()" attached="true" />
+<Signal value="out loadPage(Document doc, int pageid)" attached="true" />
+<Signal value="in getPage(Page aPage)" attached="true" />
+</extraparam>
+</COMPONENT>
+
+
+</AVATARBlockDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="PageLoader" minX="10" maxX="1400" minY="10" maxY="1900" >
+<CONNECTOR type="5102" id="159" >
+<cdparam x="403" y="844" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to state0" value="null" />
+<TGConnectingPoint num="0" id="157" />
+<TGConnectingPoint num="1" id="158" />
+<P1  x="403" y="844" id="369" />
+<P2  x="703" y="1149" id="392" />
+<Point x="703" y="1048" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="151" >
+<father id="159" num="0" />
+<cdparam x="703" y="1048" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="156" >
+<father id="159" num="1" />
+<cdparam x="476" y="889" />
+<sizeparam width="44" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="152" />
+<TGConnectingPoint num="1" id="153" />
+<TGConnectingPoint num="2" id="154" />
+<TGConnectingPoint num="3" id="155" />
+<extraparam>
+<guard value="[ else ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="168" >
+<cdparam x="409" y="1462" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to state0" value="null" />
+<TGConnectingPoint num="0" id="166" />
+<TGConnectingPoint num="1" id="167" />
+<P1  x="400" y="1459" id="873" />
+<P2  x="631" y="1199" id="389" />
+<Point x="631" y="1459" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="160" >
+<father id="168" num="0" />
+<cdparam x="631" y="1459" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="165" >
+<father id="168" num="1" />
+<cdparam x="562" y="1447" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="161" />
+<TGConnectingPoint num="1" id="162" />
+<TGConnectingPoint num="2" id="163" />
+<TGConnectingPoint num="3" id="164" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="175" >
+<cdparam x="256" y="1075" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to TGComponent" value="null" />
+<TGConnectingPoint num="0" id="174" />
+<P1  x="256" y="1075" id="942" />
+<P2  x="263" y="1113" id="985" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="173" >
+<father id="175" num="0" />
+<cdparam x="148" y="1101" />
+<sizeparam width="315" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="169" />
+<TGConnectingPoint num="1" id="170" />
+<TGConnectingPoint num="2" id="171" />
+<TGConnectingPoint num="3" id="172" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="minPageLoadingTime" />
+<afterMax value="maxPageLoadingTime" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="182" >
+<cdparam x="257" y="1176" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to state0" value="null" />
+<TGConnectingPoint num="0" id="181" />
+<P1  x="263" y="1205" id="950" />
+<P2  x="263" y="1270" id="902" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="180" >
+<father id="182" num="0" />
+<cdparam x="257" y="1216" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="176" />
+<TGConnectingPoint num="1" id="177" />
+<TGConnectingPoint num="2" id="178" />
+<TGConnectingPoint num="3" id="179" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="189" >
+<cdparam x="206" y="1353" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to state0" value="null" />
+<TGConnectingPoint num="0" id="188" />
+<P1  x="263" y="1312" id="907" />
+<P2  x="263" y="1431" id="861" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="187" >
+<father id="189" num="0" />
+<cdparam x="273" y="1333" />
+<sizeparam width="206" height="90" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="183" />
+<TGConnectingPoint num="1" id="184" />
+<TGConnectingPoint num="2" id="185" />
+<TGConnectingPoint num="3" id="186" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="memory.index1 = memory.index2" />
+<actions value="memory.data1 = memory.data2" />
+<actions value="memory.index2 = memory.index3" />
+<actions value="memory.data2 = memory.data3" />
+<actions value="memory.index3 = pageid" />
+<actions value="memory.data3 = x" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="196" >
+<cdparam x="265" y="1112" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to state0" value="null" />
+<TGConnectingPoint num="0" id="195" />
+<P1  x="263" y="1143" id="986" />
+<P2  x="263" y="1155" id="945" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="194" >
+<father id="196" num="0" />
+<cdparam x="265" y="1152" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="190" />
+<TGConnectingPoint num="1" id="191" />
+<TGConnectingPoint num="2" id="192" />
+<TGConnectingPoint num="3" id="193" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="203" >
+<cdparam x="414" y="820" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to choice" value="null" />
+<TGConnectingPoint num="0" id="202" />
+<P1  x="378" y="779" id="425" />
+<P2  x="378" y="819" id="367" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="201" >
+<father id="203" num="0" />
+<cdparam x="391" y="807" />
+<sizeparam width="130" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="197" />
+<TGConnectingPoint num="1" id="198" />
+<TGConnectingPoint num="2" id="199" />
+<TGConnectingPoint num="3" id="200" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="pageid = pageid + 1" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="210" >
+<cdparam x="459" y="979" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="209" />
+<P1  x="385" y="1078" id="999" />
+<P2  x="559" y="1078" id="838" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="208" >
+<father id="210" num="0" />
+<cdparam x="459" y="1019" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="204" />
+<TGConnectingPoint num="1" id="205" />
+<TGConnectingPoint num="2" id="206" />
+<TGConnectingPoint num="3" id="207" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="223" >
+<cdparam x="1046" y="703" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to state0" value="null" />
+<TGConnectingPoint num="0" id="219" />
+<TGConnectingPoint num="1" id="220" />
+<TGConnectingPoint num="2" id="221" />
+<TGConnectingPoint num="3" id="222" />
+<P1  x="1046" y="703" id="662" />
+<P2  x="560" y="295" id="578" />
+<Point x="1046" y="731" />
+<Point x="1153" y="731" />
+<Point x="1153" y="378" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="211" >
+<father id="223" num="0" />
+<cdparam x="1046" y="731" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="212" >
+<father id="223" num="1" />
+<cdparam x="1153" y="731" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="213" >
+<father id="223" num="2" />
+<cdparam x="1153" y="378" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="218" >
+<father id="223" num="3" />
+<cdparam x="1046" y="743" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="214" />
+<TGConnectingPoint num="1" id="215" />
+<TGConnectingPoint num="2" id="216" />
+<TGConnectingPoint num="3" id="217" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="234" >
+<cdparam x="647" y="977" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to state0" value="null" />
+<TGConnectingPoint num="0" id="231" />
+<TGConnectingPoint num="1" id="232" />
+<TGConnectingPoint num="2" id="233" />
+<P1  x="679" y="947" id="545" />
+<P2  x="428" y="709" id="448" />
+<Point x="527" y="823" />
+<Point x="493" y="709" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="224" >
+<father id="234" num="0" />
+<cdparam x="527" y="823" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="225" >
+<father id="234" num="1" />
+<cdparam x="493" y="709" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="230" >
+<father id="234" num="2" />
+<cdparam x="647" y="1017" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="226" />
+<TGConnectingPoint num="1" id="227" />
+<TGConnectingPoint num="2" id="228" />
+<TGConnectingPoint num="3" id="229" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="243" >
+<cdparam x="459" y="427" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to state0" value="null" />
+<TGConnectingPoint num="0" id="241" />
+<TGConnectingPoint num="1" id="242" />
+<P1  x="422" y="361" id="519" />
+<P2  x="735" y="510" id="798" />
+<Point x="735" y="443" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="235" >
+<father id="243" num="0" />
+<cdparam x="735" y="443" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="240" >
+<father id="243" num="1" />
+<cdparam x="591" y="430" />
+<sizeparam width="44" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="236" />
+<TGConnectingPoint num="1" id="237" />
+<TGConnectingPoint num="2" id="238" />
+<TGConnectingPoint num="3" id="239" />
+<extraparam>
+<guard value="[ else ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="254" >
+<cdparam x="459" y="427" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to state0" value="null" />
+<TGConnectingPoint num="0" id="251" />
+<TGConnectingPoint num="1" id="252" />
+<TGConnectingPoint num="2" id="253" />
+<P1  x="397" y="386" id="520" />
+<P2  x="392" y="511" id="480" />
+<Point x="440" y="406" />
+<Point x="441" y="488" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="244" >
+<father id="254" num="0" />
+<cdparam x="440" y="406" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="245" >
+<father id="254" num="1" />
+<cdparam x="441" y="488" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="250" >
+<father id="254" num="2" />
+<cdparam x="350" y="446" />
+<sizeparam width="179" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="246" />
+<TGConnectingPoint num="1" id="247" />
+<TGConnectingPoint num="2" id="248" />
+<TGConnectingPoint num="3" id="249" />
+<extraparam>
+<guard value="[pageid == memory.index3 ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="page.data = memory.data3" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="261" >
+<cdparam x="409" y="427" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to state0" value="null" />
+<TGConnectingPoint num="0" id="260" />
+<P1  x="372" y="361" id="518" />
+<P2  x="276" y="486" id="484" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="259" >
+<father id="261" num="0" />
+<cdparam x="200" y="368" />
+<sizeparam width="179" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="255" />
+<TGConnectingPoint num="1" id="256" />
+<TGConnectingPoint num="2" id="257" />
+<TGConnectingPoint num="3" id="258" />
+<extraparam>
+<guard value="[ pageid == memory.index1]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="page.data = memory.data1" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="268" >
+<cdparam x="766" y="710" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="267" />
+<P1  x="816" y="710" id="703" />
+<P2  x="816" y="762" id="616" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="266" >
+<father id="268" num="0" />
+<cdparam x="766" y="750" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="262" />
+<TGConnectingPoint num="1" id="263" />
+<TGConnectingPoint num="2" id="264" />
+<TGConnectingPoint num="3" id="265" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="275" >
+<cdparam x="760" y="560" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="274" />
+<P1  x="934" y="567" id="808" />
+<P2  x="1046" y="605" id="781" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="273" >
+<father id="275" num="0" />
+<cdparam x="760" y="600" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="269" />
+<TGConnectingPoint num="1" id="270" />
+<TGConnectingPoint num="2" id="271" />
+<TGConnectingPoint num="3" id="272" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="282" >
+<cdparam x="859" y="632" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="281" />
+<P1  x="1046" y="635" id="782" />
+<P2  x="1046" y="653" id="657" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="280" >
+<father id="282" num="0" />
+<cdparam x="859" y="672" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="276" />
+<TGConnectingPoint num="1" id="277" />
+<TGConnectingPoint num="2" id="278" />
+<TGConnectingPoint num="3" id="279" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="289" >
+<cdparam x="428" y="125" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="288" />
+<P1  x="428" y="125" id="779" />
+<P2  x="428" y="166" id="739" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="287" >
+<father id="289" num="0" />
+<cdparam x="428" y="165" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="283" />
+<TGConnectingPoint num="1" id="284" />
+<TGConnectingPoint num="2" id="285" />
+<TGConnectingPoint num="3" id="286" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="296" >
+<cdparam x="428" y="216" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="295" />
+<P1  x="428" y="216" id="744" />
+<P2  x="428" y="223" id="849" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="294" >
+<father id="296" num="0" />
+<cdparam x="428" y="256" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="290" />
+<TGConnectingPoint num="1" id="291" />
+<TGConnectingPoint num="2" id="292" />
+<TGConnectingPoint num="3" id="293" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="303" >
+<cdparam x="428" y="272" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="302" />
+<P1  x="428" y="253" id="850" />
+<P2  x="428" y="270" id="575" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="301" >
+<father id="303" num="0" />
+<cdparam x="428" y="312" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="297" />
+<TGConnectingPoint num="1" id="298" />
+<TGConnectingPoint num="2" id="299" />
+<TGConnectingPoint num="3" id="300" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="310" >
+<cdparam x="685" y="560" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to state0" value="null" />
+<TGConnectingPoint num="0" id="309" />
+<P1  x="864" y="565" id="792" />
+<P2  x="858" y="606" id="794" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="308" >
+<father id="310" num="0" />
+<cdparam x="574" y="578" />
+<sizeparam width="315" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="304" />
+<TGConnectingPoint num="1" id="305" />
+<TGConnectingPoint num="2" id="306" />
+<TGConnectingPoint num="3" id="307" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="minPageLoadingTime" />
+<afterMax value="maxPageLoadingTime" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="317" >
+<cdparam x="714" y="662" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to state0" value="null" />
+<TGConnectingPoint num="0" id="316" />
+<P1  x="858" y="636" id="795" />
+<P2  x="816" y="660" id="698" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="315" >
+<father id="317" num="0" />
+<cdparam x="719" y="648" />
+<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="311" />
+<TGConnectingPoint num="1" id="312" />
+<TGConnectingPoint num="2" id="313" />
+<TGConnectingPoint num="3" id="314" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="page.data = x" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="324" >
+<cdparam x="718" y="868" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to state0" value="null" />
+<TGConnectingPoint num="0" id="323" />
+<P1  x="816" y="804" id="621" />
+<P2  x="816" y="919" id="534" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="322" >
+<father id="324" num="0" />
+<cdparam x="737" y="820" />
+<sizeparam width="206" height="90" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="318" />
+<TGConnectingPoint num="1" id="319" />
+<TGConnectingPoint num="2" id="320" />
+<TGConnectingPoint num="3" id="321" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="memory.index1 = memory.index2" />
+<actions value="memory.data1 = memory.data2" />
+<actions value="memory.index2 = memory.index3" />
+<actions value="memory.data2 = memory.data3" />
+<actions value="memory.index3 = pageid" />
+<actions value="memory.data3 = page.data" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="331" >
+<cdparam x="434" y="368" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to choice" value="null" />
+<TGConnectingPoint num="0" id="330" />
+<P1  x="428" y="320" id="580" />
+<P2  x="397" y="336" id="517" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="329" >
+<father id="331" num="0" />
+<cdparam x="434" y="408" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="325" />
+<TGConnectingPoint num="1" id="326" />
+<TGConnectingPoint num="2" id="327" />
+<TGConnectingPoint num="3" id="328" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="338" >
+<cdparam x="434" y="452" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to state0" value="null" />
+<TGConnectingPoint num="0" id="337" />
+<P1  x="397" y="386" id="523" />
+<P2  x="315" y="486" id="477" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="336" >
+<father id="338" num="0" />
+<cdparam x="272" y="436" />
+<sizeparam width="179" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="332" />
+<TGConnectingPoint num="1" id="333" />
+<TGConnectingPoint num="2" id="334" />
+<TGConnectingPoint num="3" id="335" />
+<extraparam>
+<guard value="[pageid == memory.index2 ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="page.data = memory.data2" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="345" >
+<cdparam x="380" y="628" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to state0" value="null" />
+<TGConnectingPoint num="0" id="344" />
+<P1  x="353" y="536" id="491" />
+<P2  x="353" y="672" id="443" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="343" >
+<father id="345" num="0" />
+<cdparam x="201" y="658" />
+<sizeparam width="356" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="339" />
+<TGConnectingPoint num="1" id="340" />
+<TGConnectingPoint num="2" id="341" />
+<TGConnectingPoint num="3" id="342" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="memoryPageAccessTime" />
+<afterMax value="memoryPageAccessTime" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="352" >
+<cdparam x="456" y="730" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to state0" value="null" />
+<TGConnectingPoint num="0" id="351" />
+<P1  x="378" y="722" id="441" />
+<P2  x="378" y="749" id="424" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="350" >
+<father id="352" num="0" />
+<cdparam x="456" y="770" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="346" />
+<TGConnectingPoint num="1" id="347" />
+<TGConnectingPoint num="2" id="348" />
+<TGConnectingPoint num="3" id="349" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="359" >
+<cdparam x="581" y="1079" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="358" />
+<P1  x="559" y="1108" id="839" />
+<P2  x="559" y="1149" id="391" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="357" >
+<father id="359" num="0" />
+<cdparam x="581" y="1119" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="353" />
+<TGConnectingPoint num="1" id="354" />
+<TGConnectingPoint num="2" id="355" />
+<TGConnectingPoint num="3" id="356" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="366" >
+<cdparam x="384" y="893" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to state0" value="null" />
+<TGConnectingPoint num="0" id="365" />
+<P1  x="378" y="869" id="373" />
+<P2  x="256" y="1028" id="989" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="364" >
+<father id="366" num="0" />
+<cdparam x="26" y="1011" />
+<sizeparam width="910" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="360" />
+<TGConnectingPoint num="1" id="361" />
+<TGConnectingPoint num="2" id="362" />
+<TGConnectingPoint num="3" id="363" />
+<extraparam>
+<guard value="[(pageid &lt; doc.nbOfPages) and  (not(memory.index1 == pageid)) and  (not(memory.index2 == pageid)) and  (not(memory.index3 == pageid))  ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5107" id="382" >
+<cdparam x="363" y="829" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="367" />
+<TGConnectingPoint num="1" id="368" />
+<TGConnectingPoint num="2" id="369" />
+<TGConnectingPoint num="3" id="370" />
+<TGConnectingPoint num="4" id="371" />
+<TGConnectingPoint num="5" id="372" />
+<TGConnectingPoint num="6" id="373" />
+<TGConnectingPoint num="7" id="374" />
+<TGConnectingPoint num="8" id="375" />
+<TGConnectingPoint num="9" id="376" />
+<TGConnectingPoint num="10" id="377" />
+<TGConnectingPoint num="11" id="378" />
+<TGConnectingPoint num="12" id="379" />
+<TGConnectingPoint num="13" id="380" />
+<TGConnectingPoint num="14" id="381" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="423" >
+<cdparam x="487" y="1149" />
+<sizeparam width="289" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="WaitingForPageToLoad" />
+<TGConnectingPoint num="0" id="383" />
+<TGConnectingPoint num="1" id="384" />
+<TGConnectingPoint num="2" id="385" />
+<TGConnectingPoint num="3" id="386" />
+<TGConnectingPoint num="4" id="387" />
+<TGConnectingPoint num="5" id="388" />
+<TGConnectingPoint num="6" id="389" />
+<TGConnectingPoint num="7" id="390" />
+<TGConnectingPoint num="8" id="391" />
+<TGConnectingPoint num="9" id="392" />
+<TGConnectingPoint num="10" id="393" />
+<TGConnectingPoint num="11" id="394" />
+<TGConnectingPoint num="12" id="395" />
+<TGConnectingPoint num="13" id="396" />
+<TGConnectingPoint num="14" id="397" />
+<TGConnectingPoint num="15" id="398" />
+<TGConnectingPoint num="16" id="399" />
+<TGConnectingPoint num="17" id="400" />
+<TGConnectingPoint num="18" id="401" />
+<TGConnectingPoint num="19" id="402" />
+<TGConnectingPoint num="20" id="403" />
+<TGConnectingPoint num="21" id="404" />
+<TGConnectingPoint num="22" id="405" />
+<TGConnectingPoint num="23" id="406" />
+<TGConnectingPoint num="24" id="407" />
+<TGConnectingPoint num="25" id="408" />
+<TGConnectingPoint num="26" id="409" />
+<TGConnectingPoint num="27" id="410" />
+<TGConnectingPoint num="28" id="411" />
+<TGConnectingPoint num="29" id="412" />
+<TGConnectingPoint num="30" id="413" />
+<TGConnectingPoint num="31" id="414" />
+<TGConnectingPoint num="32" id="415" />
+<TGConnectingPoint num="33" id="416" />
+<TGConnectingPoint num="34" id="417" />
+<TGConnectingPoint num="35" id="418" />
+<TGConnectingPoint num="36" id="419" />
+<TGConnectingPoint num="37" id="420" />
+<TGConnectingPoint num="38" id="421" />
+<TGConnectingPoint num="39" id="422" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="434" >
+<cdparam x="317" y="754" />
+<sizeparam width="122" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="Send signal" value="pageReady(page)" />
+<TGConnectingPoint num="0" id="424" />
+<TGConnectingPoint num="1" id="425" />
+<TGConnectingPoint num="2" id="426" />
+<TGConnectingPoint num="3" id="427" />
+<TGConnectingPoint num="4" id="428" />
+<TGConnectingPoint num="5" id="429" />
+<TGConnectingPoint num="6" id="430" />
+<TGConnectingPoint num="7" id="431" />
+<TGConnectingPoint num="8" id="432" />
+<TGConnectingPoint num="9" id="433" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="475" >
+<cdparam x="328" y="672" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="PageReady" />
+<TGConnectingPoint num="0" id="435" />
+<TGConnectingPoint num="1" id="436" />
+<TGConnectingPoint num="2" id="437" />
+<TGConnectingPoint num="3" id="438" />
+<TGConnectingPoint num="4" id="439" />
+<TGConnectingPoint num="5" id="440" />
+<TGConnectingPoint num="6" id="441" />
+<TGConnectingPoint num="7" id="442" />
+<TGConnectingPoint num="8" id="443" />
+<TGConnectingPoint num="9" id="444" />
+<TGConnectingPoint num="10" id="445" />
+<TGConnectingPoint num="11" id="446" />
+<TGConnectingPoint num="12" id="447" />
+<TGConnectingPoint num="13" id="448" />
+<TGConnectingPoint num="14" id="449" />
+<TGConnectingPoint num="15" id="450" />
+<TGConnectingPoint num="16" id="451" />
+<TGConnectingPoint num="17" id="452" />
+<TGConnectingPoint num="18" id="453" />
+<TGConnectingPoint num="19" id="454" />
+<TGConnectingPoint num="20" id="455" />
+<TGConnectingPoint num="21" id="456" />
+<TGConnectingPoint num="22" id="457" />
+<TGConnectingPoint num="23" id="458" />
+<TGConnectingPoint num="24" id="459" />
+<TGConnectingPoint num="25" id="460" />
+<TGConnectingPoint num="26" id="461" />
+<TGConnectingPoint num="27" id="462" />
+<TGConnectingPoint num="28" id="463" />
+<TGConnectingPoint num="29" id="464" />
+<TGConnectingPoint num="30" id="465" />
+<TGConnectingPoint num="31" id="466" />
+<TGConnectingPoint num="32" id="467" />
+<TGConnectingPoint num="33" id="468" />
+<TGConnectingPoint num="34" id="469" />
+<TGConnectingPoint num="35" id="470" />
+<TGConnectingPoint num="36" id="471" />
+<TGConnectingPoint num="37" id="472" />
+<TGConnectingPoint num="38" id="473" />
+<TGConnectingPoint num="39" id="474" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="516" >
+<cdparam x="238" y="486" />
+<sizeparam width="154" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="gotItFromMemory" />
+<TGConnectingPoint num="0" id="476" />
+<TGConnectingPoint num="1" id="477" />
+<TGConnectingPoint num="2" id="478" />
+<TGConnectingPoint num="3" id="479" />
+<TGConnectingPoint num="4" id="480" />
+<TGConnectingPoint num="5" id="481" />
+<TGConnectingPoint num="6" id="482" />
+<TGConnectingPoint num="7" id="483" />
+<TGConnectingPoint num="8" id="484" />
+<TGConnectingPoint num="9" id="485" />
+<TGConnectingPoint num="10" id="486" />
+<TGConnectingPoint num="11" id="487" />
+<TGConnectingPoint num="12" id="488" />
+<TGConnectingPoint num="13" id="489" />
+<TGConnectingPoint num="14" id="490" />
+<TGConnectingPoint num="15" id="491" />
+<TGConnectingPoint num="16" id="492" />
+<TGConnectingPoint num="17" id="493" />
+<TGConnectingPoint num="18" id="494" />
+<TGConnectingPoint num="19" id="495" />
+<TGConnectingPoint num="20" id="496" />
+<TGConnectingPoint num="21" id="497" />
+<TGConnectingPoint num="22" id="498" />
+<TGConnectingPoint num="23" id="499" />
+<TGConnectingPoint num="24" id="500" />
+<TGConnectingPoint num="25" id="501" />
+<TGConnectingPoint num="26" id="502" />
+<TGConnectingPoint num="27" id="503" />
+<TGConnectingPoint num="28" id="504" />
+<TGConnectingPoint num="29" id="505" />
+<TGConnectingPoint num="30" id="506" />
+<TGConnectingPoint num="31" id="507" />
+<TGConnectingPoint num="32" id="508" />
+<TGConnectingPoint num="33" id="509" />
+<TGConnectingPoint num="34" id="510" />
+<TGConnectingPoint num="35" id="511" />
+<TGConnectingPoint num="36" id="512" />
+<TGConnectingPoint num="37" id="513" />
+<TGConnectingPoint num="38" id="514" />
+<TGConnectingPoint num="39" id="515" />
+<invariant />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5107" id="532" >
+<cdparam x="382" y="346" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="517" />
+<TGConnectingPoint num="1" id="518" />
+<TGConnectingPoint num="2" id="519" />
+<TGConnectingPoint num="3" id="520" />
+<TGConnectingPoint num="4" id="521" />
+<TGConnectingPoint num="5" id="522" />
+<TGConnectingPoint num="6" id="523" />
+<TGConnectingPoint num="7" id="524" />
+<TGConnectingPoint num="8" id="525" />
+<TGConnectingPoint num="9" id="526" />
+<TGConnectingPoint num="10" id="527" />
+<TGConnectingPoint num="11" id="528" />
+<TGConnectingPoint num="12" id="529" />
+<TGConnectingPoint num="13" id="530" />
+<TGConnectingPoint num="14" id="531" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="573" >
+<cdparam x="679" y="919" />
+<sizeparam width="274" height="38" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="PutPageInMemoryDone" />
+<TGConnectingPoint num="0" id="533" />
+<TGConnectingPoint num="1" id="534" />
+<TGConnectingPoint num="2" id="535" />
+<TGConnectingPoint num="3" id="536" />
+<TGConnectingPoint num="4" id="537" />
+<TGConnectingPoint num="5" id="538" />
+<TGConnectingPoint num="6" id="539" />
+<TGConnectingPoint num="7" id="540" />
+<TGConnectingPoint num="8" id="541" />
+<TGConnectingPoint num="9" id="542" />
+<TGConnectingPoint num="10" id="543" />
+<TGConnectingPoint num="11" id="544" />
+<TGConnectingPoint num="12" id="545" />
+<TGConnectingPoint num="13" id="546" />
+<TGConnectingPoint num="14" id="547" />
+<TGConnectingPoint num="15" id="548" />
+<TGConnectingPoint num="16" id="549" />
+<TGConnectingPoint num="17" id="550" />
+<TGConnectingPoint num="18" id="551" />
+<TGConnectingPoint num="19" id="552" />
+<TGConnectingPoint num="20" id="553" />
+<TGConnectingPoint num="21" id="554" />
+<TGConnectingPoint num="22" id="555" />
+<TGConnectingPoint num="23" id="556" />
+<TGConnectingPoint num="24" id="557" />
+<TGConnectingPoint num="25" id="558" />
+<TGConnectingPoint num="26" id="559" />
+<TGConnectingPoint num="27" id="560" />
+<TGConnectingPoint num="28" id="561" />
+<TGConnectingPoint num="29" id="562" />
+<TGConnectingPoint num="30" id="563" />
+<TGConnectingPoint num="31" id="564" />
+<TGConnectingPoint num="32" id="565" />
+<TGConnectingPoint num="33" id="566" />
+<TGConnectingPoint num="34" id="567" />
+<TGConnectingPoint num="35" id="568" />
+<TGConnectingPoint num="36" id="569" />
+<TGConnectingPoint num="37" id="570" />
+<TGConnectingPoint num="38" id="571" />
+<TGConnectingPoint num="39" id="572" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="614" >
+<cdparam x="296" y="270" />
+<sizeparam width="264" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="getFromMemory" />
+<TGConnectingPoint num="0" id="574" />
+<TGConnectingPoint num="1" id="575" />
+<TGConnectingPoint num="2" id="576" />
+<TGConnectingPoint num="3" id="577" />
+<TGConnectingPoint num="4" id="578" />
+<TGConnectingPoint num="5" id="579" />
+<TGConnectingPoint num="6" id="580" />
+<TGConnectingPoint num="7" id="581" />
+<TGConnectingPoint num="8" id="582" />
+<TGConnectingPoint num="9" id="583" />
+<TGConnectingPoint num="10" id="584" />
+<TGConnectingPoint num="11" id="585" />
+<TGConnectingPoint num="12" id="586" />
+<TGConnectingPoint num="13" id="587" />
+<TGConnectingPoint num="14" id="588" />
+<TGConnectingPoint num="15" id="589" />
+<TGConnectingPoint num="16" id="590" />
+<TGConnectingPoint num="17" id="591" />
+<TGConnectingPoint num="18" id="592" />
+<TGConnectingPoint num="19" id="593" />
+<TGConnectingPoint num="20" id="594" />
+<TGConnectingPoint num="21" id="595" />
+<TGConnectingPoint num="22" id="596" />
+<TGConnectingPoint num="23" id="597" />
+<TGConnectingPoint num="24" id="598" />
+<TGConnectingPoint num="25" id="599" />
+<TGConnectingPoint num="26" id="600" />
+<TGConnectingPoint num="27" id="601" />
+<TGConnectingPoint num="28" id="602" />
+<TGConnectingPoint num="29" id="603" />
+<TGConnectingPoint num="30" id="604" />
+<TGConnectingPoint num="31" id="605" />
+<TGConnectingPoint num="32" id="606" />
+<TGConnectingPoint num="33" id="607" />
+<TGConnectingPoint num="34" id="608" />
+<TGConnectingPoint num="35" id="609" />
+<TGConnectingPoint num="36" id="610" />
+<TGConnectingPoint num="37" id="611" />
+<TGConnectingPoint num="38" id="612" />
+<TGConnectingPoint num="39" id="613" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="655" >
+<cdparam x="685" y="762" />
+<sizeparam width="263" height="42" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="PutPageInMemory" />
+<TGConnectingPoint num="0" id="615" />
+<TGConnectingPoint num="1" id="616" />
+<TGConnectingPoint num="2" id="617" />
+<TGConnectingPoint num="3" id="618" />
+<TGConnectingPoint num="4" id="619" />
+<TGConnectingPoint num="5" id="620" />
+<TGConnectingPoint num="6" id="621" />
+<TGConnectingPoint num="7" id="622" />
+<TGConnectingPoint num="8" id="623" />
+<TGConnectingPoint num="9" id="624" />
+<TGConnectingPoint num="10" id="625" />
+<TGConnectingPoint num="11" id="626" />
+<TGConnectingPoint num="12" id="627" />
+<TGConnectingPoint num="13" id="628" />
+<TGConnectingPoint num="14" id="629" />
+<TGConnectingPoint num="15" id="630" />
+<TGConnectingPoint num="16" id="631" />
+<TGConnectingPoint num="17" id="632" />
+<TGConnectingPoint num="18" id="633" />
+<TGConnectingPoint num="19" id="634" />
+<TGConnectingPoint num="20" id="635" />
+<TGConnectingPoint num="21" id="636" />
+<TGConnectingPoint num="22" id="637" />
+<TGConnectingPoint num="23" id="638" />
+<TGConnectingPoint num="24" id="639" />
+<TGConnectingPoint num="25" id="640" />
+<TGConnectingPoint num="26" id="641" />
+<TGConnectingPoint num="27" id="642" />
+<TGConnectingPoint num="28" id="643" />
+<TGConnectingPoint num="29" id="644" />
+<TGConnectingPoint num="30" id="645" />
+<TGConnectingPoint num="31" id="646" />
+<TGConnectingPoint num="32" id="647" />
+<TGConnectingPoint num="33" id="648" />
+<TGConnectingPoint num="34" id="649" />
+<TGConnectingPoint num="35" id="650" />
+<TGConnectingPoint num="36" id="651" />
+<TGConnectingPoint num="37" id="652" />
+<TGConnectingPoint num="38" id="653" />
+<TGConnectingPoint num="39" id="654" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="696" >
+<cdparam x="996" y="653" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="Interrupted" />
+<TGConnectingPoint num="0" id="656" />
+<TGConnectingPoint num="1" id="657" />
+<TGConnectingPoint num="2" id="658" />
+<TGConnectingPoint num="3" id="659" />
+<TGConnectingPoint num="4" id="660" />
+<TGConnectingPoint num="5" id="661" />
+<TGConnectingPoint num="6" id="662" />
+<TGConnectingPoint num="7" id="663" />
+<TGConnectingPoint num="8" id="664" />
+<TGConnectingPoint num="9" id="665" />
+<TGConnectingPoint num="10" id="666" />
+<TGConnectingPoint num="11" id="667" />
+<TGConnectingPoint num="12" id="668" />
+<TGConnectingPoint num="13" id="669" />
+<TGConnectingPoint num="14" id="670" />
+<TGConnectingPoint num="15" id="671" />
+<TGConnectingPoint num="16" id="672" />
+<TGConnectingPoint num="17" id="673" />
+<TGConnectingPoint num="18" id="674" />
+<TGConnectingPoint num="19" id="675" />
+<TGConnectingPoint num="20" id="676" />
+<TGConnectingPoint num="21" id="677" />
+<TGConnectingPoint num="22" id="678" />
+<TGConnectingPoint num="23" id="679" />
+<TGConnectingPoint num="24" id="680" />
+<TGConnectingPoint num="25" id="681" />
+<TGConnectingPoint num="26" id="682" />
+<TGConnectingPoint num="27" id="683" />
+<TGConnectingPoint num="28" id="684" />
+<TGConnectingPoint num="29" id="685" />
+<TGConnectingPoint num="30" id="686" />
+<TGConnectingPoint num="31" id="687" />
+<TGConnectingPoint num="32" id="688" />
+<TGConnectingPoint num="33" id="689" />
+<TGConnectingPoint num="34" id="690" />
+<TGConnectingPoint num="35" id="691" />
+<TGConnectingPoint num="36" id="692" />
+<TGConnectingPoint num="37" id="693" />
+<TGConnectingPoint num="38" id="694" />
+<TGConnectingPoint num="39" id="695" />
+<accessibility />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="737" >
+<cdparam x="766" y="660" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="PageLoaded" />
+<TGConnectingPoint num="0" id="697" />
+<TGConnectingPoint num="1" id="698" />
+<TGConnectingPoint num="2" id="699" />
+<TGConnectingPoint num="3" id="700" />
+<TGConnectingPoint num="4" id="701" />
+<TGConnectingPoint num="5" id="702" />
+<TGConnectingPoint num="6" id="703" />
+<TGConnectingPoint num="7" id="704" />
+<TGConnectingPoint num="8" id="705" />
+<TGConnectingPoint num="9" id="706" />
+<TGConnectingPoint num="10" id="707" />
+<TGConnectingPoint num="11" id="708" />
+<TGConnectingPoint num="12" id="709" />
+<TGConnectingPoint num="13" id="710" />
+<TGConnectingPoint num="14" id="711" />
+<TGConnectingPoint num="15" id="712" />
+<TGConnectingPoint num="16" id="713" />
+<TGConnectingPoint num="17" id="714" />
+<TGConnectingPoint num="18" id="715" />
+<TGConnectingPoint num="19" id="716" />
+<TGConnectingPoint num="20" id="717" />
+<TGConnectingPoint num="21" id="718" />
+<TGConnectingPoint num="22" id="719" />
+<TGConnectingPoint num="23" id="720" />
+<TGConnectingPoint num="24" id="721" />
+<TGConnectingPoint num="25" id="722" />
+<TGConnectingPoint num="26" id="723" />
+<TGConnectingPoint num="27" id="724" />
+<TGConnectingPoint num="28" id="725" />
+<TGConnectingPoint num="29" id="726" />
+<TGConnectingPoint num="30" id="727" />
+<TGConnectingPoint num="31" id="728" />
+<TGConnectingPoint num="32" id="729" />
+<TGConnectingPoint num="33" id="730" />
+<TGConnectingPoint num="34" id="731" />
+<TGConnectingPoint num="35" id="732" />
+<TGConnectingPoint num="36" id="733" />
+<TGConnectingPoint num="37" id="734" />
+<TGConnectingPoint num="38" id="735" />
+<TGConnectingPoint num="39" id="736" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="778" >
+<cdparam x="320" y="166" />
+<sizeparam width="217" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="WaitingForPageToLoad" />
+<TGConnectingPoint num="0" id="738" />
+<TGConnectingPoint num="1" id="739" />
+<TGConnectingPoint num="2" id="740" />
+<TGConnectingPoint num="3" id="741" />
+<TGConnectingPoint num="4" id="742" />
+<TGConnectingPoint num="5" id="743" />
+<TGConnectingPoint num="6" id="744" />
+<TGConnectingPoint num="7" id="745" />
+<TGConnectingPoint num="8" id="746" />
+<TGConnectingPoint num="9" id="747" />
+<TGConnectingPoint num="10" id="748" />
+<TGConnectingPoint num="11" id="749" />
+<TGConnectingPoint num="12" id="750" />
+<TGConnectingPoint num="13" id="751" />
+<TGConnectingPoint num="14" id="752" />
+<TGConnectingPoint num="15" id="753" />
+<TGConnectingPoint num="16" id="754" />
+<TGConnectingPoint num="17" id="755" />
+<TGConnectingPoint num="18" id="756" />
+<TGConnectingPoint num="19" id="757" />
+<TGConnectingPoint num="20" id="758" />
+<TGConnectingPoint num="21" id="759" />
+<TGConnectingPoint num="22" id="760" />
+<TGConnectingPoint num="23" id="761" />
+<TGConnectingPoint num="24" id="762" />
+<TGConnectingPoint num="25" id="763" />
+<TGConnectingPoint num="26" id="764" />
+<TGConnectingPoint num="27" id="765" />
+<TGConnectingPoint num="28" id="766" />
+<TGConnectingPoint num="29" id="767" />
+<TGConnectingPoint num="30" id="768" />
+<TGConnectingPoint num="31" id="769" />
+<TGConnectingPoint num="32" id="770" />
+<TGConnectingPoint num="33" id="771" />
+<TGConnectingPoint num="34" id="772" />
+<TGConnectingPoint num="35" id="773" />
+<TGConnectingPoint num="36" id="774" />
+<TGConnectingPoint num="37" id="775" />
+<TGConnectingPoint num="38" id="776" />
+<TGConnectingPoint num="39" id="777" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="780" >
+<cdparam x="421" y="105" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="779" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="791" >
+<cdparam x="966" y="610" />
+<sizeparam width="161" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="Receive signal" value="loadPage(doc, pageid)" />
+<TGConnectingPoint num="0" id="781" />
+<TGConnectingPoint num="1" id="782" />
+<TGConnectingPoint num="2" id="783" />
+<TGConnectingPoint num="3" id="784" />
+<TGConnectingPoint num="4" id="785" />
+<TGConnectingPoint num="5" id="786" />
+<TGConnectingPoint num="6" id="787" />
+<TGConnectingPoint num="7" id="788" />
+<TGConnectingPoint num="8" id="789" />
+<TGConnectingPoint num="9" id="790" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="837" >
+<cdparam x="537" y="510" />
+<sizeparam width="397" height="230" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="LoadingPage" />
+<TGConnectingPoint num="0" id="797" />
+<TGConnectingPoint num="1" id="798" />
+<TGConnectingPoint num="2" id="799" />
+<TGConnectingPoint num="3" id="800" />
+<TGConnectingPoint num="4" id="801" />
+<TGConnectingPoint num="5" id="802" />
+<TGConnectingPoint num="6" id="803" />
+<TGConnectingPoint num="7" id="804" />
+<TGConnectingPoint num="8" id="805" />
+<TGConnectingPoint num="9" id="806" />
+<TGConnectingPoint num="10" id="807" />
+<TGConnectingPoint num="11" id="808" />
+<TGConnectingPoint num="12" id="809" />
+<TGConnectingPoint num="13" id="810" />
+<TGConnectingPoint num="14" id="811" />
+<TGConnectingPoint num="15" id="812" />
+<TGConnectingPoint num="16" id="813" />
+<TGConnectingPoint num="17" id="814" />
+<TGConnectingPoint num="18" id="815" />
+<TGConnectingPoint num="19" id="816" />
+<TGConnectingPoint num="20" id="817" />
+<TGConnectingPoint num="21" id="818" />
+<TGConnectingPoint num="22" id="819" />
+<TGConnectingPoint num="23" id="820" />
+<TGConnectingPoint num="24" id="821" />
+<TGConnectingPoint num="25" id="822" />
+<TGConnectingPoint num="26" id="823" />
+<TGConnectingPoint num="27" id="824" />
+<TGConnectingPoint num="28" id="825" />
+<TGConnectingPoint num="29" id="826" />
+<TGConnectingPoint num="30" id="827" />
+<TGConnectingPoint num="31" id="828" />
+<TGConnectingPoint num="32" id="829" />
+<TGConnectingPoint num="33" id="830" />
+<TGConnectingPoint num="34" id="831" />
+<TGConnectingPoint num="35" id="832" />
+<TGConnectingPoint num="36" id="833" />
+<TGConnectingPoint num="37" id="834" />
+<TGConnectingPoint num="38" id="835" />
+<TGConnectingPoint num="39" id="836" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="5100" id="793" >
+<father id="837" num="0" />
+<cdparam x="857" y="545" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="382" minY="0" maxY="215" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="792" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5108" id="796" >
+<father id="837" num="1" />
+<cdparam x="790" y="611" />
+<sizeparam width="137" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="261" minY="0" maxY="210" />
+<infoparam name="TGComponent" value="null" />
+<TGConnectingPoint num="0" id="794" />
+<TGConnectingPoint num="1" id="795" />
+<extraparam>
+<Data variable="x" minValue="0" maxValue="10" functionId="0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5104" id="848" >
+<cdparam x="479" y="1083" />
+<sizeparam width="161" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="Receive signal" value="loadPage(doc, pageid)" />
+<TGConnectingPoint num="0" id="838" />
+<TGConnectingPoint num="1" id="839" />
+<TGConnectingPoint num="2" id="840" />
+<TGConnectingPoint num="3" id="841" />
+<TGConnectingPoint num="4" id="842" />
+<TGConnectingPoint num="5" id="843" />
+<TGConnectingPoint num="6" id="844" />
+<TGConnectingPoint num="7" id="845" />
+<TGConnectingPoint num="8" id="846" />
+<TGConnectingPoint num="9" id="847" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="859" >
+<cdparam x="348" y="228" />
+<sizeparam width="161" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="Receive signal" value="loadPage(doc, pageid)" />
+<TGConnectingPoint num="0" id="849" />
+<TGConnectingPoint num="1" id="850" />
+<TGConnectingPoint num="2" id="851" />
+<TGConnectingPoint num="3" id="852" />
+<TGConnectingPoint num="4" id="853" />
+<TGConnectingPoint num="5" id="854" />
+<TGConnectingPoint num="6" id="855" />
+<TGConnectingPoint num="7" id="856" />
+<TGConnectingPoint num="8" id="857" />
+<TGConnectingPoint num="9" id="858" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="900" >
+<cdparam x="126" y="1431" />
+<sizeparam width="274" height="38" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="PutPrefetchInMemoryDone" />
+<TGConnectingPoint num="0" id="860" />
+<TGConnectingPoint num="1" id="861" />
+<TGConnectingPoint num="2" id="862" />
+<TGConnectingPoint num="3" id="863" />
+<TGConnectingPoint num="4" id="864" />
+<TGConnectingPoint num="5" id="865" />
+<TGConnectingPoint num="6" id="866" />
+<TGConnectingPoint num="7" id="867" />
+<TGConnectingPoint num="8" id="868" />
+<TGConnectingPoint num="9" id="869" />
+<TGConnectingPoint num="10" id="870" />
+<TGConnectingPoint num="11" id="871" />
+<TGConnectingPoint num="12" id="872" />
+<TGConnectingPoint num="13" id="873" />
+<TGConnectingPoint num="14" id="874" />
+<TGConnectingPoint num="15" id="875" />
+<TGConnectingPoint num="16" id="876" />
+<TGConnectingPoint num="17" id="877" />
+<TGConnectingPoint num="18" id="878" />
+<TGConnectingPoint num="19" id="879" />
+<TGConnectingPoint num="20" id="880" />
+<TGConnectingPoint num="21" id="881" />
+<TGConnectingPoint num="22" id="882" />
+<TGConnectingPoint num="23" id="883" />
+<TGConnectingPoint num="24" id="884" />
+<TGConnectingPoint num="25" id="885" />
+<TGConnectingPoint num="26" id="886" />
+<TGConnectingPoint num="27" id="887" />
+<TGConnectingPoint num="28" id="888" />
+<TGConnectingPoint num="29" id="889" />
+<TGConnectingPoint num="30" id="890" />
+<TGConnectingPoint num="31" id="891" />
+<TGConnectingPoint num="32" id="892" />
+<TGConnectingPoint num="33" id="893" />
+<TGConnectingPoint num="34" id="894" />
+<TGConnectingPoint num="35" id="895" />
+<TGConnectingPoint num="36" id="896" />
+<TGConnectingPoint num="37" id="897" />
+<TGConnectingPoint num="38" id="898" />
+<TGConnectingPoint num="39" id="899" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="941" >
+<cdparam x="132" y="1270" />
+<sizeparam width="263" height="42" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="PutPrefetchInMemory" />
+<TGConnectingPoint num="0" id="901" />
+<TGConnectingPoint num="1" id="902" />
+<TGConnectingPoint num="2" id="903" />
+<TGConnectingPoint num="3" id="904" />
+<TGConnectingPoint num="4" id="905" />
+<TGConnectingPoint num="5" id="906" />
+<TGConnectingPoint num="6" id="907" />
+<TGConnectingPoint num="7" id="908" />
+<TGConnectingPoint num="8" id="909" />
+<TGConnectingPoint num="9" id="910" />
+<TGConnectingPoint num="10" id="911" />
+<TGConnectingPoint num="11" id="912" />
+<TGConnectingPoint num="12" id="913" />
+<TGConnectingPoint num="13" id="914" />
+<TGConnectingPoint num="14" id="915" />
+<TGConnectingPoint num="15" id="916" />
+<TGConnectingPoint num="16" id="917" />
+<TGConnectingPoint num="17" id="918" />
+<TGConnectingPoint num="18" id="919" />
+<TGConnectingPoint num="19" id="920" />
+<TGConnectingPoint num="20" id="921" />
+<TGConnectingPoint num="21" id="922" />
+<TGConnectingPoint num="22" id="923" />
+<TGConnectingPoint num="23" id="924" />
+<TGConnectingPoint num="24" id="925" />
+<TGConnectingPoint num="25" id="926" />
+<TGConnectingPoint num="26" id="927" />
+<TGConnectingPoint num="27" id="928" />
+<TGConnectingPoint num="28" id="929" />
+<TGConnectingPoint num="29" id="930" />
+<TGConnectingPoint num="30" id="931" />
+<TGConnectingPoint num="31" id="932" />
+<TGConnectingPoint num="32" id="933" />
+<TGConnectingPoint num="33" id="934" />
+<TGConnectingPoint num="34" id="935" />
+<TGConnectingPoint num="35" id="936" />
+<TGConnectingPoint num="36" id="937" />
+<TGConnectingPoint num="37" id="938" />
+<TGConnectingPoint num="38" id="939" />
+<TGConnectingPoint num="39" id="940" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5106" id="1028" >
+<cdparam x="127" y="1028" />
+<sizeparam width="258" height="201" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" />
+<infoparam name="state0" value="Prefetching" />
+<TGConnectingPoint num="0" id="988" />
+<TGConnectingPoint num="1" id="989" />
+<TGConnectingPoint num="2" id="990" />
+<TGConnectingPoint num="3" id="991" />
+<TGConnectingPoint num="4" id="992" />
+<TGConnectingPoint num="5" id="993" />
+<TGConnectingPoint num="6" id="994" />
+<TGConnectingPoint num="7" id="995" />
+<TGConnectingPoint num="8" id="996" />
+<TGConnectingPoint num="9" id="997" />
+<TGConnectingPoint num="10" id="998" />
+<TGConnectingPoint num="11" id="999" />
+<TGConnectingPoint num="12" id="1000" />
+<TGConnectingPoint num="13" id="1001" />
+<TGConnectingPoint num="14" id="1002" />
+<TGConnectingPoint num="15" id="1003" />
+<TGConnectingPoint num="16" id="1004" />
+<TGConnectingPoint num="17" id="1005" />
+<TGConnectingPoint num="18" id="1006" />
+<TGConnectingPoint num="19" id="1007" />
+<TGConnectingPoint num="20" id="1008" />
+<TGConnectingPoint num="21" id="1009" />
+<TGConnectingPoint num="22" id="1010" />
+<TGConnectingPoint num="23" id="1011" />
+<TGConnectingPoint num="24" id="1012" />
+<TGConnectingPoint num="25" id="1013" />
+<TGConnectingPoint num="26" id="1014" />
+<TGConnectingPoint num="27" id="1015" />
+<TGConnectingPoint num="28" id="1016" />
+<TGConnectingPoint num="29" id="1017" />
+<TGConnectingPoint num="30" id="1018" />
+<TGConnectingPoint num="31" id="1019" />
+<TGConnectingPoint num="32" id="1020" />
+<TGConnectingPoint num="33" id="1021" />
+<TGConnectingPoint num="34" id="1022" />
+<TGConnectingPoint num="35" id="1023" />
+<TGConnectingPoint num="36" id="1024" />
+<TGConnectingPoint num="37" id="1025" />
+<TGConnectingPoint num="38" id="1026" />
+<TGConnectingPoint num="39" id="1027" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="5100" id="943" >
+<father id="1028" num="0" />
+<cdparam x="249" y="1055" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="243" minY="0" maxY="186" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="942" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5106" id="984" >
+<father id="1028" num="1" />
+<cdparam x="213" y="1155" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="158" minY="0" maxY="151" />
+<infoparam name="state0" value="PagePrefetched" />
+<TGConnectingPoint num="0" id="944" />
+<TGConnectingPoint num="1" id="945" />
+<TGConnectingPoint num="2" id="946" />
+<TGConnectingPoint num="3" id="947" />
+<TGConnectingPoint num="4" id="948" />
+<TGConnectingPoint num="5" id="949" />
+<TGConnectingPoint num="6" id="950" />
+<TGConnectingPoint num="7" id="951" />
+<TGConnectingPoint num="8" id="952" />
+<TGConnectingPoint num="9" id="953" />
+<TGConnectingPoint num="10" id="954" />
+<TGConnectingPoint num="11" id="955" />
+<TGConnectingPoint num="12" id="956" />
+<TGConnectingPoint num="13" id="957" />
+<TGConnectingPoint num="14" id="958" />
+<TGConnectingPoint num="15" id="959" />
+<TGConnectingPoint num="16" id="960" />
+<TGConnectingPoint num="17" id="961" />
+<TGConnectingPoint num="18" id="962" />
+<TGConnectingPoint num="19" id="963" />
+<TGConnectingPoint num="20" id="964" />
+<TGConnectingPoint num="21" id="965" />
+<TGConnectingPoint num="22" id="966" />
+<TGConnectingPoint num="23" id="967" />
+<TGConnectingPoint num="24" id="968" />
+<TGConnectingPoint num="25" id="969" />
+<TGConnectingPoint num="26" id="970" />
+<TGConnectingPoint num="27" id="971" />
+<TGConnectingPoint num="28" id="972" />
+<TGConnectingPoint num="29" id="973" />
+<TGConnectingPoint num="30" id="974" />
+<TGConnectingPoint num="31" id="975" />
+<TGConnectingPoint num="32" id="976" />
+<TGConnectingPoint num="33" id="977" />
+<TGConnectingPoint num="34" id="978" />
+<TGConnectingPoint num="35" id="979" />
+<TGConnectingPoint num="36" id="980" />
+<TGConnectingPoint num="37" id="981" />
+<TGConnectingPoint num="38" id="982" />
+<TGConnectingPoint num="39" id="983" />
+<extraparam>
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="5108" id="987" >
+<father id="1028" num="2" />
+<cdparam x="195" y="1118" />
+<sizeparam width="137" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="228" minY="0" maxY="181" />
+<infoparam name="TGComponent" value="null" />
+<TGConnectingPoint num="0" id="985" />
+<TGConnectingPoint num="1" id="986" />
+<extraparam>
+<Data variable="x" minValue="0" maxValue="10" functionId="0" />
+</extraparam>
+</SUBCOMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="UserModel" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="1035" >
+<cdparam x="460" y="447" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1034" />
+<P1  x="460" y="447" id="1186" />
+<P2  x="460" y="456" id="1174" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1033" >
+<father id="1035" num="0" />
+<cdparam x="478" y="456" />
+<sizeparam width="68" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1029" />
+<TGConnectingPoint num="1" id="1030" />
+<TGConnectingPoint num="2" id="1031" />
+<TGConnectingPoint num="3" id="1032" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="100" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1042" >
+<cdparam x="460" y="405" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1041" />
+<P1  x="460" y="405" id="1164" />
+<P2  x="460" y="417" id="1185" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1040" >
+<father id="1042" num="0" />
+<cdparam x="472" y="417" />
+<sizeparam width="68" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1036" />
+<TGConnectingPoint num="1" id="1037" />
+<TGConnectingPoint num="2" id="1038" />
+<TGConnectingPoint num="3" id="1039" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="100" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1049" >
+<cdparam x="458" y="358" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1048" />
+<P1  x="458" y="358" id="1153" />
+<P2  x="460" y="375" id="1163" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1047" >
+<father id="1049" num="0" />
+<cdparam x="479" y="374" />
+<sizeparam width="68" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1043" />
+<TGConnectingPoint num="1" id="1044" />
+<TGConnectingPoint num="2" id="1045" />
+<TGConnectingPoint num="3" id="1046" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="100" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1056" >
+<cdparam x="448" y="147" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="1055" />
+<P1  x="434" y="106" id="1150" />
+<P2  x="457" y="160" id="1110" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1054" >
+<father id="1056" num="0" />
+<cdparam x="448" y="187" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1050" />
+<TGConnectingPoint num="1" id="1051" />
+<TGConnectingPoint num="2" id="1052" />
+<TGConnectingPoint num="3" id="1053" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1063" >
+<cdparam x="457" y="240" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1062" />
+<P1  x="457" y="225" id="1115" />
+<P2  x="457" y="281" id="1098" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1061" >
+<father id="1063" num="0" />
+<cdparam x="488" y="245" />
+<sizeparam width="139" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1057" />
+<TGConnectingPoint num="1" id="1058" />
+<TGConnectingPoint num="2" id="1059" />
+<TGConnectingPoint num="3" id="1060" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="doc1.id = 1" />
+<actions value="doc1.nbOfPages = 5" />
+<actions value="doc1.currentPage = 2" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1070" >
+<cdparam x="457" y="311" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1069" />
+<P1  x="457" y="311" id="1099" />
+<P2  x="458" y="328" id="1152" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1068" >
+<father id="1070" num="0" />
+<cdparam x="474" y="327" />
+<sizeparam width="68" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1064" />
+<TGConnectingPoint num="1" id="1065" />
+<TGConnectingPoint num="2" id="1066" />
+<TGConnectingPoint num="3" id="1067" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="100" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1077" >
+<cdparam x="460" y="486" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1076" />
+<P1  x="460" y="486" id="1175" />
+<P2  x="460" y="534" id="1087" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1075" >
+<father id="1077" num="0" />
+<cdparam x="473" y="504" />
+<sizeparam width="68" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1071" />
+<TGConnectingPoint num="1" id="1072" />
+<TGConnectingPoint num="2" id="1073" />
+<TGConnectingPoint num="3" id="1074" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="250" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="index = 1" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1084" >
+<cdparam x="460" y="564" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to stop state" value="null" />
+<TGConnectingPoint num="0" id="1083" />
+<P1  x="460" y="564" id="1088" />
+<P2  x="461" y="584" id="1085" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1082" >
+<father id="1084" num="0" />
+<cdparam x="460" y="604" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1078" />
+<TGConnectingPoint num="1" id="1079" />
+<TGConnectingPoint num="2" id="1080" />
+<TGConnectingPoint num="3" id="1081" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5101" id="1086" >
+<cdparam x="451" y="589" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1085" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="1097" >
+<cdparam x="402" y="539" />
+<sizeparam width="116" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="goToPage(index)" />
+<TGConnectingPoint num="0" id="1087" />
+<TGConnectingPoint num="1" id="1088" />
+<TGConnectingPoint num="2" id="1089" />
+<TGConnectingPoint num="3" id="1090" />
+<TGConnectingPoint num="4" id="1091" />
+<TGConnectingPoint num="5" id="1092" />
+<TGConnectingPoint num="6" id="1093" />
+<TGConnectingPoint num="7" id="1094" />
+<TGConnectingPoint num="8" id="1095" />
+<TGConnectingPoint num="9" id="1096" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="1108" >
+<cdparam x="384" y="286" />
+<sizeparam width="147" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="openDocument(doc1)" />
+<TGConnectingPoint num="0" id="1098" />
+<TGConnectingPoint num="1" id="1099" />
+<TGConnectingPoint num="2" id="1100" />
+<TGConnectingPoint num="3" id="1101" />
+<TGConnectingPoint num="4" id="1102" />
+<TGConnectingPoint num="5" id="1103" />
+<TGConnectingPoint num="6" id="1104" />
+<TGConnectingPoint num="7" id="1105" />
+<TGConnectingPoint num="8" id="1106" />
+<TGConnectingPoint num="9" id="1107" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1149" >
+<cdparam x="319" y="160" />
+<sizeparam width="276" height="65" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="firstDoc" />
+<TGConnectingPoint num="0" id="1109" />
+<TGConnectingPoint num="1" id="1110" />
+<TGConnectingPoint num="2" id="1111" />
+<TGConnectingPoint num="3" id="1112" />
+<TGConnectingPoint num="4" id="1113" />
+<TGConnectingPoint num="5" id="1114" />
+<TGConnectingPoint num="6" id="1115" />
+<TGConnectingPoint num="7" id="1116" />
+<TGConnectingPoint num="8" id="1117" />
+<TGConnectingPoint num="9" id="1118" />
+<TGConnectingPoint num="10" id="1119" />
+<TGConnectingPoint num="11" id="1120" />
+<TGConnectingPoint num="12" id="1121" />
+<TGConnectingPoint num="13" id="1122" />
+<TGConnectingPoint num="14" id="1123" />
+<TGConnectingPoint num="15" id="1124" />
+<TGConnectingPoint num="16" id="1125" />
+<TGConnectingPoint num="17" id="1126" />
+<TGConnectingPoint num="18" id="1127" />
+<TGConnectingPoint num="19" id="1128" />
+<TGConnectingPoint num="20" id="1129" />
+<TGConnectingPoint num="21" id="1130" />
+<TGConnectingPoint num="22" id="1131" />
+<TGConnectingPoint num="23" id="1132" />
+<TGConnectingPoint num="24" id="1133" />
+<TGConnectingPoint num="25" id="1134" />
+<TGConnectingPoint num="26" id="1135" />
+<TGConnectingPoint num="27" id="1136" />
+<TGConnectingPoint num="28" id="1137" />
+<TGConnectingPoint num="29" id="1138" />
+<TGConnectingPoint num="30" id="1139" />
+<TGConnectingPoint num="31" id="1140" />
+<TGConnectingPoint num="32" id="1141" />
+<TGConnectingPoint num="33" id="1142" />
+<TGConnectingPoint num="34" id="1143" />
+<TGConnectingPoint num="35" id="1144" />
+<TGConnectingPoint num="36" id="1145" />
+<TGConnectingPoint num="37" id="1146" />
+<TGConnectingPoint num="38" id="1147" />
+<TGConnectingPoint num="39" id="1148" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="1151" >
+<cdparam x="427" y="86" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1150" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="1162" >
+<cdparam x="409" y="333" />
+<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="flipNextPage()" />
+<TGConnectingPoint num="0" id="1152" />
+<TGConnectingPoint num="1" id="1153" />
+<TGConnectingPoint num="2" id="1154" />
+<TGConnectingPoint num="3" id="1155" />
+<TGConnectingPoint num="4" id="1156" />
+<TGConnectingPoint num="5" id="1157" />
+<TGConnectingPoint num="6" id="1158" />
+<TGConnectingPoint num="7" id="1159" />
+<TGConnectingPoint num="8" id="1160" />
+<TGConnectingPoint num="9" id="1161" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="1173" >
+<cdparam x="411" y="380" />
+<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="flipNextPage()" />
+<TGConnectingPoint num="0" id="1163" />
+<TGConnectingPoint num="1" id="1164" />
+<TGConnectingPoint num="2" id="1165" />
+<TGConnectingPoint num="3" id="1166" />
+<TGConnectingPoint num="4" id="1167" />
+<TGConnectingPoint num="5" id="1168" />
+<TGConnectingPoint num="6" id="1169" />
+<TGConnectingPoint num="7" id="1170" />
+<TGConnectingPoint num="8" id="1171" />
+<TGConnectingPoint num="9" id="1172" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="1184" >
+<cdparam x="411" y="461" />
+<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="flipNextPage()" />
+<TGConnectingPoint num="0" id="1174" />
+<TGConnectingPoint num="1" id="1175" />
+<TGConnectingPoint num="2" id="1176" />
+<TGConnectingPoint num="3" id="1177" />
+<TGConnectingPoint num="4" id="1178" />
+<TGConnectingPoint num="5" id="1179" />
+<TGConnectingPoint num="6" id="1180" />
+<TGConnectingPoint num="7" id="1181" />
+<TGConnectingPoint num="8" id="1182" />
+<TGConnectingPoint num="9" id="1183" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="1195" >
+<cdparam x="411" y="422" />
+<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Send signal" value="flipNextPage()" />
+<TGConnectingPoint num="0" id="1185" />
+<TGConnectingPoint num="1" id="1186" />
+<TGConnectingPoint num="2" id="1187" />
+<TGConnectingPoint num="3" id="1188" />
+<TGConnectingPoint num="4" id="1189" />
+<TGConnectingPoint num="5" id="1190" />
+<TGConnectingPoint num="6" id="1191" />
+<TGConnectingPoint num="7" id="1192" />
+<TGConnectingPoint num="8" id="1193" />
+<TGConnectingPoint num="9" id="1194" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="DisplayDriver" minX="10" maxX="1400" minY="10" maxY="900" >
+<CONNECTOR type="5102" id="1208" >
+<cdparam x="400" y="247" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1204" />
+<TGConnectingPoint num="1" id="1205" />
+<TGConnectingPoint num="2" id="1206" />
+<TGConnectingPoint num="3" id="1207" />
+<P1  x="400" y="247" id="1224" />
+<P2  x="295" y="167" id="1237" />
+<Point x="400" y="312" />
+<Point x="250" y="312" />
+<Point x="250" y="167" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1196" >
+<father id="1208" num="0" />
+<cdparam x="400" y="312" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1197" >
+<father id="1208" num="1" />
+<cdparam x="250" y="312" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1198" >
+<father id="1208" num="2" />
+<cdparam x="250" y="167" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1203" >
+<father id="1208" num="3" />
+<cdparam x="410" y="275" />
+<sizeparam width="112" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1199" />
+<TGConnectingPoint num="1" id="1200" />
+<TGConnectingPoint num="2" id="1201" />
+<TGConnectingPoint num="3" id="1202" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="20" />
+<afterMax value="40" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="data = page.data" />
+<actions value="printPage(data)" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1215" >
+<cdparam x="398" y="95" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="1214" />
+<P1  x="398" y="95" id="1275" />
+<P2  x="399" y="142" id="1235" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1213" >
+<father id="1215" num="0" />
+<cdparam x="398" y="135" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1209" />
+<TGConnectingPoint num="1" id="1210" />
+<TGConnectingPoint num="2" id="1211" />
+<TGConnectingPoint num="3" id="1212" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1222" >
+<cdparam x="399" y="192" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="1221" />
+<P1  x="399" y="192" id="1240" />
+<P2  x="400" y="217" id="1223" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1220" >
+<father id="1222" num="0" />
+<cdparam x="399" y="232" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1216" />
+<TGConnectingPoint num="1" id="1217" />
+<TGConnectingPoint num="2" id="1218" />
+<TGConnectingPoint num="3" id="1219" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5104" id="1233" >
+<cdparam x="333" y="222" />
+<sizeparam width="135" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Receive signal" value="displayPage(page)" />
+<TGConnectingPoint num="0" id="1223" />
+<TGConnectingPoint num="1" id="1224" />
+<TGConnectingPoint num="2" id="1225" />
+<TGConnectingPoint num="3" id="1226" />
+<TGConnectingPoint num="4" id="1227" />
+<TGConnectingPoint num="5" id="1228" />
+<TGConnectingPoint num="6" id="1229" />
+<TGConnectingPoint num="7" id="1230" />
+<TGConnectingPoint num="8" id="1231" />
+<TGConnectingPoint num="9" id="1232" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1274" >
+<cdparam x="295" y="142" />
+<sizeparam width="209" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="state0" value="WaitingForPageToDisplay" />
+<TGConnectingPoint num="0" id="1234" />
+<TGConnectingPoint num="1" id="1235" />
+<TGConnectingPoint num="2" id="1236" />
+<TGConnectingPoint num="3" id="1237" />
+<TGConnectingPoint num="4" id="1238" />
+<TGConnectingPoint num="5" id="1239" />
+<TGConnectingPoint num="6" id="1240" />
+<TGConnectingPoint num="7" id="1241" />
+<TGConnectingPoint num="8" id="1242" />
+<TGConnectingPoint num="9" id="1243" />
+<TGConnectingPoint num="10" id="1244" />
+<TGConnectingPoint num="11" id="1245" />
+<TGConnectingPoint num="12" id="1246" />
+<TGConnectingPoint num="13" id="1247" />
+<TGConnectingPoint num="14" id="1248" />
+<TGConnectingPoint num="15" id="1249" />
+<TGConnectingPoint num="16" id="1250" />
+<TGConnectingPoint num="17" id="1251" />
+<TGConnectingPoint num="18" id="1252" />
+<TGConnectingPoint num="19" id="1253" />
+<TGConnectingPoint num="20" id="1254" />
+<TGConnectingPoint num="21" id="1255" />
+<TGConnectingPoint num="22" id="1256" />
+<TGConnectingPoint num="23" id="1257" />
+<TGConnectingPoint num="24" id="1258" />
+<TGConnectingPoint num="25" id="1259" />
+<TGConnectingPoint num="26" id="1260" />
+<TGConnectingPoint num="27" id="1261" />
+<TGConnectingPoint num="28" id="1262" />
+<TGConnectingPoint num="29" id="1263" />
+<TGConnectingPoint num="30" id="1264" />
+<TGConnectingPoint num="31" id="1265" />
+<TGConnectingPoint num="32" id="1266" />
+<TGConnectingPoint num="33" id="1267" />
+<TGConnectingPoint num="34" id="1268" />
+<TGConnectingPoint num="35" id="1269" />
+<TGConnectingPoint num="36" id="1270" />
+<TGConnectingPoint num="37" id="1271" />
+<TGConnectingPoint num="38" id="1272" />
+<TGConnectingPoint num="39" id="1273" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="1276" >
+<cdparam x="391" y="75" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1275" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="EReaderController" minX="10" maxX="1400" minY="10" maxY="1400" >
+<CONNECTOR type="5102" id="1283" >
+<cdparam x="828" y="336" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1282" />
+<P1  x="809" y="327" id="1645" />
+<P2  x="682" y="361" id="1607" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1281" >
+<father id="1283" num="0" />
+<cdparam x="828" y="376" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1277" />
+<TGConnectingPoint num="1" id="1278" />
+<TGConnectingPoint num="2" id="1279" />
+<TGConnectingPoint num="3" id="1280" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1294" >
+<cdparam x="870" y="518" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="1291" />
+<TGConnectingPoint num="1" id="1292" />
+<TGConnectingPoint num="2" id="1293" />
+<P1  x="870" y="481" id="1553" />
+<P2  x="809" y="297" id="1644" />
+<Point x="965" y="368" />
+<Point x="965" y="273" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1284" >
+<father id="1294" num="0" />
+<cdparam x="965" y="368" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1285" >
+<father id="1294" num="1" />
+<cdparam x="965" y="273" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1290" >
+<father id="1294" num="2" />
+<cdparam x="870" y="558" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1286" />
+<TGConnectingPoint num="1" id="1287" />
+<TGConnectingPoint num="2" id="1288" />
+<TGConnectingPoint num="3" id="1289" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1301" >
+<cdparam x="870" y="493" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="1300" />
+<P1  x="870" y="506" id="1555" />
+<P2  x="998" y="530" id="1655" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1299" >
+<father id="1301" num="0" />
+<cdparam x="870" y="533" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1295" />
+<TGConnectingPoint num="1" id="1296" />
+<TGConnectingPoint num="2" id="1297" />
+<TGConnectingPoint num="3" id="1298" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1308" >
+<cdparam x="556" y="222" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1307" />
+<P1  x="556" y="222" id="1667" />
+<P2  x="575" y="336" id="1604" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1306" >
+<father id="1308" num="0" />
+<cdparam x="556" y="262" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1302" />
+<TGConnectingPoint num="1" id="1303" />
+<TGConnectingPoint num="2" id="1304" />
+<TGConnectingPoint num="3" id="1305" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1321" >
+<cdparam x="800" y="680" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to state0" value="null" />
+<TGConnectingPoint num="0" id="1317" />
+<TGConnectingPoint num="1" id="1318" />
+<TGConnectingPoint num="2" id="1319" />
+<TGConnectingPoint num="3" id="1320" />
+<P1  x="800" y="680" id="1515" />
+<P2  x="870" y="531" id="1558" />
+<Point x="836" y="703" />
+<Point x="894" y="703" />
+<Point x="894" y="558" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1309" >
+<father id="1321" num="0" />
+<cdparam x="836" y="703" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1310" >
+<father id="1321" num="1" />
+<cdparam x="894" y="703" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1311" >
+<father id="1321" num="2" />
+<cdparam x="894" y="558" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1316" >
+<father id="1321" num="3" />
+<cdparam x="852" y="669" />
+<sizeparam width="44" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1312" />
+<TGConnectingPoint num="1" id="1313" />
+<TGConnectingPoint num="2" id="1314" />
+<TGConnectingPoint num="3" id="1315" />
+<extraparam>
+<guard value="[ else ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1328" >
+<cdparam x="750" y="680" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to state0" value="null" />
+<TGConnectingPoint num="0" id="1327" />
+<P1  x="750" y="680" id="1514" />
+<P2  x="604" y="748" id="1481" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1326" >
+<father id="1328" num="0" />
+<cdparam x="492" y="725" />
+<sizeparam width="448" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1322" />
+<TGConnectingPoint num="1" id="1323" />
+<TGConnectingPoint num="2" id="1324" />
+<TGConnectingPoint num="3" id="1325" />
+<extraparam>
+<guard value="[(currentPage &gt; 0) and (currentPage &lt; currentDocument.nbOfPages) ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="currentDocument.currentPage = currentPage" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1335" >
+<cdparam x="775" y="611" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1334" />
+<P1  x="754" y="614" id="1530" />
+<P2  x="775" y="655" id="1513" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1333" >
+<father id="1335" num="0" />
+<cdparam x="604" y="727" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1329" />
+<TGConnectingPoint num="1" id="1330" />
+<TGConnectingPoint num="2" id="1331" />
+<TGConnectingPoint num="3" id="1332" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1342" >
+<cdparam x="722" y="531" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="1341" />
+<P1  x="722" y="531" id="1566" />
+<P2  x="754" y="584" id="1529" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1340" >
+<father id="1342" num="0" />
+<cdparam x="722" y="571" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1336" />
+<TGConnectingPoint num="1" id="1337" />
+<TGConnectingPoint num="2" id="1338" />
+<TGConnectingPoint num="3" id="1339" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1349" >
+<cdparam x="612" y="624" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1348" />
+<P1  x="575" y="615" id="1541" />
+<P2  x="540" y="748" id="1473" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1347" >
+<father id="1349" num="0" />
+<cdparam x="448" y="646" />
+<sizeparam width="428" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1343" />
+<TGConnectingPoint num="1" id="1344" />
+<TGConnectingPoint num="2" id="1345" />
+<TGConnectingPoint num="3" id="1346" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="currentDocument.currentPage = currentDocument.currentPage + 1" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1356" >
+<cdparam x="575" y="531" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="1355" />
+<P1  x="575" y="531" id="1557" />
+<P2  x="575" y="585" id="1540" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1354" >
+<father id="1356" num="0" />
+<cdparam x="580" y="551" />
+<sizeparam width="163" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1350" />
+<TGConnectingPoint num="1" id="1351" />
+<TGConnectingPoint num="2" id="1352" />
+<TGConnectingPoint num="3" id="1353" />
+<extraparam>
+<guard value="[ not(currentPage == 0) ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<filesToIncludeLine value="" />
+<codeToIncludeLine value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1363" >
+<cdparam x="427" y="615" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1362" />
+<P1  x="427" y="615" id="1462" />
+<P2  x="476" y="748" id="1480" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1361" >
+<father id="1363" num="0" />
+<cdparam x="292" y="682" />
+<sizeparam width="428" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1357" />
+<TGConnectingPoint num="1" id="1358" />
+<TGConnectingPoint num="2" id="1359" />
+<TGConnectingPoint num="3" id="1360" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="currentDocument.currentPage = currentDocument.currentPage + 1" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1370" >
+<cdparam x="408" y="540" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="1369" />
+<P1  x="427" y="531" id="1565" />
+<P2  x="427" y="585" id="1461" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1368" >
+<father id="1370" num="0" />
+<cdparam x="284" y="574" />
+<sizeparam width="292" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1364" />
+<TGConnectingPoint num="1" id="1365" />
+<TGConnectingPoint num="2" id="1366" />
+<TGConnectingPoint num="3" id="1367" />
+<extraparam>
+<guard value="[currentPage &lt; currentDocument.nbOfPages ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1383" >
+<cdparam x="277" y="657" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1379" />
+<TGConnectingPoint num="1" id="1380" />
+<TGConnectingPoint num="2" id="1381" />
+<TGConnectingPoint num="3" id="1382" />
+<P1  x="269" y="647" id="1440" />
+<P2  x="280" y="506" id="1554" />
+<Point x="269" y="676" />
+<Point x="186" y="676" />
+<Point x="186" y="515" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1371" >
+<father id="1383" num="0" />
+<cdparam x="269" y="676" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1372" >
+<father id="1383" num="1" />
+<cdparam x="186" y="676" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1373" >
+<father id="1383" num="2" />
+<cdparam x="186" y="515" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1378" >
+<father id="1383" num="3" />
+<cdparam x="255" y="697" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1374" />
+<TGConnectingPoint num="1" id="1375" />
+<TGConnectingPoint num="2" id="1376" />
+<TGConnectingPoint num="3" id="1377" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1390" >
+<cdparam x="306" y="622" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1389" />
+<P1  x="269" y="595" id="1451" />
+<P2  x="269" y="617" id="1439" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1388" >
+<father id="1390" num="0" />
+<cdparam x="306" y="662" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1384" />
+<TGConnectingPoint num="1" id="1385" />
+<TGConnectingPoint num="2" id="1386" />
+<TGConnectingPoint num="3" id="1387" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1397" >
+<cdparam x="366" y="547" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="1396" />
+<P1  x="280" y="531" id="1556" />
+<P2  x="269" y="565" id="1450" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1395" >
+<father id="1397" num="0" />
+<cdparam x="366" y="587" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1391" />
+<TGConnectingPoint num="1" id="1392" />
+<TGConnectingPoint num="2" id="1393" />
+<TGConnectingPoint num="3" id="1394" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1404" >
+<cdparam x="408" y="468" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Send signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1403" />
+<P1  x="575" y="455" id="1593" />
+<P2  x="575" y="481" id="1552" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1402" >
+<father id="1404" num="0" />
+<cdparam x="408" y="508" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1398" />
+<TGConnectingPoint num="1" id="1399" />
+<TGConnectingPoint num="2" id="1400" />
+<TGConnectingPoint num="3" id="1401" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1411" >
+<cdparam x="408" y="397" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Send signal" value="null" />
+<TGConnectingPoint num="0" id="1410" />
+<P1  x="575" y="386" id="1609" />
+<P2  x="575" y="425" id="1592" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1409" >
+<father id="1411" num="0" />
+<cdparam x="607" y="405" />
+<sizeparam width="288" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1405" />
+<TGConnectingPoint num="1" id="1406" />
+<TGConnectingPoint num="2" id="1407" />
+<TGConnectingPoint num="3" id="1408" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="currentPage = currentDocument.currentPage" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1418" >
+<cdparam x="565" y="76" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to state0" value="null" />
+<TGConnectingPoint num="0" id="1417" />
+<P1  x="556" y="87" id="1718" />
+<P2  x="556" y="128" id="1678" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1416" >
+<father id="1418" num="0" />
+<cdparam x="565" y="116" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1412" />
+<TGConnectingPoint num="1" id="1413" />
+<TGConnectingPoint num="2" id="1414" />
+<TGConnectingPoint num="3" id="1415" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1425" >
+<cdparam x="565" y="171" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from state0 to Receive signal" value="null" />
+<TGConnectingPoint num="0" id="1424" />
+<P1  x="556" y="178" id="1683" />
+<P2  x="556" y="192" id="1666" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1423" >
+<father id="1425" num="0" />
+<cdparam x="565" y="211" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1419" />
+<TGConnectingPoint num="1" id="1420" />
+<TGConnectingPoint num="2" id="1421" />
+<TGConnectingPoint num="3" id="1422" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="1438" >
+<cdparam x="747" y="421" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Receive signal to state0" value="null" />
+<TGConnectingPoint num="0" id="1434" />
+<TGConnectingPoint num="1" id="1435" />
+<TGConnectingPoint num="2" id="1436" />
+<TGConnectingPoint num="3" id="1437" />
+<P1  x="998" y="560" id="1656" />
+<P2  x="625" y="153" id="1681" />
+<Point x="1075" y="569" />
+<Point x="1080" y="272" />
+<Point x="882" y="153" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1426" >
+<father id="1438" num="0" />
+<cdparam x="1075" y="569" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1427" >
+<father id="1438" num="1" />
+<cdparam x="1080" y="272" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1428" >
+<father id="1438" num="2" />
+<cdparam x="882" y="153" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1433" >
+<father id="1438" num="3" />
+<cdparam x="747" y="461" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="1429" />
+<TGConnectingPoint num="1" id="1430" />
+<TGConnectingPoint num="2" id="1431" />
+<TGConnectingPoint num="3" id="1432" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="1449" >
+<cdparam x="206" y="622" />
+<sizeparam width="127" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Send signal" value="displayPage(page)" />
+<TGConnectingPoint num="0" id="1439" />
+<TGConnectingPoint num="1" id="1440" />
+<TGConnectingPoint num="2" id="1441" />
+<TGConnectingPoint num="3" id="1442" />
+<TGConnectingPoint num="4" id="1443" />
+<TGConnectingPoint num="5" id="1444" />
+<TGConnectingPoint num="6" id="1445" />
+<TGConnectingPoint num="7" id="1446" />
+<TGConnectingPoint num="8" id="1447" />
+<TGConnectingPoint num="9" id="1448" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="1460" >
+<cdparam x="213" y="570" />
+<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="getPage(page)" />
+<TGConnectingPoint num="0" id="1450" />
+<TGConnectingPoint num="1" id="1451" />
+<TGConnectingPoint num="2" id="1452" />
+<TGConnectingPoint num="3" id="1453" />
+<TGConnectingPoint num="4" id="1454" />
+<TGConnectingPoint num="5" id="1455" />
+<TGConnectingPoint num="6" id="1456" />
+<TGConnectingPoint num="7" id="1457" />
+<TGConnectingPoint num="8" id="1458" />
+<TGConnectingPoint num="9" id="1459" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="1471" >
+<cdparam x="374" y="590" />
+<sizeparam width="106" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="flipNextPage()" />
+<TGConnectingPoint num="0" id="1461" />
+<TGConnectingPoint num="1" id="1462" />
+<TGConnectingPoint num="2" id="1463" />
+<TGConnectingPoint num="3" id="1464" />
+<TGConnectingPoint num="4" id="1465" />
+<TGConnectingPoint num="5" id="1466" />
+<TGConnectingPoint num="6" id="1467" />
+<TGConnectingPoint num="7" id="1468" />
+<TGConnectingPoint num="8" id="1469" />
+<TGConnectingPoint num="9" id="1470" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1512" >
+<cdparam x="412" y="748" />
+<sizeparam width="256" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="PageLoadingManagement" />
+<TGConnectingPoint num="0" id="1472" />
+<TGConnectingPoint num="1" id="1473" />
+<TGConnectingPoint num="2" id="1474" />
+<TGConnectingPoint num="3" id="1475" />
+<TGConnectingPoint num="4" id="1476" />
+<TGConnectingPoint num="5" id="1477" />
+<TGConnectingPoint num="6" id="1478" />
+<TGConnectingPoint num="7" id="1479" />
+<TGConnectingPoint num="8" id="1480" />
+<TGConnectingPoint num="9" id="1481" />
+<TGConnectingPoint num="10" id="1482" />
+<TGConnectingPoint num="11" id="1483" />
+<TGConnectingPoint num="12" id="1484" />
+<TGConnectingPoint num="13" id="1485" />
+<TGConnectingPoint num="14" id="1486" />
+<TGConnectingPoint num="15" id="1487" />
+<TGConnectingPoint num="16" id="1488" />
+<TGConnectingPoint num="17" id="1489" />
+<TGConnectingPoint num="18" id="1490" />
+<TGConnectingPoint num="19" id="1491" />
+<TGConnectingPoint num="20" id="1492" />
+<TGConnectingPoint num="21" id="1493" />
+<TGConnectingPoint num="22" id="1494" />
+<TGConnectingPoint num="23" id="1495" />
+<TGConnectingPoint num="24" id="1496" />
+<TGConnectingPoint num="25" id="1497" />
+<TGConnectingPoint num="26" id="1498" />
+<TGConnectingPoint num="27" id="1499" />
+<TGConnectingPoint num="28" id="1500" />
+<TGConnectingPoint num="29" id="1501" />
+<TGConnectingPoint num="30" id="1502" />
+<TGConnectingPoint num="31" id="1503" />
+<TGConnectingPoint num="32" id="1504" />
+<TGConnectingPoint num="33" id="1505" />
+<TGConnectingPoint num="34" id="1506" />
+<TGConnectingPoint num="35" id="1507" />
+<TGConnectingPoint num="36" id="1508" />
+<TGConnectingPoint num="37" id="1509" />
+<TGConnectingPoint num="38" id="1510" />
+<TGConnectingPoint num="39" id="1511" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5107" id="1528" >
+<cdparam x="760" y="665" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="1513" />
+<TGConnectingPoint num="1" id="1514" />
+<TGConnectingPoint num="2" id="1515" />
+<TGConnectingPoint num="3" id="1516" />
+<TGConnectingPoint num="4" id="1517" />
+<TGConnectingPoint num="5" id="1518" />
+<TGConnectingPoint num="6" id="1519" />
+<TGConnectingPoint num="7" id="1520" />
+<TGConnectingPoint num="8" id="1521" />
+<TGConnectingPoint num="9" id="1522" />
+<TGConnectingPoint num="10" id="1523" />
+<TGConnectingPoint num="11" id="1524" />
+<TGConnectingPoint num="12" id="1525" />
+<TGConnectingPoint num="13" id="1526" />
+<TGConnectingPoint num="14" id="1527" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="1539" >
+<cdparam x="670" y="589" />
+<sizeparam width="169" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="goToPage(currentPage)" />
+<TGConnectingPoint num="0" id="1529" />
+<TGConnectingPoint num="1" id="1530" />
+<TGConnectingPoint num="2" id="1531" />
+<TGConnectingPoint num="3" id="1532" />
+<TGConnectingPoint num="4" id="1533" />
+<TGConnectingPoint num="5" id="1534" />
+<TGConnectingPoint num="6" id="1535" />
+<TGConnectingPoint num="7" id="1536" />
+<TGConnectingPoint num="8" id="1537" />
+<TGConnectingPoint num="9" id="1538" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="1550" >
+<cdparam x="510" y="590" />
+<sizeparam width="131" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="flipPreviousPage()" />
+<TGConnectingPoint num="0" id="1540" />
+<TGConnectingPoint num="1" id="1541" />
+<TGConnectingPoint num="2" id="1542" />
+<TGConnectingPoint num="3" id="1543" />
+<TGConnectingPoint num="4" id="1544" />
+<TGConnectingPoint num="5" id="1545" />
+<TGConnectingPoint num="6" id="1546" />
+<TGConnectingPoint num="7" id="1547" />
+<TGConnectingPoint num="8" id="1548" />
+<TGConnectingPoint num="9" id="1549" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1591" >
+<cdparam x="280" y="481" />
+<sizeparam width="590" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForPageBeingLoadedOrUserEvent" />
+<TGConnectingPoint num="0" id="1551" />
+<TGConnectingPoint num="1" id="1552" />
+<TGConnectingPoint num="2" id="1553" />
+<TGConnectingPoint num="3" id="1554" />
+<TGConnectingPoint num="4" id="1555" />
+<TGConnectingPoint num="5" id="1556" />
+<TGConnectingPoint num="6" id="1557" />
+<TGConnectingPoint num="7" id="1558" />
+<TGConnectingPoint num="8" id="1559" />
+<TGConnectingPoint num="9" id="1560" />
+<TGConnectingPoint num="10" id="1561" />
+<TGConnectingPoint num="11" id="1562" />
+<TGConnectingPoint num="12" id="1563" />
+<TGConnectingPoint num="13" id="1564" />
+<TGConnectingPoint num="14" id="1565" />
+<TGConnectingPoint num="15" id="1566" />
+<TGConnectingPoint num="16" id="1567" />
+<TGConnectingPoint num="17" id="1568" />
+<TGConnectingPoint num="18" id="1569" />
+<TGConnectingPoint num="19" id="1570" />
+<TGConnectingPoint num="20" id="1571" />
+<TGConnectingPoint num="21" id="1572" />
+<TGConnectingPoint num="22" id="1573" />
+<TGConnectingPoint num="23" id="1574" />
+<TGConnectingPoint num="24" id="1575" />
+<TGConnectingPoint num="25" id="1576" />
+<TGConnectingPoint num="26" id="1577" />
+<TGConnectingPoint num="27" id="1578" />
+<TGConnectingPoint num="28" id="1579" />
+<TGConnectingPoint num="29" id="1580" />
+<TGConnectingPoint num="30" id="1581" />
+<TGConnectingPoint num="31" id="1582" />
+<TGConnectingPoint num="32" id="1583" />
+<TGConnectingPoint num="33" id="1584" />
+<TGConnectingPoint num="34" id="1585" />
+<TGConnectingPoint num="35" id="1586" />
+<TGConnectingPoint num="36" id="1587" />
+<TGConnectingPoint num="37" id="1588" />
+<TGConnectingPoint num="38" id="1589" />
+<TGConnectingPoint num="39" id="1590" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5103" id="1602" >
+<cdparam x="438" y="430" />
+<sizeparam width="275" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Send signal" value="loadPage(currentDocument, currentPage)" />
+<TGConnectingPoint num="0" id="1592" />
+<TGConnectingPoint num="1" id="1593" />
+<TGConnectingPoint num="2" id="1594" />
+<TGConnectingPoint num="3" id="1595" />
+<TGConnectingPoint num="4" id="1596" />
+<TGConnectingPoint num="5" id="1597" />
+<TGConnectingPoint num="6" id="1598" />
+<TGConnectingPoint num="7" id="1599" />
+<TGConnectingPoint num="8" id="1600" />
+<TGConnectingPoint num="9" id="1601" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1643" >
+<cdparam x="468" y="336" />
+<sizeparam width="214" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="PageLoadingManagement" />
+<TGConnectingPoint num="0" id="1603" />
+<TGConnectingPoint num="1" id="1604" />
+<TGConnectingPoint num="2" id="1605" />
+<TGConnectingPoint num="3" id="1606" />
+<TGConnectingPoint num="4" id="1607" />
+<TGConnectingPoint num="5" id="1608" />
+<TGConnectingPoint num="6" id="1609" />
+<TGConnectingPoint num="7" id="1610" />
+<TGConnectingPoint num="8" id="1611" />
+<TGConnectingPoint num="9" id="1612" />
+<TGConnectingPoint num="10" id="1613" />
+<TGConnectingPoint num="11" id="1614" />
+<TGConnectingPoint num="12" id="1615" />
+<TGConnectingPoint num="13" id="1616" />
+<TGConnectingPoint num="14" id="1617" />
+<TGConnectingPoint num="15" id="1618" />
+<TGConnectingPoint num="16" id="1619" />
+<TGConnectingPoint num="17" id="1620" />
+<TGConnectingPoint num="18" id="1621" />
+<TGConnectingPoint num="19" id="1622" />
+<TGConnectingPoint num="20" id="1623" />
+<TGConnectingPoint num="21" id="1624" />
+<TGConnectingPoint num="22" id="1625" />
+<TGConnectingPoint num="23" id="1626" />
+<TGConnectingPoint num="24" id="1627" />
+<TGConnectingPoint num="25" id="1628" />
+<TGConnectingPoint num="26" id="1629" />
+<TGConnectingPoint num="27" id="1630" />
+<TGConnectingPoint num="28" id="1631" />
+<TGConnectingPoint num="29" id="1632" />
+<TGConnectingPoint num="30" id="1633" />
+<TGConnectingPoint num="31" id="1634" />
+<TGConnectingPoint num="32" id="1635" />
+<TGConnectingPoint num="33" id="1636" />
+<TGConnectingPoint num="34" id="1637" />
+<TGConnectingPoint num="35" id="1638" />
+<TGConnectingPoint num="36" id="1639" />
+<TGConnectingPoint num="37" id="1640" />
+<TGConnectingPoint num="38" id="1641" />
+<TGConnectingPoint num="39" id="1642" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5104" id="1654" >
+<cdparam x="692" y="302" />
+<sizeparam width="234" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="openDocument(currentDocument)" />
+<TGConnectingPoint num="0" id="1644" />
+<TGConnectingPoint num="1" id="1645" />
+<TGConnectingPoint num="2" id="1646" />
+<TGConnectingPoint num="3" id="1647" />
+<TGConnectingPoint num="4" id="1648" />
+<TGConnectingPoint num="5" id="1649" />
+<TGConnectingPoint num="6" id="1650" />
+<TGConnectingPoint num="7" id="1651" />
+<TGConnectingPoint num="8" id="1652" />
+<TGConnectingPoint num="9" id="1653" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="1665" >
+<cdparam x="967" y="535" />
+<sizeparam width="63" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="home()" />
+<TGConnectingPoint num="0" id="1655" />
+<TGConnectingPoint num="1" id="1656" />
+<TGConnectingPoint num="2" id="1657" />
+<TGConnectingPoint num="3" id="1658" />
+<TGConnectingPoint num="4" id="1659" />
+<TGConnectingPoint num="5" id="1660" />
+<TGConnectingPoint num="6" id="1661" />
+<TGConnectingPoint num="7" id="1662" />
+<TGConnectingPoint num="8" id="1663" />
+<TGConnectingPoint num="9" id="1664" />
+</COMPONENT>
+
+<COMPONENT type="5104" id="1676" >
+<cdparam x="439" y="197" />
+<sizeparam width="234" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="Receive signal" value="openDocument(currentDocument)" />
+<TGConnectingPoint num="0" id="1666" />
+<TGConnectingPoint num="1" id="1667" />
+<TGConnectingPoint num="2" id="1668" />
+<TGConnectingPoint num="3" id="1669" />
+<TGConnectingPoint num="4" id="1670" />
+<TGConnectingPoint num="5" id="1671" />
+<TGConnectingPoint num="6" id="1672" />
+<TGConnectingPoint num="7" id="1673" />
+<TGConnectingPoint num="8" id="1674" />
+<TGConnectingPoint num="9" id="1675" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="1717" >
+<cdparam x="488" y="128" />
+<sizeparam width="137" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="state0" value="WaitingForDocument" />
+<TGConnectingPoint num="0" id="1677" />
+<TGConnectingPoint num="1" id="1678" />
+<TGConnectingPoint num="2" id="1679" />
+<TGConnectingPoint num="3" id="1680" />
+<TGConnectingPoint num="4" id="1681" />
+<TGConnectingPoint num="5" id="1682" />
+<TGConnectingPoint num="6" id="1683" />
+<TGConnectingPoint num="7" id="1684" />
+<TGConnectingPoint num="8" id="1685" />
+<TGConnectingPoint num="9" id="1686" />
+<TGConnectingPoint num="10" id="1687" />
+<TGConnectingPoint num="11" id="1688" />
+<TGConnectingPoint num="12" id="1689" />
+<TGConnectingPoint num="13" id="1690" />
+<TGConnectingPoint num="14" id="1691" />
+<TGConnectingPoint num="15" id="1692" />
+<TGConnectingPoint num="16" id="1693" />
+<TGConnectingPoint num="17" id="1694" />
+<TGConnectingPoint num="18" id="1695" />
+<TGConnectingPoint num="19" id="1696" />
+<TGConnectingPoint num="20" id="1697" />
+<TGConnectingPoint num="21" id="1698" />
+<TGConnectingPoint num="22" id="1699" />
+<TGConnectingPoint num="23" id="1700" />
+<TGConnectingPoint num="24" id="1701" />
+<TGConnectingPoint num="25" id="1702" />
+<TGConnectingPoint num="26" id="1703" />
+<TGConnectingPoint num="27" id="1704" />
+<TGConnectingPoint num="28" id="1705" />
+<TGConnectingPoint num="29" id="1706" />
+<TGConnectingPoint num="30" id="1707" />
+<TGConnectingPoint num="31" id="1708" />
+<TGConnectingPoint num="32" id="1709" />
+<TGConnectingPoint num="33" id="1710" />
+<TGConnectingPoint num="34" id="1711" />
+<TGConnectingPoint num="35" id="1712" />
+<TGConnectingPoint num="36" id="1713" />
+<TGConnectingPoint num="37" id="1714" />
+<TGConnectingPoint num="38" id="1715" />
+<TGConnectingPoint num="39" id="1716" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="1719" >
+<cdparam x="549" y="67" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1718" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+</Modeling>
+
+
+
+
+</TURTLEGMODELING>
\ No newline at end of file
diff --git a/ttool/src/test/resources/ui/diagram2avatar/input/exampleFunctionCall.xml b/ttool/src/test/resources/ui/diagram2avatar/input/exampleFunctionCall.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5b50e31e36d50f2a653e3537551e462e4f98a7a3
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2avatar/input/exampleFunctionCall.xml
@@ -0,0 +1,1500 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<TURTLEGMODELING version="0.98-beta4">
+
+<Modeling type="AVATAR Design" nameTab="Design" >
+<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="2500" minY="10" maxY="1500" >
+<MainCode value="void __user_init() {"/>
+<MainCode value="}"/>
+<Optimized value="true" />
+<Validated value="" />
+<Ignored value="" />
+
+<CONNECTOR type="5002" id="2" >
+<cdparam x="289" y="131" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="" />
+<TGConnectingPoint num="0" id="1" />
+<P1  x="288" y="129" id="76" />
+<P2  x="451" y="138" id="50" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in chin(int v)" />
+<osd value="out chout(int v)" />
+<isd value="in chin(int v)" />
+<oso value="out chout(int v)" />
+<FIFOType asynchronous="false" size="1" blocking="false" private="false" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<COMPONENT type="302" id="19" >
+<cdparam x="351" y="389" />
+<sizeparam width="375" height="97" minWidth="80" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Proverif Pragma" value="#InitialSystemKnowledge Bob.skey Alice.skey
+#InitialSystemKnowledge Bob.secretData Alice.secretData
+#Confidentiality Bob.secretData
+" />
+<TGConnectingPoint num="0" id="3" />
+<TGConnectingPoint num="1" id="4" />
+<TGConnectingPoint num="2" id="5" />
+<TGConnectingPoint num="3" id="6" />
+<TGConnectingPoint num="4" id="7" />
+<TGConnectingPoint num="5" id="8" />
+<TGConnectingPoint num="6" id="9" />
+<TGConnectingPoint num="7" id="10" />
+<TGConnectingPoint num="8" id="11" />
+<TGConnectingPoint num="9" id="12" />
+<TGConnectingPoint num="10" id="13" />
+<TGConnectingPoint num="11" id="14" />
+<TGConnectingPoint num="12" id="15" />
+<TGConnectingPoint num="13" id="16" />
+<TGConnectingPoint num="14" id="17" />
+<TGConnectingPoint num="15" id="18" />
+<extraparam>
+<Line value="#InitialSystemKnowledge Bob.skey Alice.skey" />
+<Line value="#InitialSystemKnowledge Bob.secretData Alice.secretData" />
+<Line value="#Confidentiality Bob.secretData" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5003" id="28" >
+<cdparam x="622" y="271" />
+<sizeparam width="250" height="68" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="DataType0" value="Key" />
+<TGConnectingPoint num="0" id="20" />
+<TGConnectingPoint num="1" id="21" />
+<TGConnectingPoint num="2" id="22" />
+<TGConnectingPoint num="3" id="23" />
+<TGConnectingPoint num="4" id="24" />
+<TGConnectingPoint num="5" id="25" />
+<TGConnectingPoint num="6" id="26" />
+<TGConnectingPoint num="7" id="27" />
+<extraparam>
+<Attribute access="0" id="data" value="" type="8" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5003" id="37" >
+<cdparam x="345" y="273" />
+<sizeparam width="250" height="68" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="DataType0" value="Message" />
+<TGConnectingPoint num="0" id="29" />
+<TGConnectingPoint num="1" id="30" />
+<TGConnectingPoint num="2" id="31" />
+<TGConnectingPoint num="3" id="32" />
+<TGConnectingPoint num="4" id="33" />
+<TGConnectingPoint num="5" id="34" />
+<TGConnectingPoint num="6" id="35" />
+<TGConnectingPoint num="7" id="36" />
+<extraparam>
+<Attribute access="0" id="data" value="" type="8" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5005" id="46" >
+<cdparam x="89" y="278" />
+<sizeparam width="160" height="144" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="SendReceiveMessage" value="SendReceiveMessage" />
+<TGConnectingPoint num="0" id="38" />
+<TGConnectingPoint num="1" id="39" />
+<TGConnectingPoint num="2" id="40" />
+<TGConnectingPoint num="3" id="41" />
+<TGConnectingPoint num="4" id="42" />
+<TGConnectingPoint num="5" id="43" />
+<TGConnectingPoint num="6" id="44" />
+<TGConnectingPoint num="7" id="45" />
+<extraparam>
+<CryptoLibraryFunction value="false" />
+<Parameter access="0" id="msg" value="" type="5" typeOther="Message" />
+<Parameter access="0" id="key" value="" type="5" typeOther="Key" />
+<Signal value="in inch(int v)" />
+<Signal value="out outch(int v)" />
+<ReturnAttribute access="0" id="msgRet" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="d" value="" type="8" typeOther="" />
+<Attribute access="0" id="dummy" value="" type="5" typeOther="Message" />
+<Method value="Message sencrypt(Message msg, Key k)" />
+<Method value="Message sdecrypt(Message msg, Key k)" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="71" >
+<cdparam x="451" y="38" />
+<sizeparam width="250" height="200" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Block1" value="Alice" />
+<TGConnectingPoint num="0" id="47" />
+<TGConnectingPoint num="1" id="48" />
+<TGConnectingPoint num="2" id="49" />
+<TGConnectingPoint num="3" id="50" />
+<TGConnectingPoint num="4" id="51" />
+<TGConnectingPoint num="5" id="52" />
+<TGConnectingPoint num="6" id="53" />
+<TGConnectingPoint num="7" id="54" />
+<TGConnectingPoint num="8" id="55" />
+<TGConnectingPoint num="9" id="56" />
+<TGConnectingPoint num="10" id="57" />
+<TGConnectingPoint num="11" id="58" />
+<TGConnectingPoint num="12" id="59" />
+<TGConnectingPoint num="13" id="60" />
+<TGConnectingPoint num="14" id="61" />
+<TGConnectingPoint num="15" id="62" />
+<TGConnectingPoint num="16" id="63" />
+<TGConnectingPoint num="17" id="64" />
+<TGConnectingPoint num="18" id="65" />
+<TGConnectingPoint num="19" id="66" />
+<TGConnectingPoint num="20" id="67" />
+<TGConnectingPoint num="21" id="68" />
+<TGConnectingPoint num="22" id="69" />
+<TGConnectingPoint num="23" id="70" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="send" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="recv" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="skey" value="" type="5" typeOther="Key" />
+<Attribute access="0" id="secretData" value="" type="8" typeOther="" />
+<Signal value="in chin(int v)" />
+<Signal value="out chout(int v)" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="96" >
+<cdparam x="38" y="44" />
+<sizeparam width="250" height="170" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Block0" value="Bob" />
+<TGConnectingPoint num="0" id="72" />
+<TGConnectingPoint num="1" id="73" />
+<TGConnectingPoint num="2" id="74" />
+<TGConnectingPoint num="3" id="75" />
+<TGConnectingPoint num="4" id="76" />
+<TGConnectingPoint num="5" id="77" />
+<TGConnectingPoint num="6" id="78" />
+<TGConnectingPoint num="7" id="79" />
+<TGConnectingPoint num="8" id="80" />
+<TGConnectingPoint num="9" id="81" />
+<TGConnectingPoint num="10" id="82" />
+<TGConnectingPoint num="11" id="83" />
+<TGConnectingPoint num="12" id="84" />
+<TGConnectingPoint num="13" id="85" />
+<TGConnectingPoint num="14" id="86" />
+<TGConnectingPoint num="15" id="87" />
+<TGConnectingPoint num="16" id="88" />
+<TGConnectingPoint num="17" id="89" />
+<TGConnectingPoint num="18" id="90" />
+<TGConnectingPoint num="19" id="91" />
+<TGConnectingPoint num="20" id="92" />
+<TGConnectingPoint num="21" id="93" />
+<TGConnectingPoint num="22" id="94" />
+<TGConnectingPoint num="23" id="95" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="send" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="recv" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="skey" value="" type="5" typeOther="Key" />
+<Attribute access="0" id="secretData" value="" type="8" typeOther="" />
+<Signal value="in chin(int v)" />
+<Signal value="out chout(int v)" />
+</extraparam>
+</COMPONENT>
+
+
+</AVATARBlockDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="SendReceiveMessage" minX="10" maxX="2500" minY="10" maxY="1500" >
+<CONNECTOR type="5102" id="103" >
+<cdparam x="388" y="143" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="102" />
+<P1  x="388" y="143" id="132" />
+<P2  x="388" y="205" id="118" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="101" >
+<father id="103" num="0" />
+<cdparam x="388" y="183" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="97" />
+<TGConnectingPoint num="1" id="98" />
+<TGConnectingPoint num="2" id="99" />
+<TGConnectingPoint num="3" id="100" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="110" >
+<cdparam x="416" y="149" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="109" />
+<P1  x="388" y="235" id="119" />
+<P2  x="409" y="305" id="129" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="108" >
+<father id="110" num="0" />
+<cdparam x="420" y="262" />
+<sizeparam width="202" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="104" />
+<TGConnectingPoint num="1" id="105" />
+<TGConnectingPoint num="2" id="106" />
+<TGConnectingPoint num="3" id="107" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="dummy.data = d" />
+<actions value="msgRet = sdecrypt(dummy, key)" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="117" >
+<cdparam x="407" y="70" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="116" />
+<P1  x="407" y="70" id="142" />
+<P2  x="388" y="113" id="131" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="115" >
+<father id="117" num="0" />
+<cdparam x="423" y="87" />
+<sizeparam width="181" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="111" />
+<TGConnectingPoint num="1" id="112" />
+<TGConnectingPoint num="2" id="113" />
+<TGConnectingPoint num="3" id="114" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="dummy = sencrypt(msg, key)" />
+<actions value="d = dummy.data" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5104" id="128" >
+<cdparam x="357" y="210" />
+<sizeparam width="62" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Receive signal" value="inch(d)" />
+<TGConnectingPoint num="0" id="118" />
+<TGConnectingPoint num="1" id="119" />
+<TGConnectingPoint num="2" id="120" />
+<TGConnectingPoint num="3" id="121" />
+<TGConnectingPoint num="4" id="122" />
+<TGConnectingPoint num="5" id="123" />
+<TGConnectingPoint num="6" id="124" />
+<TGConnectingPoint num="7" id="125" />
+<TGConnectingPoint num="8" id="126" />
+<TGConnectingPoint num="9" id="127" />
+</COMPONENT>
+
+<COMPONENT type="5101" id="130" >
+<cdparam x="399" y="310" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="129" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="141" >
+<cdparam x="356" y="118" />
+<sizeparam width="64" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Send signal" value="outch(d)" />
+<TGConnectingPoint num="0" id="131" />
+<TGConnectingPoint num="1" id="132" />
+<TGConnectingPoint num="2" id="133" />
+<TGConnectingPoint num="3" id="134" />
+<TGConnectingPoint num="4" id="135" />
+<TGConnectingPoint num="5" id="136" />
+<TGConnectingPoint num="6" id="137" />
+<TGConnectingPoint num="7" id="138" />
+<TGConnectingPoint num="8" id="139" />
+<TGConnectingPoint num="9" id="140" />
+</COMPONENT>
+
+<COMPONENT type="5100" id="143" >
+<cdparam x="400" y="50" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="142" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Alice" minX="10" maxX="2500" minY="10" maxY="1500" >
+<CONNECTOR type="5102" id="150" >
+<cdparam x="407" y="70" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="149" />
+<P1  x="407" y="70" id="219" />
+<P2  x="525" y="118" id="208" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="148" >
+<father id="150" num="0" />
+<cdparam x="489" y="81" />
+<sizeparam width="152" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="144" />
+<TGConnectingPoint num="1" id="145" />
+<TGConnectingPoint num="2" id="146" />
+<TGConnectingPoint num="3" id="147" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="send.data = secretData" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="157" >
+<cdparam x="426" y="161" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="156" />
+<P1  x="525" y="161" id="209" />
+<P2  x="429" y="199" id="167" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="155" >
+<father id="157" num="0" />
+<cdparam x="426" y="201" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="151" />
+<TGConnectingPoint num="1" id="152" />
+<TGConnectingPoint num="2" id="153" />
+<TGConnectingPoint num="3" id="154" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="164" >
+<cdparam x="479" y="249" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="163" />
+<P1  x="479" y="249" id="173" />
+<P2  x="480" y="281" id="165" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="162" >
+<father id="164" num="0" />
+<cdparam x="479" y="289" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="158" />
+<TGConnectingPoint num="1" id="159" />
+<TGConnectingPoint num="2" id="160" />
+<TGConnectingPoint num="3" id="161" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5101" id="166" >
+<cdparam x="470" y="286" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="165" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="207" >
+<cdparam x="429" y="199" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="State" value="state0" />
+<TGConnectingPoint num="0" id="167" />
+<TGConnectingPoint num="1" id="168" />
+<TGConnectingPoint num="2" id="169" />
+<TGConnectingPoint num="3" id="170" />
+<TGConnectingPoint num="4" id="171" />
+<TGConnectingPoint num="5" id="172" />
+<TGConnectingPoint num="6" id="173" />
+<TGConnectingPoint num="7" id="174" />
+<TGConnectingPoint num="8" id="175" />
+<TGConnectingPoint num="9" id="176" />
+<TGConnectingPoint num="10" id="177" />
+<TGConnectingPoint num="11" id="178" />
+<TGConnectingPoint num="12" id="179" />
+<TGConnectingPoint num="13" id="180" />
+<TGConnectingPoint num="14" id="181" />
+<TGConnectingPoint num="15" id="182" />
+<TGConnectingPoint num="16" id="183" />
+<TGConnectingPoint num="17" id="184" />
+<TGConnectingPoint num="18" id="185" />
+<TGConnectingPoint num="19" id="186" />
+<TGConnectingPoint num="20" id="187" />
+<TGConnectingPoint num="21" id="188" />
+<TGConnectingPoint num="22" id="189" />
+<TGConnectingPoint num="23" id="190" />
+<TGConnectingPoint num="24" id="191" />
+<TGConnectingPoint num="25" id="192" />
+<TGConnectingPoint num="26" id="193" />
+<TGConnectingPoint num="27" id="194" />
+<TGConnectingPoint num="28" id="195" />
+<TGConnectingPoint num="29" id="196" />
+<TGConnectingPoint num="30" id="197" />
+<TGConnectingPoint num="31" id="198" />
+<TGConnectingPoint num="32" id="199" />
+<TGConnectingPoint num="33" id="200" />
+<TGConnectingPoint num="34" id="201" />
+<TGConnectingPoint num="35" id="202" />
+<TGConnectingPoint num="36" id="203" />
+<TGConnectingPoint num="37" id="204" />
+<TGConnectingPoint num="38" id="205" />
+<TGConnectingPoint num="39" id="206" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5112" id="218" >
+<cdparam x="376" y="123" />
+<sizeparam width="298" height="33" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Library function call" value="recv = SendReceiveMessage (send, skey)" />
+<TGConnectingPoint num="0" id="208" />
+<TGConnectingPoint num="1" id="209" />
+<TGConnectingPoint num="2" id="210" />
+<TGConnectingPoint num="3" id="211" />
+<TGConnectingPoint num="4" id="212" />
+<TGConnectingPoint num="5" id="213" />
+<TGConnectingPoint num="6" id="214" />
+<TGConnectingPoint num="7" id="215" />
+<TGConnectingPoint num="8" id="216" />
+<TGConnectingPoint num="9" id="217" />
+<extraparam>
+<LibraryFunction name="SendReceiveMessage" />
+<Parameter id="send" />
+<Parameter id="skey" />
+<Signal value="in chin(int v)" />
+<Signal value="out chout(int v)" />
+<ReturnAttribute id="recv" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="220" >
+<cdparam x="400" y="50" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="219" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Bob" minX="10" maxX="2500" minY="10" maxY="1500" >
+<CONNECTOR type="5102" id="227" >
+<cdparam x="407" y="70" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="226" />
+<P1  x="407" y="70" id="296" />
+<P2  x="534" y="130" id="285" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="225" >
+<father id="227" num="0" />
+<cdparam x="495" y="86" />
+<sizeparam width="152" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="221" />
+<TGConnectingPoint num="1" id="222" />
+<TGConnectingPoint num="2" id="223" />
+<TGConnectingPoint num="3" id="224" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="send.data = secretData" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="234" >
+<cdparam x="423" y="173" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="233" />
+<P1  x="534" y="173" id="286" />
+<P2  x="435" y="259" id="244" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="232" >
+<father id="234" num="0" />
+<cdparam x="509" y="214" />
+<sizeparam width="175" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="228" />
+<TGConnectingPoint num="1" id="229" />
+<TGConnectingPoint num="2" id="230" />
+<TGConnectingPoint num="3" id="231" />
+<extraparam>
+<guard value="[ recv.data == secretData ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="241" >
+<cdparam x="472" y="309" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="240" />
+<P1  x="472" y="309" id="273" />
+<P2  x="467" y="336" id="242" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="239" >
+<father id="241" num="0" />
+<cdparam x="472" y="349" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="235" />
+<TGConnectingPoint num="1" id="236" />
+<TGConnectingPoint num="2" id="237" />
+<TGConnectingPoint num="3" id="238" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5101" id="243" >
+<cdparam x="457" y="341" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="242" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="284" >
+<cdparam x="435" y="259" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="State" value="state0" />
+<TGConnectingPoint num="0" id="244" />
+<TGConnectingPoint num="1" id="245" />
+<TGConnectingPoint num="2" id="246" />
+<TGConnectingPoint num="3" id="247" />
+<TGConnectingPoint num="4" id="248" />
+<TGConnectingPoint num="5" id="249" />
+<TGConnectingPoint num="6" id="250" />
+<TGConnectingPoint num="7" id="251" />
+<TGConnectingPoint num="8" id="252" />
+<TGConnectingPoint num="9" id="253" />
+<TGConnectingPoint num="10" id="254" />
+<TGConnectingPoint num="11" id="255" />
+<TGConnectingPoint num="12" id="256" />
+<TGConnectingPoint num="13" id="257" />
+<TGConnectingPoint num="14" id="258" />
+<TGConnectingPoint num="15" id="259" />
+<TGConnectingPoint num="16" id="260" />
+<TGConnectingPoint num="17" id="261" />
+<TGConnectingPoint num="18" id="262" />
+<TGConnectingPoint num="19" id="263" />
+<TGConnectingPoint num="20" id="264" />
+<TGConnectingPoint num="21" id="265" />
+<TGConnectingPoint num="22" id="266" />
+<TGConnectingPoint num="23" id="267" />
+<TGConnectingPoint num="24" id="268" />
+<TGConnectingPoint num="25" id="269" />
+<TGConnectingPoint num="26" id="270" />
+<TGConnectingPoint num="27" id="271" />
+<TGConnectingPoint num="28" id="272" />
+<TGConnectingPoint num="29" id="273" />
+<TGConnectingPoint num="30" id="274" />
+<TGConnectingPoint num="31" id="275" />
+<TGConnectingPoint num="32" id="276" />
+<TGConnectingPoint num="33" id="277" />
+<TGConnectingPoint num="34" id="278" />
+<TGConnectingPoint num="35" id="279" />
+<TGConnectingPoint num="36" id="280" />
+<TGConnectingPoint num="37" id="281" />
+<TGConnectingPoint num="38" id="282" />
+<TGConnectingPoint num="39" id="283" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5112" id="295" >
+<cdparam x="373" y="135" />
+<sizeparam width="323" height="33" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Library function call" value="recv = SendReceiveMessage (send, skey)" />
+<TGConnectingPoint num="0" id="285" />
+<TGConnectingPoint num="1" id="286" />
+<TGConnectingPoint num="2" id="287" />
+<TGConnectingPoint num="3" id="288" />
+<TGConnectingPoint num="4" id="289" />
+<TGConnectingPoint num="5" id="290" />
+<TGConnectingPoint num="6" id="291" />
+<TGConnectingPoint num="7" id="292" />
+<TGConnectingPoint num="8" id="293" />
+<TGConnectingPoint num="9" id="294" />
+<extraparam>
+<LibraryFunction name="SendReceiveMessage" />
+<Parameter id="send" />
+<Parameter id="skey" />
+<Signal value="in chin(int v)" />
+<Signal value="out chout(int v)" />
+<ReturnAttribute id="recv" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="297" >
+<cdparam x="400" y="50" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="296" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="AVATAR Design" nameTab="DesignNonConfidential" >
+<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="2500" minY="10" maxY="1500" >
+<MainCode value="void __user_init() {"/>
+<MainCode value="}"/>
+<Optimized value="true" />
+<Validated value="SendReceiveMessage;Alice;Bob;" />
+<Ignored value="" />
+
+<CONNECTOR type="5002" id="299" >
+<cdparam x="289" y="131" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="" />
+<TGConnectingPoint num="0" id="298" />
+<P1  x="288" y="129" id="373" />
+<P2  x="466" y="136" id="347" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<iso value="in chin(int v)" />
+<osd value="out chout(int v)" />
+<isd value="in chin(int v)" />
+<oso value="out chout(int v)" />
+<FIFOType asynchronous="false" size="1" blocking="false" private="false" broadcast="false" lossy="false" />
+</extraparam>
+</CONNECTOR>
+<COMPONENT type="302" id="316" >
+<cdparam x="350" y="372" />
+<sizeparam width="375" height="97" minWidth="80" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Proverif Pragma" value="#InitialSystemKnowledge Bob.skey Alice.skey
+#InitialSystemKnowledge Bob.secretData Alice.secretData
+#Confidentiality Bob.secretData
+" />
+<TGConnectingPoint num="0" id="300" />
+<TGConnectingPoint num="1" id="301" />
+<TGConnectingPoint num="2" id="302" />
+<TGConnectingPoint num="3" id="303" />
+<TGConnectingPoint num="4" id="304" />
+<TGConnectingPoint num="5" id="305" />
+<TGConnectingPoint num="6" id="306" />
+<TGConnectingPoint num="7" id="307" />
+<TGConnectingPoint num="8" id="308" />
+<TGConnectingPoint num="9" id="309" />
+<TGConnectingPoint num="10" id="310" />
+<TGConnectingPoint num="11" id="311" />
+<TGConnectingPoint num="12" id="312" />
+<TGConnectingPoint num="13" id="313" />
+<TGConnectingPoint num="14" id="314" />
+<TGConnectingPoint num="15" id="315" />
+<extraparam>
+<Line value="#InitialSystemKnowledge Bob.skey Alice.skey" />
+<Line value="#InitialSystemKnowledge Bob.secretData Alice.secretData" />
+<Line value="#Confidentiality Bob.secretData" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5003" id="325" >
+<cdparam x="622" y="271" />
+<sizeparam width="250" height="68" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="DataType0" value="Key" />
+<TGConnectingPoint num="0" id="317" />
+<TGConnectingPoint num="1" id="318" />
+<TGConnectingPoint num="2" id="319" />
+<TGConnectingPoint num="3" id="320" />
+<TGConnectingPoint num="4" id="321" />
+<TGConnectingPoint num="5" id="322" />
+<TGConnectingPoint num="6" id="323" />
+<TGConnectingPoint num="7" id="324" />
+<extraparam>
+<Attribute access="0" id="data" value="" type="8" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5003" id="334" >
+<cdparam x="345" y="273" />
+<sizeparam width="250" height="68" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="DataType0" value="Message" />
+<TGConnectingPoint num="0" id="326" />
+<TGConnectingPoint num="1" id="327" />
+<TGConnectingPoint num="2" id="328" />
+<TGConnectingPoint num="3" id="329" />
+<TGConnectingPoint num="4" id="330" />
+<TGConnectingPoint num="5" id="331" />
+<TGConnectingPoint num="6" id="332" />
+<TGConnectingPoint num="7" id="333" />
+<extraparam>
+<Attribute access="0" id="data" value="" type="8" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5005" id="343" >
+<cdparam x="89" y="278" />
+<sizeparam width="160" height="144" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="SendReceiveMessage" value="SendReceiveMessage" />
+<TGConnectingPoint num="0" id="335" />
+<TGConnectingPoint num="1" id="336" />
+<TGConnectingPoint num="2" id="337" />
+<TGConnectingPoint num="3" id="338" />
+<TGConnectingPoint num="4" id="339" />
+<TGConnectingPoint num="5" id="340" />
+<TGConnectingPoint num="6" id="341" />
+<TGConnectingPoint num="7" id="342" />
+<extraparam>
+<CryptoLibraryFunction value="false" />
+<Parameter access="0" id="msg" value="" type="5" typeOther="Message" />
+<Parameter access="0" id="key" value="" type="5" typeOther="Key" />
+<Signal value="in inch(int v)" />
+<Signal value="out outch(int v)" />
+<ReturnAttribute access="0" id="msgRet" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="d" value="" type="8" typeOther="" />
+<Attribute access="0" id="dummy" value="" type="5" typeOther="Message" />
+<Method value="Message sencrypt(Message msg, Key k)" />
+<Method value="Message sdecrypt(Message msg, Key k)" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="368" >
+<cdparam x="466" y="36" />
+<sizeparam width="250" height="200" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Block1" value="Alice" />
+<TGConnectingPoint num="0" id="344" />
+<TGConnectingPoint num="1" id="345" />
+<TGConnectingPoint num="2" id="346" />
+<TGConnectingPoint num="3" id="347" />
+<TGConnectingPoint num="4" id="348" />
+<TGConnectingPoint num="5" id="349" />
+<TGConnectingPoint num="6" id="350" />
+<TGConnectingPoint num="7" id="351" />
+<TGConnectingPoint num="8" id="352" />
+<TGConnectingPoint num="9" id="353" />
+<TGConnectingPoint num="10" id="354" />
+<TGConnectingPoint num="11" id="355" />
+<TGConnectingPoint num="12" id="356" />
+<TGConnectingPoint num="13" id="357" />
+<TGConnectingPoint num="14" id="358" />
+<TGConnectingPoint num="15" id="359" />
+<TGConnectingPoint num="16" id="360" />
+<TGConnectingPoint num="17" id="361" />
+<TGConnectingPoint num="18" id="362" />
+<TGConnectingPoint num="19" id="363" />
+<TGConnectingPoint num="20" id="364" />
+<TGConnectingPoint num="21" id="365" />
+<TGConnectingPoint num="22" id="366" />
+<TGConnectingPoint num="23" id="367" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="send" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="recv" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="skey" value="" type="5" typeOther="Key" />
+<Attribute access="0" id="secretData" value="" type="8" typeOther="" />
+<Signal value="in chin(int v)" />
+<Signal value="out chout(int v)" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5000" id="393" >
+<cdparam x="38" y="44" />
+<sizeparam width="250" height="170" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Block0" value="Bob" />
+<TGConnectingPoint num="0" id="369" />
+<TGConnectingPoint num="1" id="370" />
+<TGConnectingPoint num="2" id="371" />
+<TGConnectingPoint num="3" id="372" />
+<TGConnectingPoint num="4" id="373" />
+<TGConnectingPoint num="5" id="374" />
+<TGConnectingPoint num="6" id="375" />
+<TGConnectingPoint num="7" id="376" />
+<TGConnectingPoint num="8" id="377" />
+<TGConnectingPoint num="9" id="378" />
+<TGConnectingPoint num="10" id="379" />
+<TGConnectingPoint num="11" id="380" />
+<TGConnectingPoint num="12" id="381" />
+<TGConnectingPoint num="13" id="382" />
+<TGConnectingPoint num="14" id="383" />
+<TGConnectingPoint num="15" id="384" />
+<TGConnectingPoint num="16" id="385" />
+<TGConnectingPoint num="17" id="386" />
+<TGConnectingPoint num="18" id="387" />
+<TGConnectingPoint num="19" id="388" />
+<TGConnectingPoint num="20" id="389" />
+<TGConnectingPoint num="21" id="390" />
+<TGConnectingPoint num="22" id="391" />
+<TGConnectingPoint num="23" id="392" />
+<extraparam>
+<CryptoBlock value="false" />
+<Attribute access="0" id="send" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="recv" value="" type="5" typeOther="Message" />
+<Attribute access="0" id="skey" value="" type="5" typeOther="Key" />
+<Attribute access="0" id="secretData" value="" type="8" typeOther="" />
+<Signal value="in chin(int v)" />
+<Signal value="out chout(int v)" />
+</extraparam>
+</COMPONENT>
+
+
+</AVATARBlockDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="SendReceiveMessage" minX="10" maxX="2500" minY="10" maxY="1500" >
+<CONNECTOR type="5102" id="400" >
+<cdparam x="388" y="143" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="399" />
+<P1  x="388" y="143" id="429" />
+<P2  x="388" y="205" id="415" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="398" >
+<father id="400" num="0" />
+<cdparam x="388" y="183" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="394" />
+<TGConnectingPoint num="1" id="395" />
+<TGConnectingPoint num="2" id="396" />
+<TGConnectingPoint num="3" id="397" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="407" >
+<cdparam x="416" y="149" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="406" />
+<P1  x="388" y="235" id="416" />
+<P2  x="409" y="305" id="426" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="405" >
+<father id="407" num="0" />
+<cdparam x="420" y="262" />
+<sizeparam width="202" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="401" />
+<TGConnectingPoint num="1" id="402" />
+<TGConnectingPoint num="2" id="403" />
+<TGConnectingPoint num="3" id="404" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="dummy.data = d" />
+<actions value="msgRet = sdecrypt(dummy, key)" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="414" >
+<cdparam x="407" y="70" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="413" />
+<P1  x="407" y="70" id="439" />
+<P2  x="388" y="113" id="428" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="412" >
+<father id="414" num="0" />
+<cdparam x="423" y="87" />
+<sizeparam width="181" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="408" />
+<TGConnectingPoint num="1" id="409" />
+<TGConnectingPoint num="2" id="410" />
+<TGConnectingPoint num="3" id="411" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="dummy = sencrypt(msg, key)" />
+<actions value="d = dummy.data" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5104" id="425" >
+<cdparam x="357" y="210" />
+<sizeparam width="62" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Receive signal" value="inch(d)" />
+<TGConnectingPoint num="0" id="415" />
+<TGConnectingPoint num="1" id="416" />
+<TGConnectingPoint num="2" id="417" />
+<TGConnectingPoint num="3" id="418" />
+<TGConnectingPoint num="4" id="419" />
+<TGConnectingPoint num="5" id="420" />
+<TGConnectingPoint num="6" id="421" />
+<TGConnectingPoint num="7" id="422" />
+<TGConnectingPoint num="8" id="423" />
+<TGConnectingPoint num="9" id="424" />
+</COMPONENT>
+
+<COMPONENT type="5101" id="427" >
+<cdparam x="399" y="310" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="426" />
+</COMPONENT>
+
+<COMPONENT type="5103" id="438" >
+<cdparam x="356" y="118" />
+<sizeparam width="64" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Send signal" value="outch(d)" />
+<TGConnectingPoint num="0" id="428" />
+<TGConnectingPoint num="1" id="429" />
+<TGConnectingPoint num="2" id="430" />
+<TGConnectingPoint num="3" id="431" />
+<TGConnectingPoint num="4" id="432" />
+<TGConnectingPoint num="5" id="433" />
+<TGConnectingPoint num="6" id="434" />
+<TGConnectingPoint num="7" id="435" />
+<TGConnectingPoint num="8" id="436" />
+<TGConnectingPoint num="9" id="437" />
+</COMPONENT>
+
+<COMPONENT type="5100" id="440" >
+<cdparam x="400" y="50" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="439" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Alice" minX="10" maxX="2500" minY="10" maxY="1500" >
+<CONNECTOR type="5102" id="447" >
+<cdparam x="407" y="70" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="446" />
+<P1  x="407" y="70" id="516" />
+<P2  x="525" y="118" id="505" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="445" >
+<father id="447" num="0" />
+<cdparam x="489" y="81" />
+<sizeparam width="152" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="441" />
+<TGConnectingPoint num="1" id="442" />
+<TGConnectingPoint num="2" id="443" />
+<TGConnectingPoint num="3" id="444" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="send.data = secretData" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="454" >
+<cdparam x="426" y="161" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="453" />
+<P1  x="525" y="161" id="506" />
+<P2  x="429" y="199" id="464" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="452" >
+<father id="454" num="0" />
+<cdparam x="426" y="201" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="448" />
+<TGConnectingPoint num="1" id="449" />
+<TGConnectingPoint num="2" id="450" />
+<TGConnectingPoint num="3" id="451" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="461" >
+<cdparam x="479" y="249" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="460" />
+<P1  x="479" y="249" id="470" />
+<P2  x="480" y="281" id="462" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="459" >
+<father id="461" num="0" />
+<cdparam x="479" y="289" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="455" />
+<TGConnectingPoint num="1" id="456" />
+<TGConnectingPoint num="2" id="457" />
+<TGConnectingPoint num="3" id="458" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5101" id="463" >
+<cdparam x="470" y="286" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="462" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="504" >
+<cdparam x="429" y="199" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="State" value="state0" />
+<TGConnectingPoint num="0" id="464" />
+<TGConnectingPoint num="1" id="465" />
+<TGConnectingPoint num="2" id="466" />
+<TGConnectingPoint num="3" id="467" />
+<TGConnectingPoint num="4" id="468" />
+<TGConnectingPoint num="5" id="469" />
+<TGConnectingPoint num="6" id="470" />
+<TGConnectingPoint num="7" id="471" />
+<TGConnectingPoint num="8" id="472" />
+<TGConnectingPoint num="9" id="473" />
+<TGConnectingPoint num="10" id="474" />
+<TGConnectingPoint num="11" id="475" />
+<TGConnectingPoint num="12" id="476" />
+<TGConnectingPoint num="13" id="477" />
+<TGConnectingPoint num="14" id="478" />
+<TGConnectingPoint num="15" id="479" />
+<TGConnectingPoint num="16" id="480" />
+<TGConnectingPoint num="17" id="481" />
+<TGConnectingPoint num="18" id="482" />
+<TGConnectingPoint num="19" id="483" />
+<TGConnectingPoint num="20" id="484" />
+<TGConnectingPoint num="21" id="485" />
+<TGConnectingPoint num="22" id="486" />
+<TGConnectingPoint num="23" id="487" />
+<TGConnectingPoint num="24" id="488" />
+<TGConnectingPoint num="25" id="489" />
+<TGConnectingPoint num="26" id="490" />
+<TGConnectingPoint num="27" id="491" />
+<TGConnectingPoint num="28" id="492" />
+<TGConnectingPoint num="29" id="493" />
+<TGConnectingPoint num="30" id="494" />
+<TGConnectingPoint num="31" id="495" />
+<TGConnectingPoint num="32" id="496" />
+<TGConnectingPoint num="33" id="497" />
+<TGConnectingPoint num="34" id="498" />
+<TGConnectingPoint num="35" id="499" />
+<TGConnectingPoint num="36" id="500" />
+<TGConnectingPoint num="37" id="501" />
+<TGConnectingPoint num="38" id="502" />
+<TGConnectingPoint num="39" id="503" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5112" id="515" >
+<cdparam x="376" y="123" />
+<sizeparam width="298" height="33" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Library function call" value="recv = SendReceiveMessage (send, skey)" />
+<TGConnectingPoint num="0" id="505" />
+<TGConnectingPoint num="1" id="506" />
+<TGConnectingPoint num="2" id="507" />
+<TGConnectingPoint num="3" id="508" />
+<TGConnectingPoint num="4" id="509" />
+<TGConnectingPoint num="5" id="510" />
+<TGConnectingPoint num="6" id="511" />
+<TGConnectingPoint num="7" id="512" />
+<TGConnectingPoint num="8" id="513" />
+<TGConnectingPoint num="9" id="514" />
+<extraparam>
+<LibraryFunction name="SendReceiveMessage" />
+<Parameter id="send" />
+<Parameter id="skey" />
+<Signal value="in chin(int v)" />
+<Signal value="out chout(int v)" />
+<ReturnAttribute id="recv" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="517" >
+<cdparam x="400" y="50" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="516" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+<AVATARStateMachineDiagramPanel name="Bob" minX="10" maxX="2500" minY="10" maxY="1500" >
+<CONNECTOR type="5102" id="524" >
+<cdparam x="407" y="70" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="523" />
+<P1  x="407" y="70" id="611" />
+<P2  x="534" y="130" id="600" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="522" >
+<father id="524" num="0" />
+<cdparam x="495" y="86" />
+<sizeparam width="152" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="518" />
+<TGConnectingPoint num="1" id="519" />
+<TGConnectingPoint num="2" id="520" />
+<TGConnectingPoint num="3" id="521" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="send.data = secretData" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="531" >
+<cdparam x="423" y="173" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="530" />
+<P1  x="534" y="173" id="601" />
+<P2  x="411" y="233" id="559" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="529" >
+<father id="531" num="0" />
+<cdparam x="509" y="214" />
+<sizeparam width="175" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="525" />
+<TGConnectingPoint num="1" id="526" />
+<TGConnectingPoint num="2" id="527" />
+<TGConnectingPoint num="3" id="528" />
+<extraparam>
+<guard value="[ recv.data == secretData ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="538" >
+<cdparam x="472" y="309" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="537" />
+<P1  x="412" y="373" id="547" />
+<P2  x="444" y="425" id="557" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="536" >
+<father id="538" num="0" />
+<cdparam x="472" y="349" />
+<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="532" />
+<TGConnectingPoint num="1" id="533" />
+<TGConnectingPoint num="2" id="534" />
+<TGConnectingPoint num="3" id="535" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="5102" id="545" >
+<cdparam x="423" y="283" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<TGConnectingPoint num="0" id="544" />
+<P1  x="423" y="283" id="587" />
+<P2  x="412" y="343" id="546" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="543" >
+<father id="545" num="0" />
+<cdparam x="423" y="323" />
+<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="List of all parameters of an Avatar SMD transition" value="" />
+<TGConnectingPoint num="0" id="539" />
+<TGConnectingPoint num="1" id="540" />
+<TGConnectingPoint num="2" id="541" />
+<TGConnectingPoint num="3" id="542" />
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+<actions value="secretData = skey.data" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="5103" id="556" >
+<cdparam x="349" y="348" />
+<sizeparam width="126" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Send signal" value="chout(secretData)" />
+<TGConnectingPoint num="0" id="546" />
+<TGConnectingPoint num="1" id="547" />
+<TGConnectingPoint num="2" id="548" />
+<TGConnectingPoint num="3" id="549" />
+<TGConnectingPoint num="4" id="550" />
+<TGConnectingPoint num="5" id="551" />
+<TGConnectingPoint num="6" id="552" />
+<TGConnectingPoint num="7" id="553" />
+<TGConnectingPoint num="8" id="554" />
+<TGConnectingPoint num="9" id="555" />
+</COMPONENT>
+
+<COMPONENT type="5101" id="558" >
+<cdparam x="434" y="430" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="557" />
+</COMPONENT>
+
+<COMPONENT type="5106" id="599" >
+<cdparam x="411" y="233" />
+<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="State" value="state0" />
+<TGConnectingPoint num="0" id="559" />
+<TGConnectingPoint num="1" id="560" />
+<TGConnectingPoint num="2" id="561" />
+<TGConnectingPoint num="3" id="562" />
+<TGConnectingPoint num="4" id="563" />
+<TGConnectingPoint num="5" id="564" />
+<TGConnectingPoint num="6" id="565" />
+<TGConnectingPoint num="7" id="566" />
+<TGConnectingPoint num="8" id="567" />
+<TGConnectingPoint num="9" id="568" />
+<TGConnectingPoint num="10" id="569" />
+<TGConnectingPoint num="11" id="570" />
+<TGConnectingPoint num="12" id="571" />
+<TGConnectingPoint num="13" id="572" />
+<TGConnectingPoint num="14" id="573" />
+<TGConnectingPoint num="15" id="574" />
+<TGConnectingPoint num="16" id="575" />
+<TGConnectingPoint num="17" id="576" />
+<TGConnectingPoint num="18" id="577" />
+<TGConnectingPoint num="19" id="578" />
+<TGConnectingPoint num="20" id="579" />
+<TGConnectingPoint num="21" id="580" />
+<TGConnectingPoint num="22" id="581" />
+<TGConnectingPoint num="23" id="582" />
+<TGConnectingPoint num="24" id="583" />
+<TGConnectingPoint num="25" id="584" />
+<TGConnectingPoint num="26" id="585" />
+<TGConnectingPoint num="27" id="586" />
+<TGConnectingPoint num="28" id="587" />
+<TGConnectingPoint num="29" id="588" />
+<TGConnectingPoint num="30" id="589" />
+<TGConnectingPoint num="31" id="590" />
+<TGConnectingPoint num="32" id="591" />
+<TGConnectingPoint num="33" id="592" />
+<TGConnectingPoint num="34" id="593" />
+<TGConnectingPoint num="35" id="594" />
+<TGConnectingPoint num="36" id="595" />
+<TGConnectingPoint num="37" id="596" />
+<TGConnectingPoint num="38" id="597" />
+<TGConnectingPoint num="39" id="598" />
+<extraparam>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5112" id="610" >
+<cdparam x="373" y="135" />
+<sizeparam width="323" height="33" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="Library function call" value="recv = SendReceiveMessage (send, skey)" />
+<TGConnectingPoint num="0" id="600" />
+<TGConnectingPoint num="1" id="601" />
+<TGConnectingPoint num="2" id="602" />
+<TGConnectingPoint num="3" id="603" />
+<TGConnectingPoint num="4" id="604" />
+<TGConnectingPoint num="5" id="605" />
+<TGConnectingPoint num="6" id="606" />
+<TGConnectingPoint num="7" id="607" />
+<TGConnectingPoint num="8" id="608" />
+<TGConnectingPoint num="9" id="609" />
+<extraparam>
+<LibraryFunction name="SendReceiveMessage" />
+<Parameter id="send" />
+<Parameter id="skey" />
+<Signal value="in chin(int v)" />
+<Signal value="out chout(int v)" />
+<ReturnAttribute id="recv" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="5100" id="612" >
+<cdparam x="400" y="50" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="611" />
+</COMPONENT>
+
+
+</AVATARStateMachineDiagramPanel>
+
+</Modeling>
+
+
+
+
+</TURTLEGMODELING>
\ No newline at end of file
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/Mapping_0.xml b/ttool/src/test/resources/ui/diagram2tml/expected/Mapping_0.xml
new file mode 100644
index 0000000000000000000000000000000000000000..7ce0df3d609b86ff84d801f7ee2b0455119f0744
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/Mapping_0.xml
@@ -0,0 +1,557 @@
+<TMLMAPPING>
+<TMLMODELING>
+<TASK name="Zigbee_TX__X_Sink" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwpI_ch_out__cwpQ_ch_out__sink_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_Source" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue="127"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event">
+<CUSTOM  event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request">
+<CUSTOM  request="Zigbee_TX__source_req" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action">
+<CUSTOM  action="size = 127" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_Source" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in "  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_Symbol2ChipSeq" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event">
+<CUSTOM  event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request">
+<CUSTOM  request="Zigbee_TX__bit2chip_req" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_Chip2Octet" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_Sink" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="size_1" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="2" name="send request">
+<CUSTOM  request="Zigbee_TX__sink_req" params="size+size_1"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="3" name="wait event">
+<CUSTOM  event="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" params="size_1"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="4" name="wait event">
+<CUSTOM  event="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_CWL" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request">
+<CUSTOM  request="Zigbee_TX__cwl_req" params="size"  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event">
+<CUSTOM  event="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="5" name="send event">
+<CUSTOM  event="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_CWP_Q" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event">
+<CUSTOM  event="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request">
+<CUSTOM  request="Zigbee_TX__cwpQ_req" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_CWP_I" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event">
+<CUSTOM  event="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request">
+<CUSTOM  request="Zigbee_TX__cwpI_req" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_Chip2Octet" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event">
+<CUSTOM  event="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request">
+<CUSTOM  request="Zigbee_TX__chip2octet_req" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_CWP_I" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwpI_ch_out__cwpQ_ch_out__sink_ch_in "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_CWP_Q" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwpI_ch_out__cwpQ_ch_out__sink_ch_in "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_CWL" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_Symbol2ChipSeq" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TMLCHANNEL name="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in" origintask="Zigbee_TX__X_Source" originport="Source_ch_out" destinationtask="Zigbee_TX__X_Symbol2ChipSeq" destinationport="symbol2ChipSeq_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLCHANNEL name="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in" origintask="Zigbee_TX__X_Chip2Octet" originport="chip2octet_ch_out" destinationtask="Zigbee_TX__X_CWL" destinationport="cwl_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLCHANNEL name="Zigbee_TX__cwpI_ch_out__cwpQ_ch_out__sink_ch_in" destinationtask="Zigbee_TX__X_Sink" destinationport="sink_ch_in" origintask="Zigbee_TX__X_CWP_I;Zigbee_TX__X_CWP_Q;" originport="cwpI_ch_out;cwpQ_ch_out;" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLCHANNEL name="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in" origintask="Zigbee_TX__X_CWL" originport="cwl_ch_out" destinationtask="Zigbee_TX__X_CWP_Q;Zigbee_TX__X_CWP_I;" destinationport="cwpQ_ch_in;cwpI_ch_in;" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLCHANNEL name="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in" origintask="Zigbee_TX__X_Symbol2ChipSeq" originport="symbol2ChipSeq_ch_out" destinationtask="Zigbee_TX__X_Chip2Octet" destinationport="chip2octet_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLREQUEST name="Zigbee_TX__sink_req" destinationtask="Zigbee_TX__X_Sink" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_Sink" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__source_req" destinationtask="Zigbee_TX__X_Source" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_Source" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__chip2octet_req" destinationtask="Zigbee_TX__X_Chip2Octet" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_Chip2Octet" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__cwpI_req" destinationtask="Zigbee_TX__X_CWP_I" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_CWP_I" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__cwpQ_req" destinationtask="Zigbee_TX__X_CWP_Q" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_CWP_Q" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__cwl_req" destinationtask="Zigbee_TX__X_CWL" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_CWL" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__bit2chip_req" destinationtask="Zigbee_TX__X_Symbol2ChipSeq" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_Symbol2ChipSeq" /> <PARAM type="int" /></TMLREQUEST>
+<TMLEVENT name="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" origintask="Zigbee_TX__F_Source" destinationtask="Zigbee_TX__F_Symbol2ChipSeq" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" origintask="Zigbee_TX__F_Symbol2ChipSeq" destinationtask="Zigbee_TX__F_Chip2Octet" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" origintask="Zigbee_TX__F_CWL" destinationtask="Zigbee_TX__F_CWP_I" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" origintask="Zigbee_TX__F_CWL" destinationtask="Zigbee_TX__F_CWP_Q" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" origintask="Zigbee_TX__F_CWP_Q" destinationtask="Zigbee_TX__F_Sink" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" origintask="Zigbee_TX__F_CWP_I" destinationtask="Zigbee_TX__F_Sink" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" origintask="Zigbee_TX__F_Chip2Octet" destinationtask="Zigbee_TX__F_CWL" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+</TMLMODELING>
+<TMLARCHITECTURE freq="100" >
+<CPU name="INTL_DMA" clockRatio="1"  byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5"  schedulingPolicy="0" sliceTime="10000" MEC="CPU" />
+<CPU name="ADAIF_DMA" clockRatio="1"  byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5"  schedulingPolicy="0" sliceTime="10000" MEC="CPU" />
+<MEMORY name="ADAIF_MSS" clockRatio="1"  byteDataSize="4" memorySize="1024"  bufferType="2" />
+<CPU name="ADAIF_PSS" clockRatio="1"  byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5"  schedulingPolicy="0" sliceTime="10000" MEC="ADAIF" />
+<BRIDGE name="ADAIF_Bridge" clockRatio="1"  bufferByteSize="4" />
+<MEMORY name="MainMemory" clockRatio="1"  byteDataSize="4" memorySize="1024"  bufferType="4" />
+<CPU name="MainCPU" clockRatio="6"  byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5"  schedulingPolicy="0" sliceTime="10000" MEC="CPU" />
+<BUS name="MainBus" clockRatio="1"  byteDataSize="4"  pipelineSize="1" arbitration="0" sliceTime="10000" />
+<BRIDGE name="MainBridge" clockRatio="1"  bufferByteSize="4" />
+<BUS name="Crossbar" clockRatio="1"  byteDataSize="8"  pipelineSize="1" arbitration="0" sliceTime="10000" />
+<BRIDGE name="INTL_Bridge" clockRatio="1"  bufferByteSize="4" />
+<MEMORY name="INTL_MSS" clockRatio="1"  byteDataSize="4" memorySize="1024"  bufferType="3" />
+<CPU name="INTL_PSS" clockRatio="1"  byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5"  schedulingPolicy="0" sliceTime="10000" MEC="INTL" />
+<BUS name="INTL_Bus" clockRatio="1"  byteDataSize="8"  pipelineSize="1" arbitration="0" sliceTime="10000" />
+<BUS name="ADAIF_Bus" clockRatio="1"  byteDataSize="8"  pipelineSize="1" arbitration="0" sliceTime="10000" />
+<CPU name="FEP_DMA" clockRatio="1"  byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5"  schedulingPolicy="0" sliceTime="10000" MEC="CPU" />
+<MEMORY name="FEP_MSS" clockRatio="1"  byteDataSize="4" memorySize="1024"  bufferType="0" />
+<CPU name="FEP_PSS" clockRatio="1"  byteDataSize="4" execiTime="2" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5"  schedulingPolicy="0" sliceTime="10000" MEC="FEP" />
+<BRIDGE name="FEP_Bridge" clockRatio="1"  bufferByteSize="4" />
+<BUS name="FEP_Bus" clockRatio="1"  byteDataSize="8"  pipelineSize="1" arbitration="0" sliceTime="10000" />
+<CPU name="MAPPER_DMA" clockRatio="1"  byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5"  schedulingPolicy="0" sliceTime="10000" MEC="CPU" />
+<BRIDGE name="MAPPER_Bridge" clockRatio="1"  bufferByteSize="4" />
+<MEMORY name="MAPPER_MSS" clockRatio="1"  byteDataSize="4" memorySize="1024"  bufferType="1" />
+<CPU name="MAPPER_PSS" clockRatio="1"  byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5"  schedulingPolicy="0" sliceTime="10000" MEC="MAPP" />
+<BUS name="MAPPER_Bus" clockRatio="1"  byteDataSize="8"  pipelineSize="1" arbitration="0" sliceTime="10000" />
+<LINK name="link_MainBridge_to_Crossbar" bus="Crossbar" hwnode="MainBridge" priority="0" />
+<LINK name="link_FEP_DMA_to_Crossbar" bus="Crossbar" hwnode="FEP_DMA" priority="0" />
+<LINK name="link_MAPPER_DMA_to_Crossbar" bus="Crossbar" hwnode="MAPPER_DMA" priority="0" />
+<LINK name="link_MAPPER_Bridge_to_Crossbar" bus="Crossbar" hwnode="MAPPER_Bridge" priority="0" />
+<LINK name="link_FEP_Bridge_to_Crossbar" bus="Crossbar" hwnode="FEP_Bridge" priority="0" />
+<LINK name="link_MainBridge_to_MainBus" bus="MainBus" hwnode="MainBridge" priority="0" />
+<LINK name="link_INTL_Bridge_to_INTL_Bus" bus="INTL_Bus" hwnode="INTL_Bridge" priority="0" />
+<LINK name="link_INTL_DMA_to_Crossbar" bus="Crossbar" hwnode="INTL_DMA" priority="0" />
+<LINK name="link_INTL_DMA_to_INTL_Bus" bus="INTL_Bus" hwnode="INTL_DMA" priority="0" />
+<LINK name="link_INTL_MSS_to_INTL_Bus" bus="INTL_Bus" hwnode="INTL_MSS" priority="0" />
+<LINK name="link_INTL_PSS_to_INTL_Bus" bus="INTL_Bus" hwnode="INTL_PSS" priority="0" />
+<LINK name="link_ADAIF_Bridge_to_Crossbar" bus="Crossbar" hwnode="ADAIF_Bridge" priority="0" />
+<LINK name="link_ADAIF_Bridge_to_ADAIF_Bus" bus="ADAIF_Bus" hwnode="ADAIF_Bridge" priority="0" />
+<LINK name="link_ADAIF_DMA_to_Crossbar" bus="Crossbar" hwnode="ADAIF_DMA" priority="0" />
+<LINK name="link_ADAIF_DMA_to_ADAIF_Bus" bus="ADAIF_Bus" hwnode="ADAIF_DMA" priority="0" />
+<LINK name="link_ADAIF_MSS_to_ADAIF_Bus" bus="ADAIF_Bus" hwnode="ADAIF_MSS" priority="0" />
+<LINK name="link_ADAIF_PSS_to_ADAIF_Bus" bus="ADAIF_Bus" hwnode="ADAIF_PSS" priority="0" />
+<LINK name="link_INTL_Bridge_to_Crossbar" bus="Crossbar" hwnode="INTL_Bridge" priority="0" />
+<LINK name="link_MainMemory_to_MainBus" bus="MainBus" hwnode="MainMemory" priority="0" />
+<LINK name="link_MainCPU_to_MainBus" bus="MainBus" hwnode="MainCPU" priority="0" />
+<LINK name="link_FEP_Bridge_to_FEP_Bus" bus="FEP_Bus" hwnode="FEP_Bridge" priority="0" />
+<LINK name="link_FEP_DMA_to_FEP_Bus" bus="FEP_Bus" hwnode="FEP_DMA" priority="0" />
+<LINK name="link_FEP_MSS_to_FEP_Bus" bus="FEP_Bus" hwnode="FEP_MSS" priority="0" />
+<LINK name="link_FEP_PSS_to_FEP_Bus" bus="FEP_Bus" hwnode="FEP_PSS" priority="0" />
+<LINK name="link_MAPPER_Bridge_to_MAPPER_Bus" bus="MAPPER_Bus" hwnode="MAPPER_Bridge" priority="0" />
+<LINK name="link_MAPPER_DMA_to_MAPPER_Bus" bus="MAPPER_Bus" hwnode="MAPPER_DMA" priority="0" />
+<LINK name="link_MAPPER_MSS_to_MAPPER_Bus" bus="MAPPER_Bus" hwnode="MAPPER_MSS" priority="0" />
+<LINK name="link_MAPPER_PSS_to_MAPPER_Bus" bus="MAPPER_Bus" hwnode="MAPPER_PSS" priority="0" />
+</TMLARCHITECTURE><TASKMAP node="ADAIF_PSS" task="Zigbee_TX__X_Sink" />
+<TASKMAP node="MainCPU" task="Zigbee_TX__F_Source" />
+<TASKMAP node="MainCPU" task="Zigbee_TX__X_Source" />
+<TASKMAP node="MainCPU" task="Zigbee_TX__F_Symbol2ChipSeq" />
+<TASKMAP node="MainCPU" task="Zigbee_TX__X_Chip2Octet" />
+<TASKMAP node="MainCPU" task="Zigbee_TX__F_Sink" />
+<TASKMAP node="MainCPU" task="Zigbee_TX__F_CWL" />
+<TASKMAP node="MainCPU" task="Zigbee_TX__F_CWP_Q" />
+<TASKMAP node="MainCPU" task="Zigbee_TX__F_CWP_I" />
+<TASKMAP node="INTL_PSS" task="Zigbee_TX__F_Chip2Octet" />
+<TASKMAP node="FEP_PSS" task="Zigbee_TX__X_CWP_I" />
+<TASKMAP node="FEP_PSS" task="Zigbee_TX__X_CWP_Q" />
+<TASKMAP node="FEP_PSS" task="Zigbee_TX__X_CWL" />
+<TASKMAP node="MAPPER_PSS" task="Zigbee_TX__X_Symbol2ChipSeq" />
+<TMLCPLIB name="CP_Symbol2ChipSeq_Chips2Octet::DMA_transfer" cpMECType="1" typeName="DMA_transfer">
+<TMLCPLIBARTIFACT taskName="Zigbee_TX::chip2octet_ch_in" portName="chip2octet_ch_in" memoryName="INTL_MSS" priority="5" >
+<BUFFERPARAMETERS param="3" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+<BUFFERPARAMETERS param="" />
+</TMLCPLIBARTIFACT>
+<MAPPEUNIT unit="DMA_transfer.CPU_Controller_1 : MainCPU" />
+<MAPPEUNIT unit="DMA_transfer.DMA_Controller_1 : MAPPER_DMA" />
+<MAPPEUNIT unit="DMA_transfer.Src_Storage_Instance_1 : MAPPER_MSS" />
+<MAPPEUNIT unit="DMA_transfer.Dst_Storage_Instance_1 : INTL_MSS" />
+<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_1 : MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_2 : MAPPER_Bus" />
+<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_3 : Crossbar, INTL_Bridge, INTL_Bus, MAPPER_Bridge, MAPPER_Bus" />
+<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_4 : MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<TRANSFERTYPE type="0" />
+<TRANSFERTYPE type="0" />
+</TMLCPLIB><TMLCPLIB name="CP_Chip2Octet_CWL::DMA_transfer" cpMECType="1" typeName="DMA_transfer">
+<TMLCPLIBARTIFACT taskName="Zigbee_TX::cwl_ch_in" portName="cwl_ch_in" memoryName="FEP_MSS" priority="5" >
+<BUFFERPARAMETERS param="0" />
+<BUFFERPARAMETERS param="1" />
+<BUFFERPARAMETERS param="0x2" />
+<BUFFERPARAMETERS param="0" />
+<BUFFERPARAMETERS param="int8" />
+</TMLCPLIBARTIFACT>
+<MAPPEUNIT unit="DMA_transfer.CPU_Controller_1 : MainCPU" />
+<MAPPEUNIT unit="DMA_transfer.DMA_Controller_1 : INTL_DMA" />
+<MAPPEUNIT unit="DMA_transfer.Src_Storage_Instance_1 : INTL_MSS" />
+<MAPPEUNIT unit="DMA_transfer.Dst_Storage_Instance_1 : FEP_MSS" />
+<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_1 : MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" />
+<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_2 : INTL_Bus" />
+<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_3 : ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_4 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<TRANSFERTYPE type="0" />
+<TRANSFERTYPE type="0" />
+</TMLCPLIB><TMLCPLIB name="CP_sink::Double_DMA_transfer" cpMECType="2" typeName="Double_DMA_transfer">
+<TMLCPLIBARTIFACT taskName="Zigbee_TX::sink_ch_in" portName="sink_ch_in" memoryName="ADAIF_MSS" priority="5" >
+<BUFFERPARAMETERS param="2" />
+<BUFFERPARAMETERS param="1" />
+<BUFFERPARAMETERS param="0x2" />
+</TMLCPLIBARTIFACT>
+<MAPPEUNIT unit="Double_DMA_transfer.CPU_Controller_1 : MainCPU" />
+<MAPPEUNIT unit="Double_DMA_transfer.CPU_Controller_2 : MainCPU" />
+<MAPPEUNIT unit="Double_DMA_transfer.DMA_Controller_1 : FEP_DMA" />
+<MAPPEUNIT unit="Double_DMA_transfer.DMA_Controller_2 : FEP_DMA" />
+<MAPPEUNIT unit="Double_DMA_transfer.Src_Storage_Instance_1 : FEP_MSS" />
+<MAPPEUNIT unit="Double_DMA_transfer.Src_Storage_Instance_2 : FEP_MSS" />
+<MAPPEUNIT unit="Double_DMA_transfer.Dst_Storage_Instance_2 : ADAIF_MSS" />
+<MAPPEUNIT unit="Double_DMA_transfer.Dst_Storage_Instance_1 : ADAIF_MSS" />
+<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_1 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_2 : FEP_Bus" />
+<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_3 : ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_4 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_5 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_6 : FEP_Bus" />
+<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_7 : ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_8 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<TRANSFERTYPE type="0" />
+<TRANSFERTYPE type="0" />
+</TMLCPLIB><TMLCPLIB name="CP_Source_to_Bits2Symbol::CP_Memory_Copy" cpMECType="0" typeName="CP_Memory_Copy">
+<TMLCPLIBARTIFACT taskName="Zigbee_TX::symbol2ChipSeq_ch_in" portName="symbol2ChipSeq_ch_in" memoryName="MAPPER_MSS" priority="5" >
+<BUFFERPARAMETERS param="1" />
+<BUFFERPARAMETERS param="1" />
+<BUFFERPARAMETERS param="0x2" />
+<BUFFERPARAMETERS param="3" />
+<BUFFERPARAMETERS param="OFF" />
+<BUFFERPARAMETERS param="0x4" />
+<BUFFERPARAMETERS param="0x5" />
+</TMLCPLIBARTIFACT>
+<MAPPEUNIT unit="CP_Memory_Copy.CPU_Controller : MainCPU" />
+<MAPPEUNIT unit="CP_Memory_Copy.Dst_Storage_Instance : MAPPER_MSS" />
+<MAPPEUNIT unit="CP_Memory_Copy.Src_Storage_Instance : MainMemory" />
+<MAPPEUNIT unit="CP_Memory_Copy.Transfer_Instance_1 : MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<MAPPEUNIT unit="CP_Memory_Copy.Transfer_Instance2 : MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<TRANSFERTYPE type="0" />
+<TRANSFERTYPE type="0" />
+</TMLCPLIB></TMLMAPPING>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/Zigbee_TX.xml b/ttool/src/test/resources/ui/diagram2tml/expected/Zigbee_TX.xml
new file mode 100644
index 0000000000000000000000000000000000000000..cb58209c789f8d272336e795981888f9a34cda7d
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/Zigbee_TX.xml
@@ -0,0 +1,403 @@
+<TMLMODELING>
+<TASK name="Zigbee_TX__X_Source" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in "  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_Source" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue="127"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event">
+<CUSTOM  event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request">
+<CUSTOM  request="Zigbee_TX__source_req" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action">
+<CUSTOM  action="size = 127" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_Symbol2ChipSeq" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_Symbol2ChipSeq" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event">
+<CUSTOM  event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request">
+<CUSTOM  request="Zigbee_TX__bit2chip_req" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_Chip2Octet" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_Chip2Octet" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event">
+<CUSTOM  event="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request">
+<CUSTOM  request="Zigbee_TX__chip2octet_req" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_CWL" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_CWL" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request">
+<CUSTOM  request="Zigbee_TX__cwl_req" params="size"  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event">
+<CUSTOM  event="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="5" name="send event">
+<CUSTOM  event="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_Sink" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwpQ_ch_out__sink_ch_in__cwpI_ch_out "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_Sink" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="size_1" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="2" name="send request">
+<CUSTOM  request="Zigbee_TX__sink_req" params="size+size_1"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="3" name="wait event">
+<CUSTOM  event="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" params="size_1"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="4" name="wait event">
+<CUSTOM  event="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_CWP_Q" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwpQ_ch_out__sink_ch_in__cwpI_ch_out "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_CWP_Q" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event">
+<CUSTOM  event="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request">
+<CUSTOM  request="Zigbee_TX__cwpQ_req" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__X_CWP_I" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__cwpQ_ch_out__sink_ch_in__cwpI_ch_out "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TASK name="Zigbee_TX__F_CWP_I" priority="0" >
+<ATTRIBUTE type="1" name="size" initialValue=""/>
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event">
+<CUSTOM  event="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event">
+<CUSTOM  event="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request">
+<CUSTOM  request="Zigbee_TX__cwpI_req" params="size"  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
+</TASK>
+<TMLCHANNEL name="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in" origintask="Zigbee_TX__X_Source" originport="Source_ch_out" destinationtask="Zigbee_TX__X_Symbol2ChipSeq" destinationport="symbol2ChipSeq_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLCHANNEL name="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in" origintask="Zigbee_TX__X_Symbol2ChipSeq" originport="symbol2ChipSeq_ch_out" destinationtask="Zigbee_TX__X_Chip2Octet" destinationport="chip2octet_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLCHANNEL name="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in" origintask="Zigbee_TX__X_Chip2Octet" originport="chip2octet_ch_out" destinationtask="Zigbee_TX__X_CWL" destinationport="cwl_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLCHANNEL name="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in" origintask="Zigbee_TX__X_CWL" originport="cwl_ch_out" destinationtask="Zigbee_TX__X_CWP_Q;Zigbee_TX__X_CWP_I;" destinationport="cwpQ_ch_in;cwpI_ch_in;" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLCHANNEL name="Zigbee_TX__cwpQ_ch_out__sink_ch_in__cwpI_ch_out" destinationtask="Zigbee_TX__X_Sink" destinationport="sink_ch_in" origintask="Zigbee_TX__X_CWP_Q;Zigbee_TX__X_CWP_I;" originport="cwpQ_ch_out;cwpI_ch_out;" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8"  />
+<TMLREQUEST name="Zigbee_TX__source_req" destinationtask="Zigbee_TX__X_Source" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_Source" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__bit2chip_req" destinationtask="Zigbee_TX__X_Symbol2ChipSeq" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_Symbol2ChipSeq" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__chip2octet_req" destinationtask="Zigbee_TX__X_Chip2Octet" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_Chip2Octet" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__cwl_req" destinationtask="Zigbee_TX__X_CWL" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_CWL" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__sink_req" destinationtask="Zigbee_TX__X_Sink" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_Sink" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__cwpQ_req" destinationtask="Zigbee_TX__X_CWP_Q" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_CWP_Q" /> <PARAM type="int" /></TMLREQUEST>
+<TMLREQUEST name="Zigbee_TX__cwpI_req" destinationtask="Zigbee_TX__X_CWP_I" isLossy="false" lossPercentage="0" maxNbOfLoss="0"  >
+<ORIGINTASK name="Zigbee_TX__F_CWP_I" /> <PARAM type="int" /></TMLREQUEST>
+<TMLEVENT name="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" origintask="Zigbee_TX__F_Source" destinationtask="Zigbee_TX__F_Symbol2ChipSeq" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" origintask="Zigbee_TX__F_Symbol2ChipSeq" destinationtask="Zigbee_TX__F_Chip2Octet" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" origintask="Zigbee_TX__F_Chip2Octet" destinationtask="Zigbee_TX__F_CWL" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" origintask="Zigbee_TX__F_CWL" destinationtask="Zigbee_TX__F_CWP_I" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" origintask="Zigbee_TX__F_CWL" destinationtask="Zigbee_TX__F_CWP_Q" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" origintask="Zigbee_TX__F_CWP_Q" destinationtask="Zigbee_TX__F_Sink" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+<TMLEVENT name="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" origintask="Zigbee_TX__F_CWP_I" destinationtask="Zigbee_TX__F_Sink" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" >
+<PARAM type="int" /></TMLEVENT>
+</TMLMODELING>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionState.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionState.xml
new file mode 100644
index 0000000000000000000000000000000000000000..95d407d311c5f77b0090c8cb0aac2c432efd1099
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionState.xml
@@ -0,0 +1,17 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event">
+<CUSTOM  event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request">
+<CUSTOM  request="Zigbee_TX__source_req" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendEvent.xml
new file mode 100644
index 0000000000000000000000000000000000000000..04bfc6487d87942f825bf4c085a5d8a11442672b
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendEvent.xml
@@ -0,0 +1,13 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="2" name="send request">
+<CUSTOM  request="Zigbee_TX__source_req" params="size"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequest.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequest.xml
new file mode 100644
index 0000000000000000000000000000000000000000..47fef1cbf4fb1854794a2c3229ed41c4470ebef9
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequest.xml
@@ -0,0 +1,13 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event">
+<CUSTOM  event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequestSendEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequestSendEvent.xml
new file mode 100644
index 0000000000000000000000000000000000000000..eeb8817b4b041db81d761ea7530a90d4da8a36ec
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequestSendEvent.xml
@@ -0,0 +1,9 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendEvent.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e77484a53de2f374ff68021b10b22f8ea58d4ed1
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendEvent.xml
@@ -0,0 +1,17 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="2" name="send request">
+<CUSTOM  request="Zigbee_TX__source_req" params="size"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="3" name="action">
+<CUSTOM  action="size = 127" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequest.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequest.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5a6db0d5b06bc3258592b634ffaf52ed6f51f742
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequest.xml
@@ -0,0 +1,17 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event">
+<CUSTOM  event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="3" name="action">
+<CUSTOM  action="size = 127" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequestSendEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequestSendEvent.xml
new file mode 100644
index 0000000000000000000000000000000000000000..9d0d3fcc6070372ce42c71fada55038f262ab4ba
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequestSendEvent.xml
@@ -0,0 +1,13 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="2" name="action">
+<CUSTOM  action="size = 127" />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Symbol2ChipSeq_Disable_WaitEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Symbol2ChipSeq_Disable_WaitEvent.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c6da6d2ea972aa16c9c43f86cc47d6262878426f
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Symbol2ChipSeq_Disable_WaitEvent.xml
@@ -0,0 +1,17 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event">
+<CUSTOM  event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size"  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request">
+<CUSTOM  request="Zigbee_TX__bit2chip_req" params="size"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ChoiceLeft.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ChoiceLeft.xml
new file mode 100644
index 0000000000000000000000000000000000000000..eb03280482b70bf3b11253153813a7fa7adcafa5
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ChoiceLeft.xml
@@ -0,0 +1,73 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="1" name="choice">
+<CUSTOM  guards="[ ];[ ];"  />
+<NEXTACTIVITYELEMENT id="8" />
+<NEXTACTIVITYELEMENT id="11" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="2" name="choice">
+<CUSTOM  guards="[ true ];[ x>0 ];"  />
+<NEXTACTIVITYELEMENT id="12" />
+<NEXTACTIVITYELEMENT id="14" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request">
+<CUSTOM  request="AppC__activation" params=""  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event">
+<CUSTOM  event="AppC__reset__AppC__reset" params=""  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="5" name="wait event">
+<CUSTOM  event="AppC__answerToReset__AppC__answerToReset" params=""  />
+<NEXTACTIVITYELEMENT id="6" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="6" name="send event">
+<CUSTOM  event="AppC__pTS__AppC__pTS" params=""  />
+<NEXTACTIVITYELEMENT id="7" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="7" name="wait event">
+<CUSTOM  event="AppC__pTSConfirm__AppC__pTSConfirm" params=""  />
+<NEXTACTIVITYELEMENT id="16" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="8" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromDtoSC "  />
+<NEXTACTIVITYELEMENT id="9" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="9" name="send event">
+<CUSTOM  event="AppC__data_Ready__AppC__data_Ready" params="x,b"  />
+<NEXTACTIVITYELEMENT id="10" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="10" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLNotifiedEvent" value="" id="11" name="notified event">
+<CUSTOM  event="AppC__data_Ready_SC__AppC__data_Ready_SC" params="" variable="x"  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="12" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="13" name="read channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromSCtoD "  />
+<NEXTACTIVITYELEMENT id="15" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="14" name="wait event">
+<CUSTOM  event="AppC__data_Ready_SC__AppC__data_Ready_SC" params=""  />
+<NEXTACTIVITYELEMENT id="13" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="15" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLForLoop" value="" id="16" name="loop">
+<CUSTOM  init="i=0" condition="i&lt;nbOfComputedPackets" increment="i = i +1" isInfinite="false"  />
+<NEXTACTIVITYELEMENT id="1" />
+<NEXTACTIVITYELEMENT id="17" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="17" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ConnectorChoice.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ConnectorChoice.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ee58a0c10c43eb1f3247daecd47c6429aed5ae00
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ConnectorChoice.xml
@@ -0,0 +1,61 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="1" name="choice">
+<CUSTOM  guards="[ ];[ ];"  />
+<NEXTACTIVITYELEMENT id="8" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="2" name="choice">
+<CUSTOM  guards="[ true ];[ true ];"  />
+<NEXTACTIVITYELEMENT id="11" />
+<NEXTACTIVITYELEMENT id="12" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request">
+<CUSTOM  request="AppC__activation" params=""  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event">
+<CUSTOM  event="AppC__reset__AppC__reset" params=""  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="5" name="wait event">
+<CUSTOM  event="AppC__answerToReset__AppC__answerToReset" params=""  />
+<NEXTACTIVITYELEMENT id="6" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="6" name="send event">
+<CUSTOM  event="AppC__pTS__AppC__pTS" params=""  />
+<NEXTACTIVITYELEMENT id="7" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="7" name="wait event">
+<CUSTOM  event="AppC__pTSConfirm__AppC__pTSConfirm" params=""  />
+<NEXTACTIVITYELEMENT id="13" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="8" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromDtoSC "  />
+<NEXTACTIVITYELEMENT id="9" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="9" name="send event">
+<CUSTOM  event="AppC__data_Ready__AppC__data_Ready" params="x,b"  />
+<NEXTACTIVITYELEMENT id="10" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="10" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="11" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="12" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLForLoop" value="" id="13" name="loop">
+<CUSTOM  init="i=0" condition="i&lt;nbOfComputedPackets" increment="i = i +1" isInfinite="false"  />
+<NEXTACTIVITYELEMENT id="1" />
+<NEXTACTIVITYELEMENT id="14" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="14" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ForLoop.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ForLoop.xml
new file mode 100644
index 0000000000000000000000000000000000000000..22d98880ac49d77677d5823aa0c88555daffd3a0
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ForLoop.xml
@@ -0,0 +1,29 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="1" name="send request">
+<CUSTOM  request="AppC__activation" params=""  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event">
+<CUSTOM  event="AppC__reset__AppC__reset" params=""  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="3" name="wait event">
+<CUSTOM  event="AppC__answerToReset__AppC__answerToReset" params=""  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event">
+<CUSTOM  event="AppC__pTS__AppC__pTS" params=""  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="5" name="wait event">
+<CUSTOM  event="AppC__pTSConfirm__AppC__pTSConfirm" params=""  />
+<NEXTACTIVITYELEMENT id="6" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="6" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottom.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ec7277413c327edb8e816284446eaf15ae1b1eb4
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottom.xml
@@ -0,0 +1,561 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="35" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="1" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==10 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="120" />
+<NEXTACTIVITYELEMENT id="136" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="2" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==1 ];[ tcpctrl__state ==3 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="11" />
+<NEXTACTIVITYELEMENT id="12" />
+<NEXTACTIVITYELEMENT id="137" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="3" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==5 ];[ tcpctrl__state == 7 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="117" />
+<NEXTACTIVITYELEMENT id="123" />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="4" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==2 ];[ tcpctrl__state ==4 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="115" />
+<NEXTACTIVITYELEMENT id="114" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="5" name="choice">
+<CUSTOM  guards="[ ];[ ];"  />
+<NEXTACTIVITYELEMENT id="10" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="6" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="107" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="7" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="106" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="8" name="choice">
+<CUSTOM  guards="[ tcpctrl__state  == 4 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="7" />
+<NEXTACTIVITYELEMENT id="135" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="9" name="choice">
+<CUSTOM  guards="[ ];[ ];[ ];"  />
+<NEXTACTIVITYELEMENT id="108" />
+<NEXTACTIVITYELEMENT id="8" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="10" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="109" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="11" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="128" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="12" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="131" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="13" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==6 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="14" />
+<NEXTACTIVITYELEMENT id="104" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="14" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="99" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="15" name="choice">
+<CUSTOM  guards="[ tcpctrl__state == 1 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="66" />
+<NEXTACTIVITYELEMENT id="97" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="16" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="74" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="17" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="68" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="18" name="choice">
+<CUSTOM  guards="[ tcpctrl__state == 5];[ tcpctrl__state ==4 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="27" />
+<NEXTACTIVITYELEMENT id="17" />
+<NEXTACTIVITYELEMENT id="13" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="19" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="64" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="20" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==0 ];[ tcpctrl__state==0 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="62" />
+<NEXTACTIVITYELEMENT id="19" />
+<NEXTACTIVITYELEMENT id="98" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="21" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="88" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="22" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="85" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="23" name="choice">
+<CUSTOM  guards="[ ];[ ];[ ];"  />
+<NEXTACTIVITYELEMENT id="9" />
+<NEXTACTIVITYELEMENT id="20" />
+<NEXTACTIVITYELEMENT id="18" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="24" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="23" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="25" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="87" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="26" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="86" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="27" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="71" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="28" name="choice">
+<CUSTOM  guards="[ tcpctrl__state==0 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="32" />
+<NEXTACTIVITYELEMENT id="46" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="29" name="choice">
+<CUSTOM  guards="[ tcpctrl__a>0 ];[ tcpctrl__a==0 ];"  />
+<NEXTACTIVITYELEMENT id="48" />
+<NEXTACTIVITYELEMENT id="45" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="30" name="choice">
+<CUSTOM  guards="[ true ];[ true ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="25" />
+<NEXTACTIVITYELEMENT id="21" />
+<NEXTACTIVITYELEMENT id="15" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="31" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==4 ];[ tcpctrl__state == 1];[ else ];"  />
+<NEXTACTIVITYELEMENT id="50" />
+<NEXTACTIVITYELEMENT id="22" />
+<NEXTACTIVITYELEMENT id="47" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="32" name="action">
+<CUSTOM  action="tcpctrl__state =1" />
+<NEXTACTIVITYELEMENT id="33" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="33" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="34" name="read channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromPtoT "  />
+<NEXTACTIVITYELEMENT id="24" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLForLoop" value="" id="35" name="loop">
+<CUSTOM  init="i=0" condition="(tcpctrl__a==0)" increment="i = i" isInfinite="false"  />
+<NEXTACTIVITYELEMENT id="38" />
+<NEXTACTIVITYELEMENT id="37" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="36" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="37" name="action">
+<CUSTOM  action="tcpctrl__state=0" />
+<NEXTACTIVITYELEMENT id="36" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLNotifiedEvent" value="" id="38" name="notified event">
+<CUSTOM  event="AppC__abort__AppC__abort" params="" variable="tcpctrl__a"  />
+<NEXTACTIVITYELEMENT id="29" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="39" name="read channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="16" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="40" name="wait event">
+<CUSTOM  event="AppC__timeOut__AppC__timeOut" params=""  />
+<NEXTACTIVITYELEMENT id="39" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="41" name="wait event">
+<CUSTOM  event="AppC__receive__AppC__receive" params=""  />
+<NEXTACTIVITYELEMENT id="34" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="42" name="wait event">
+<CUSTOM  event="AppC__close__AppC__close" params=""  />
+<NEXTACTIVITYELEMENT id="30" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="43" name="wait event">
+<CUSTOM  event="AppC__send_TCP__AppC__send_TCP" params=""  />
+<NEXTACTIVITYELEMENT id="31" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="44" name="wait event">
+<CUSTOM  event="AppC__open__AppC__open" params=""  />
+<NEXTACTIVITYELEMENT id="28" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSelectEvt" value="" id="45" name="select">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="40" />
+<NEXTACTIVITYELEMENT id="41" />
+<NEXTACTIVITYELEMENT id="42" />
+<NEXTACTIVITYELEMENT id="43" />
+<NEXTACTIVITYELEMENT id="44" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="46" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="47" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="48" name="wait event">
+<CUSTOM  event="AppC__abort__AppC__abort" params=""  />
+<NEXTACTIVITYELEMENT id="49" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="49" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="50" name="read channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromAtoT "  />
+<NEXTACTIVITYELEMENT id="26" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="51" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="89" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="52" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="53" name="action">
+<CUSTOM  action="tcpctrl__state =5" />
+<NEXTACTIVITYELEMENT id="83" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="54" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="55" name="action">
+<CUSTOM  action="tcpctrl__state=3" />
+<NEXTACTIVITYELEMENT id="76" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="56" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="92" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="57" name="action">
+<CUSTOM  action="tcpctrl__state =10" />
+<NEXTACTIVITYELEMENT id="81" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="58" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="59" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="91" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="60" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="90" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="61" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="62" name="action">
+<CUSTOM  action="tcpctrl__state =1" />
+<NEXTACTIVITYELEMENT id="63" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="63" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="64" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="94" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="65" name="action">
+<CUSTOM  action="tcpctrl__state =3" />
+<NEXTACTIVITYELEMENT id="61" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="66" name="action">
+<CUSTOM  action="tcpctrl__state =0" />
+<NEXTACTIVITYELEMENT id="67" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="67" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="68" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="95" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="69" name="action">
+<CUSTOM  action="tcpctrl__state =9" />
+<NEXTACTIVITYELEMENT id="70" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="70" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="71" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="96" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="72" name="action">
+<CUSTOM  action="tcpctrl__state =7" />
+<NEXTACTIVITYELEMENT id="73" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="73" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="74" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="93" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="75" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="76" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="77" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="77" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="78" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="78" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="79" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="80" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="80" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="52" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="81" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="82" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="82" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="58" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="83" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="84" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="84" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="54" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="85" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="56" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="86" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="51" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="87" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="59" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="88" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="60" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="89" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="79" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="90" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="57" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="91" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="53" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="92" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="55" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="93" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="75" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="94" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="65" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="95" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="69" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="96" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="72" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="97" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="98" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="99" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="100" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="100" name="action">
+<CUSTOM  action="tcpctrl__state =8" />
+<NEXTACTIVITYELEMENT id="103" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="101" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="102" name="action">
+<CUSTOM  action="tcpctrl__state =0" />
+<NEXTACTIVITYELEMENT id="101" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="103" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="102" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="104" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="105" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="106" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoA "  />
+<NEXTACTIVITYELEMENT id="138" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="107" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="111" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="108" name="send event">
+<CUSTOM  event="AppC__stop__AppC__stop" params=""  />
+<NEXTACTIVITYELEMENT id="139" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="109" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="112" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="110" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="111" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="105" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="112" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="113" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="113" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="110" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="114" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="115" name="action">
+<CUSTOM  action="tcpctrl__state =4" />
+<NEXTACTIVITYELEMENT id="116" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="116" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="117" name="action">
+<CUSTOM  action="tcpctrl__state =6" />
+<NEXTACTIVITYELEMENT id="118" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="118" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="119" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="120" name="action">
+<CUSTOM  action="tcpctrl__state =0" />
+<NEXTACTIVITYELEMENT id="121" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="121" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="122" name="action">
+<CUSTOM  action="tcpctrl__state =0" />
+<NEXTACTIVITYELEMENT id="119" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="123" name="action">
+<CUSTOM  action="tcpctrl__state =8" />
+<NEXTACTIVITYELEMENT id="122" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="124" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="129" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="125" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="126" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="127" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="127" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="130" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="128" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="124" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="129" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="126" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="130" name="action">
+<CUSTOM  action="tcpctrl__state =2" />
+<NEXTACTIVITYELEMENT id="125" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="131" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="134" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="132" name="action">
+<CUSTOM  action="tcpctrl__state =2" />
+<NEXTACTIVITYELEMENT id="133" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="133" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="134" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="132" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="135" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="136" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="137" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="138" name="send event">
+<CUSTOM  event="AppC__receive_Application__AppC__receive_Application" params=""  />
+<NEXTACTIVITYELEMENT id="6" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="139" name="read channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottomRight.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottomRight.xml
new file mode 100644
index 0000000000000000000000000000000000000000..d0e74ad7a1a44bf5103ccc974523e4a5b750a2dd
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottomRight.xml
@@ -0,0 +1,561 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="35" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="1" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==10 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="120" />
+<NEXTACTIVITYELEMENT id="136" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="2" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==1 ];[ tcpctrl__state ==3 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="11" />
+<NEXTACTIVITYELEMENT id="12" />
+<NEXTACTIVITYELEMENT id="137" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="3" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==5 ];[ tcpctrl__state == 7 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="117" />
+<NEXTACTIVITYELEMENT id="123" />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="4" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==2 ];[ tcpctrl__state ==4 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="115" />
+<NEXTACTIVITYELEMENT id="114" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="5" name="choice">
+<CUSTOM  guards="[ ];[ ];"  />
+<NEXTACTIVITYELEMENT id="10" />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="6" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="107" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="7" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="106" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="8" name="choice">
+<CUSTOM  guards="[ tcpctrl__state  == 4 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="7" />
+<NEXTACTIVITYELEMENT id="135" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="9" name="choice">
+<CUSTOM  guards="[ ];[ ];[ ];"  />
+<NEXTACTIVITYELEMENT id="108" />
+<NEXTACTIVITYELEMENT id="8" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="10" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="109" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="11" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="128" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="12" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="131" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="13" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==6 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="14" />
+<NEXTACTIVITYELEMENT id="104" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="14" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="99" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="15" name="choice">
+<CUSTOM  guards="[ tcpctrl__state == 1 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="66" />
+<NEXTACTIVITYELEMENT id="97" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="16" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="74" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="17" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="68" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="18" name="choice">
+<CUSTOM  guards="[ tcpctrl__state == 5];[ tcpctrl__state ==4 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="27" />
+<NEXTACTIVITYELEMENT id="17" />
+<NEXTACTIVITYELEMENT id="13" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="19" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="64" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="20" name="choice">
+<CUSTOM  guards="[ tcpctrl__state ==0 ];[ tcpctrl__state==0 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="62" />
+<NEXTACTIVITYELEMENT id="19" />
+<NEXTACTIVITYELEMENT id="98" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="21" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="88" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="22" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="85" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="23" name="choice">
+<CUSTOM  guards="[ ];[ ];[ ];"  />
+<NEXTACTIVITYELEMENT id="9" />
+<NEXTACTIVITYELEMENT id="20" />
+<NEXTACTIVITYELEMENT id="18" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="24" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="23" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="25" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="87" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="26" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="86" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="27" name="execi">
+<CUSTOM  action="b" />
+<NEXTACTIVITYELEMENT id="71" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="28" name="choice">
+<CUSTOM  guards="[ tcpctrl__state==0 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="32" />
+<NEXTACTIVITYELEMENT id="46" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="29" name="choice">
+<CUSTOM  guards="[ tcpctrl__a>0 ];[ tcpctrl__a==0 ];"  />
+<NEXTACTIVITYELEMENT id="48" />
+<NEXTACTIVITYELEMENT id="45" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="30" name="choice">
+<CUSTOM  guards="[ (tcpctrl__state ==2) or (tcpctrl__state ==4) ];[ tcpctrl__state ==9 ];[ else ];"  />
+<NEXTACTIVITYELEMENT id="25" />
+<NEXTACTIVITYELEMENT id="21" />
+<NEXTACTIVITYELEMENT id="15" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="31" name="choice">
+<CUSTOM  guards="[ true ];[ true ];[ true ];"  />
+<NEXTACTIVITYELEMENT id="50" />
+<NEXTACTIVITYELEMENT id="22" />
+<NEXTACTIVITYELEMENT id="47" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="32" name="action">
+<CUSTOM  action="tcpctrl__state =1" />
+<NEXTACTIVITYELEMENT id="33" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="33" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="34" name="read channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromPtoT "  />
+<NEXTACTIVITYELEMENT id="24" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLForLoop" value="" id="35" name="loop">
+<CUSTOM  init="i=0" condition="(tcpctrl__a==0)" increment="i = i" isInfinite="false"  />
+<NEXTACTIVITYELEMENT id="38" />
+<NEXTACTIVITYELEMENT id="37" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="36" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="37" name="action">
+<CUSTOM  action="tcpctrl__state=0" />
+<NEXTACTIVITYELEMENT id="36" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLNotifiedEvent" value="" id="38" name="notified event">
+<CUSTOM  event="AppC__abort__AppC__abort" params="" variable="tcpctrl__a"  />
+<NEXTACTIVITYELEMENT id="29" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="39" name="read channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="16" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="40" name="wait event">
+<CUSTOM  event="AppC__timeOut__AppC__timeOut" params=""  />
+<NEXTACTIVITYELEMENT id="39" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="41" name="wait event">
+<CUSTOM  event="AppC__receive__AppC__receive" params=""  />
+<NEXTACTIVITYELEMENT id="34" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="42" name="wait event">
+<CUSTOM  event="AppC__close__AppC__close" params=""  />
+<NEXTACTIVITYELEMENT id="30" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="43" name="wait event">
+<CUSTOM  event="AppC__send_TCP__AppC__send_TCP" params=""  />
+<NEXTACTIVITYELEMENT id="31" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="44" name="wait event">
+<CUSTOM  event="AppC__open__AppC__open" params=""  />
+<NEXTACTIVITYELEMENT id="28" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSelectEvt" value="" id="45" name="select">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="40" />
+<NEXTACTIVITYELEMENT id="41" />
+<NEXTACTIVITYELEMENT id="42" />
+<NEXTACTIVITYELEMENT id="43" />
+<NEXTACTIVITYELEMENT id="44" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="46" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="47" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="48" name="wait event">
+<CUSTOM  event="AppC__abort__AppC__abort" params=""  />
+<NEXTACTIVITYELEMENT id="49" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="49" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="50" name="read channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromAtoT "  />
+<NEXTACTIVITYELEMENT id="26" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="51" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="89" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="52" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="53" name="action">
+<CUSTOM  action="tcpctrl__state =5" />
+<NEXTACTIVITYELEMENT id="83" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="54" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="55" name="action">
+<CUSTOM  action="tcpctrl__state=3" />
+<NEXTACTIVITYELEMENT id="76" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="56" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="92" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="57" name="action">
+<CUSTOM  action="tcpctrl__state =10" />
+<NEXTACTIVITYELEMENT id="81" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="58" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="59" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="91" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="60" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="90" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="61" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="62" name="action">
+<CUSTOM  action="tcpctrl__state =1" />
+<NEXTACTIVITYELEMENT id="63" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="63" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="64" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="94" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="65" name="action">
+<CUSTOM  action="tcpctrl__state =3" />
+<NEXTACTIVITYELEMENT id="61" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="66" name="action">
+<CUSTOM  action="tcpctrl__state =0" />
+<NEXTACTIVITYELEMENT id="67" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="67" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="68" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="95" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="69" name="action">
+<CUSTOM  action="tcpctrl__state =9" />
+<NEXTACTIVITYELEMENT id="70" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="70" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="71" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="96" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="72" name="action">
+<CUSTOM  action="tcpctrl__state =7" />
+<NEXTACTIVITYELEMENT id="73" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="73" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="74" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="93" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="75" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="76" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="77" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="77" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="78" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="78" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="79" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="80" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="80" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="52" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="81" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="82" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="82" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="58" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="83" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="84" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="84" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="54" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="85" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="56" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="86" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="51" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="87" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="59" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="88" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="60" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="89" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="79" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="90" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="57" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="91" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="53" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="92" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="55" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="93" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="75" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="94" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="65" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="95" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="69" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="96" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="72" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="97" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="98" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="99" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="100" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="100" name="action">
+<CUSTOM  action="tcpctrl__state =8" />
+<NEXTACTIVITYELEMENT id="103" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="101" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="102" name="action">
+<CUSTOM  action="tcpctrl__state =0" />
+<NEXTACTIVITYELEMENT id="101" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="103" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="102" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="104" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="105" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="106" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoA "  />
+<NEXTACTIVITYELEMENT id="138" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="107" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="111" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="108" name="send event">
+<CUSTOM  event="AppC__stop__AppC__stop" params=""  />
+<NEXTACTIVITYELEMENT id="139" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="109" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="112" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="110" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="111" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="105" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="112" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="113" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="113" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="110" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="114" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="115" name="action">
+<CUSTOM  action="tcpctrl__state =4" />
+<NEXTACTIVITYELEMENT id="116" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="116" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="117" name="action">
+<CUSTOM  action="tcpctrl__state =6" />
+<NEXTACTIVITYELEMENT id="118" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="118" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="119" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="120" name="action">
+<CUSTOM  action="tcpctrl__state =0" />
+<NEXTACTIVITYELEMENT id="121" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="121" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="122" name="action">
+<CUSTOM  action="tcpctrl__state =0" />
+<NEXTACTIVITYELEMENT id="119" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="123" name="action">
+<CUSTOM  action="tcpctrl__state =8" />
+<NEXTACTIVITYELEMENT id="122" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="124" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="129" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="125" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="126" name="send request">
+<CUSTOM  request="AppC__req_Timer" params=""  />
+<NEXTACTIVITYELEMENT id="127" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="127" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="130" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="128" name="action">
+<CUSTOM  action="seqNum=seqNum+wind" />
+<NEXTACTIVITYELEMENT id="124" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="129" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="126" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="130" name="action">
+<CUSTOM  action="tcpctrl__state =2" />
+<NEXTACTIVITYELEMENT id="125" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="131" name="write channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__fromTtoP "  />
+<NEXTACTIVITYELEMENT id="134" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="132" name="action">
+<CUSTOM  action="tcpctrl__state =2" />
+<NEXTACTIVITYELEMENT id="133" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="133" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="134" name="send event">
+<CUSTOM  event="AppC__send__AppC__send" params=""  />
+<NEXTACTIVITYELEMENT id="132" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="135" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="136" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="137" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="138" name="send event">
+<CUSTOM  event="AppC__receive_Application__AppC__receive_Application" params=""  />
+<NEXTACTIVITYELEMENT id="6" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="139" name="read channel">
+<CUSTOM  nbOfSamples="1"  channels="AppC__temp "  />
+<NEXTACTIVITYELEMENT id="5" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ForLoopAfterStart.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ForLoopAfterStart.xml
new file mode 100644
index 0000000000000000000000000000000000000000..7479397f0f2202943bfecfca5fb690378645f589
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ForLoopAfterStart.xml
@@ -0,0 +1,13 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="2" name="action">
+<CUSTOM  action="tcpctrl__state=0" />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Chip2Octet_Disable_ExecC.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Chip2Octet_Disable_ExecC.xml
new file mode 100644
index 0000000000000000000000000000000000000000..706ae6f37486134961ceb73781f29e69ea8b0460
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Chip2Octet_Disable_ExecC.xml
@@ -0,0 +1,21 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="1" name="read channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in "  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in "  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ExecI.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ExecI.xml
new file mode 100644
index 0000000000000000000000000000000000000000..84b8bcd6405104de27303c3ae18a0e704b089be9
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ExecI.xml
@@ -0,0 +1,17 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="2" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in "  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="3" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ReadRequestArg.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ReadRequestArg.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a9555fc44af24ca8919929de5093707ad2f48cc1
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ReadRequestArg.xml
@@ -0,0 +1,17 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in "  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_WriteChannel.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_WriteChannel.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6d3ff961e140db7b6633a619536b6f03392732aa
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_WriteChannel.xml
@@ -0,0 +1,17 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="3" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Symbol2ChipSeq_Disable_ReadChannel.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Symbol2ChipSeq_Disable_ReadChannel.xml
new file mode 100644
index 0000000000000000000000000000000000000000..756b85ad30cd16cad7e5c82f6f7b75d1db25fbe0
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Symbol2ChipSeq_Disable_ReadChannel.xml
@@ -0,0 +1,21 @@
+<ACTIVITY first="0">
+<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start">
+<CUSTOM  />
+<NEXTACTIVITYELEMENT id="4" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc">
+<CUSTOM  action="size" />
+<NEXTACTIVITYELEMENT id="3" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state">
+<CUSTOM  />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel">
+<CUSTOM  nbOfSamples="size"  channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in "  />
+<NEXTACTIVITYELEMENT id="2" />
+</ACTIVITYELEMENT>
+<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args">
+<CUSTOM  action="size = arg1__req" />
+<NEXTACTIVITYELEMENT id="1" />
+</ACTIVITYELEMENT>
+</ACTIVITY>
diff --git a/ttool/src/test/resources/ui/diagram2tml/input/SmartCardProtocol.xml b/ttool/src/test/resources/ui/diagram2tml/input/SmartCardProtocol.xml
new file mode 100644
index 0000000000000000000000000000000000000000..745f29ca72e6e06344d46fa433e4bbfc42836353
--- /dev/null
+++ b/ttool/src/test/resources/ui/diagram2tml/input/SmartCardProtocol.xml
@@ -0,0 +1,6916 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<TURTLEGMODELING version="1.0beta">
+
+<Modeling type="TML Component Design" nameTab="AppC" >
+<TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="0" maxX="1724" minY="0" maxY="916" channels="true" events="true" requests="true" zoom="1.0000000000000018" >
+<CONNECTOR type="126" id="1" >
+<cdparam x="522" y="390" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="522" y="390" id="60" />
+<P2  x="468" y="336" id="39" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="2" >
+<cdparam x="409" y="124" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="402" y="84" id="37" />
+<P2  x="593" y="85" id="186" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="3" >
+<cdparam x="652" y="444" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="816" y="554" id="89" />
+<P2  x="971" y="502" id="152" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="4" >
+<cdparam x="652" y="418" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="816" y="522" id="87" />
+<P2  x="922" y="482" id="154" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="5" >
+<cdparam x="602" y="327" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="752" y="408" id="79" />
+<P2  x="831" y="376" id="103" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="6" >
+<cdparam x="685" y="310" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="857" y="376" id="107" />
+<P2  x="922" y="368" id="144" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="7" >
+<cdparam x="652" y="395" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="816" y="493" id="83" />
+<P2  x="922" y="459" id="146" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="8" >
+<cdparam x="652" y="369" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="816" y="461" id="85" />
+<P2  x="922" y="432" id="148" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="9" >
+<cdparam x="737" y="314" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="922" y="403" id="150" />
+<P2  x="816" y="432" id="81" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="10" >
+<cdparam x="735" y="260" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="919" y="336" id="142" />
+<P2  x="749" y="284" id="198" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="11" >
+<cdparam x="641" y="230" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="749" y="248" id="200" />
+<P2  x="919" y="297" id="140" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="12" >
+<cdparam x="641" y="195" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="749" y="204" id="202" />
+<P2  x="919" y="254" id="138" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="13" >
+<cdparam x="740" y="353" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="831" y="376" id="102" />
+<P2  x="749" y="315" id="204" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="14" >
+<cdparam x="460" y="270" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="522" y="304" id="194" />
+<P2  x="468" y="304" id="45" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="15" >
+<cdparam x="387" y="129" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="466" y="127" id="49" />
+<P2  x="525" y="127" id="206" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="16" >
+<cdparam x="389" y="200" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="468" y="216" id="43" />
+<P2  x="522" y="216" id="192" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="17" >
+<cdparam x="460" y="236" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="522" y="261" id="190" />
+<P2  x="468" y="261" id="41" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="18" >
+<cdparam x="460" y="296" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="536" y="349" id="188" />
+<P2  x="548" y="390" id="65" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="19" >
+<cdparam x="389" y="163" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="468" y="170" id="47" />
+<P2  x="522" y="170" id="196" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="20" >
+<cdparam x="967" y="190" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" />
+<P1  x="919" y="204" id="136" />
+<P2  x="749" y="125" id="184" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="21" >
+<cdparam x="1028" y="535" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" />
+<P1  x="630" y="347" id="208" />
+<P2  x="671" y="408" id="91" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="22" >
+<cdparam x="1304" y="321" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" />
+<P1  x="1224" y="379" id="121" />
+<P2  x="1180" y="386" id="156" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="23" >
+<cdparam x="1168" y="455" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" />
+<P1  x="1180" y="421" id="158" />
+<P2  x="1224" y="414" id="123" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="26" >
+<cdparam x="1037" y="180" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" />
+<P1  x="1180" y="214" id="160" />
+<P2  x="1180" y="282" id="162" />
+<Point x="1224" y="226" />
+<Point x="1224" y="266" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="24" >
+<father id="26" num="0" />
+<cdparam x="1224" y="226" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="25" >
+<father id="26" num="1" />
+<cdparam x="1224" y="266" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="126" id="27" >
+<cdparam x="873" y="361" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" />
+<P1  x="1180" y="461" id="164" />
+<P2  x="1224" y="442" id="125" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<COMPONENT type="1205" id="36" >
+<cdparam x="1152" y="505" />
+<sizeparam width="206" height="105" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1725" minY="0" maxY="917" />
+<infoparam name="Record component" value="TCP_CTRL" />
+<TGConnectingPoint num="0" id="28" />
+<TGConnectingPoint num="1" id="29" />
+<TGConnectingPoint num="2" id="30" />
+<TGConnectingPoint num="3" id="31" />
+<TGConnectingPoint num="4" id="32" />
+<TGConnectingPoint num="5" id="33" />
+<TGConnectingPoint num="6" id="34" />
+<TGConnectingPoint num="7" id="35" />
+<extraparam>
+<Attribute access="2" id="a" value="" type="0" typeOther="" />
+<Attribute access="2" id="state" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1202" id="59" >
+<cdparam x="164" y="97" />
+<sizeparam width="291" height="277" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1725" minY="0" maxY="917" />
+<infoparam name="TGComponent" value="InterfaceDevice" />
+<TGConnectingPoint num="0" id="51" />
+<TGConnectingPoint num="1" id="52" />
+<TGConnectingPoint num="2" id="53" />
+<TGConnectingPoint num="3" id="54" />
+<TGConnectingPoint num="4" id="55" />
+<TGConnectingPoint num="5" id="56" />
+<TGConnectingPoint num="6" id="57" />
+<TGConnectingPoint num="7" id="58" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="resetType" value="0" type="0" typeOther="" />
+<Attribute access="2" id="x" value="0" type="0" typeOther="" />
+<Attribute access="2" id="i" value="0" type="0" typeOther="" />
+<Attribute access="2" id="nbOfComputedPackets" value="1" type="0" typeOther="" />
+<Attribute access="2" id="b" value="" type="4" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1203" id="38" >
+<father id="59" num="0" />
+<cdparam x="389" y="84" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" />
+<infoparam name="TGComponent" value="Event reset, pTS" />
+<TGConnectingPoint num="0" id="37" />
+<extraparam>
+<Prop commName="reset, pTS" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="40" >
+<father id="59" num="1" />
+<cdparam x="442" y="323" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" />
+<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" />
+<TGConnectingPoint num="0" id="39" />
+<extraparam>
+<Prop commName="answerToReset, pTSConfirm" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="42" >
+<father id="59" num="2" />
+<cdparam x="442" y="248" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" />
+<infoparam name="TGComponent" value="Channel fromSCtoD" />
+<TGConnectingPoint num="0" id="41" />
+<extraparam>
+<Prop commName="fromSCtoD" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="44" >
+<father id="59" num="3" />
+<cdparam x="442" y="203" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" />
+<infoparam name="TGComponent" value="Channel fromDtoSC" />
+<TGConnectingPoint num="0" id="43" />
+<extraparam>
+<Prop commName="fromDtoSC" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="46" >
+<father id="59" num="4" />
+<cdparam x="442" y="291" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" />
+<infoparam name="TGComponent" value="Event data_Ready_SC" />
+<TGConnectingPoint num="0" id="45" />
+<extraparam>
+<Prop commName="data_Ready_SC" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="48" >
+<father id="59" num="5" />
+<cdparam x="442" y="157" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" />
+<infoparam name="TGComponent" value="Event data_Ready" />
+<TGConnectingPoint num="0" id="47" />
+<extraparam>
+<Prop commName="data_Ready" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="2" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="50" >
+<father id="59" num="6" />
+<cdparam x="445" y="117" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="281" minY="-10" maxY="267" />
+<infoparam name="TGComponent" value="Request activation" />
+<TGConnectingPoint num="0" id="49" />
+<extraparam>
+<Prop commName="activation" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1200" id="227" >
+<cdparam x="535" y="94" />
+<sizeparam width="936" height="530" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1725" minY="0" maxY="917" />
+<infoparam name="TGComponent" value="SmartCard" />
+<TGConnectingPoint num="0" id="219" />
+<TGConnectingPoint num="1" id="220" />
+<TGConnectingPoint num="2" id="221" />
+<TGConnectingPoint num="3" id="222" />
+<TGConnectingPoint num="4" id="223" />
+<TGConnectingPoint num="5" id="224" />
+<TGConnectingPoint num="6" id="225" />
+<TGConnectingPoint num="7" id="226" />
+<extraparam>
+<info hiddeni="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1201" id="78" >
+<father id="227" num="0" />
+<cdparam x="522" y="377" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="923" minY="-13" maxY="517" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="60" />
+<TGConnectingPoint num="1" id="61" />
+<TGConnectingPoint num="2" id="62" />
+<TGConnectingPoint num="3" id="63" />
+<TGConnectingPoint num="4" id="64" />
+<TGConnectingPoint num="5" id="65" />
+<TGConnectingPoint num="6" id="66" />
+<TGConnectingPoint num="7" id="67" />
+<TGConnectingPoint num="8" id="68" />
+<TGConnectingPoint num="9" id="69" />
+<TGConnectingPoint num="10" id="70" />
+<TGConnectingPoint num="11" id="71" />
+<TGConnectingPoint num="12" id="72" />
+<TGConnectingPoint num="13" id="73" />
+<TGConnectingPoint num="14" id="74" />
+<TGConnectingPoint num="15" id="75" />
+<TGConnectingPoint num="16" id="76" />
+<TGConnectingPoint num="17" id="77" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="101" >
+<father id="227" num="1" />
+<cdparam x="565" y="418" />
+<sizeparam width="240" height="146" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="696" minY="0" maxY="384" />
+<infoparam name="TGComponent" value="Application" />
+<TGConnectingPoint num="0" id="93" />
+<TGConnectingPoint num="1" id="94" />
+<TGConnectingPoint num="2" id="95" />
+<TGConnectingPoint num="3" id="96" />
+<TGConnectingPoint num="4" id="97" />
+<TGConnectingPoint num="5" id="98" />
+<TGConnectingPoint num="6" id="99" />
+<TGConnectingPoint num="7" id="100" />
+<extraparam>
+<Data isAttacker="No" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="80" >
+<father id="101" num="0" />
+<cdparam x="742" y="408" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" />
+<infoparam name="TGComponent" value="Request start_TCP_IP" />
+<TGConnectingPoint num="0" id="79" />
+<extraparam>
+<Prop commName="start_TCP_IP" commType="2" origin="true" finite="false" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="82" >
+<father id="101" num="1" />
+<cdparam x="795" y="422" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" />
+<infoparam name="TGComponent" value="Channel fromTtoA" />
+<TGConnectingPoint num="0" id="81" />
+<extraparam>
+<Prop commName="fromTtoA" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="84" >
+<father id="101" num="2" />
+<cdparam x="795" y="483" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" />
+<infoparam name="TGComponent" value="Event send_TCP" />
+<TGConnectingPoint num="0" id="83" />
+<extraparam>
+<Prop commName="send_TCP" commType="1" origin="true" finite="false" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="86" >
+<father id="101" num="3" />
+<cdparam x="795" y="451" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" />
+<infoparam name="TGComponent" value="Event open, abort, close" />
+<TGConnectingPoint num="0" id="85" />
+<extraparam>
+<Prop commName="open, abort, close" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="88" >
+<father id="101" num="4" />
+<cdparam x="795" y="512" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" />
+<infoparam name="TGComponent" value="Event receive_Application" />
+<TGConnectingPoint num="0" id="87" />
+<extraparam>
+<Prop commName="receive_Application" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="90" >
+<father id="101" num="5" />
+<cdparam x="795" y="544" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" />
+<infoparam name="TGComponent" value="Channel fromAtoT" />
+<TGConnectingPoint num="0" id="89" />
+<extraparam>
+<Prop commName="fromAtoT" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="92" >
+<father id="101" num="6" />
+<cdparam x="661" y="408" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" />
+<infoparam name="TGComponent" value="Request start_Application" />
+<TGConnectingPoint num="0" id="91" />
+<extraparam>
+<Prop commName="start_Application" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1200" id="183" >
+<father id="227" num="2" />
+<cdparam x="844" y="134" />
+<sizeparam width="570" height="486" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="366" minY="0" maxY="44" />
+<infoparam name="TGComponent" value="TCPIP Entities" />
+<TGConnectingPoint num="0" id="175" />
+<TGConnectingPoint num="1" id="176" />
+<TGConnectingPoint num="2" id="177" />
+<TGConnectingPoint num="3" id="178" />
+<TGConnectingPoint num="4" id="179" />
+<TGConnectingPoint num="5" id="180" />
+<TGConnectingPoint num="6" id="181" />
+<TGConnectingPoint num="7" id="182" />
+<extraparam>
+<info hiddeni="false" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="120" >
+<father id="183" num="0" />
+<cdparam x="831" y="363" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="557" minY="-13" maxY="473" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="102" />
+<TGConnectingPoint num="1" id="103" />
+<TGConnectingPoint num="2" id="104" />
+<TGConnectingPoint num="3" id="105" />
+<TGConnectingPoint num="4" id="106" />
+<TGConnectingPoint num="5" id="107" />
+<TGConnectingPoint num="6" id="108" />
+<TGConnectingPoint num="7" id="109" />
+<TGConnectingPoint num="8" id="110" />
+<TGConnectingPoint num="9" id="111" />
+<TGConnectingPoint num="10" id="112" />
+<TGConnectingPoint num="11" id="113" />
+<TGConnectingPoint num="12" id="114" />
+<TGConnectingPoint num="13" id="115" />
+<TGConnectingPoint num="14" id="116" />
+<TGConnectingPoint num="15" id="117" />
+<TGConnectingPoint num="16" id="118" />
+<TGConnectingPoint num="17" id="119" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="135" >
+<father id="183" num="1" />
+<cdparam x="1234" y="329" />
+<sizeparam width="141" height="142" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="429" minY="0" maxY="344" />
+<infoparam name="TGComponent" value="Timer" />
+<TGConnectingPoint num="0" id="127" />
+<TGConnectingPoint num="1" id="128" />
+<TGConnectingPoint num="2" id="129" />
+<TGConnectingPoint num="3" id="130" />
+<TGConnectingPoint num="4" id="131" />
+<TGConnectingPoint num="5" id="132" />
+<TGConnectingPoint num="6" id="133" />
+<TGConnectingPoint num="7" id="134" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="x" value="0" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="122" >
+<father id="135" num="0" />
+<cdparam x="1224" y="369" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="131" minY="-10" maxY="132" />
+<infoparam name="TGComponent" value="Event timeOut" />
+<TGConnectingPoint num="0" id="121" />
+<extraparam>
+<Prop commName="timeOut" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="124" >
+<father id="135" num="1" />
+<cdparam x="1224" y="404" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="131" minY="-10" maxY="132" />
+<infoparam name="TGComponent" value="Request req_Timer" />
+<TGConnectingPoint num="0" id="123" />
+<extraparam>
+<Prop commName="req_Timer" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="126" >
+<father id="135" num="2" />
+<cdparam x="1224" y="432" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="131" minY="-10" maxY="132" />
+<infoparam name="TGComponent" value="Event stop" />
+<TGConnectingPoint num="0" id="125" />
+<extraparam>
+<Prop commName="stop" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="174" >
+<father id="183" num="2" />
+<cdparam x="932" y="173" />
+<sizeparam width="237" height="318" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="333" minY="0" maxY="168" />
+<infoparam name="TGComponent" value="TCPIP" />
+<TGConnectingPoint num="0" id="166" />
+<TGConnectingPoint num="1" id="167" />
+<TGConnectingPoint num="2" id="168" />
+<TGConnectingPoint num="3" id="169" />
+<TGConnectingPoint num="4" id="170" />
+<TGConnectingPoint num="5" id="171" />
+<TGConnectingPoint num="6" id="172" />
+<TGConnectingPoint num="7" id="173" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="wind" value="64" type="0" typeOther="" />
+<Attribute access="2" id="seqNum" value="0" type="0" typeOther="" />
+<Attribute access="2" id="i" value="" type="0" typeOther="" />
+<Attribute access="2" id="j" value="" type="0" typeOther="" />
+<Attribute access="2" id="a" value="0" type="0" typeOther="" />
+<Attribute access="2" id="b" value="0" type="0" typeOther="" />
+<Attribute access="2" id="tcpctrl" value="" type="5" typeOther="TCP_CTRL" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="137" >
+<father id="174" num="0" />
+<cdparam x="919" y="191" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" />
+<infoparam name="TGComponent" value="Event send" />
+<TGConnectingPoint num="0" id="136" />
+<extraparam>
+<Prop commName="send" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="139" >
+<father id="174" num="1" />
+<cdparam x="919" y="241" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" />
+<infoparam name="TGComponent" value="Event receive" />
+<TGConnectingPoint num="0" id="138" />
+<extraparam>
+<Prop commName="receive" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="141" >
+<father id="174" num="2" />
+<cdparam x="919" y="284" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" />
+<infoparam name="TGComponent" value="Channel fromPtoT" />
+<TGConnectingPoint num="0" id="140" />
+<extraparam>
+<Prop commName="fromPtoT" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="143" >
+<father id="174" num="3" />
+<cdparam x="919" y="323" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" />
+<infoparam name="TGComponent" value="Channel fromTtoP" />
+<TGConnectingPoint num="0" id="142" />
+<extraparam>
+<Prop commName="fromTtoP" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="145" >
+<father id="174" num="4" />
+<cdparam x="922" y="358" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Request start_TCP_IP" />
+<TGConnectingPoint num="0" id="144" />
+<extraparam>
+<Prop commName="start_TCP_IP" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="147" >
+<father id="174" num="5" />
+<cdparam x="922" y="449" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Event send_TCP" />
+<TGConnectingPoint num="0" id="146" />
+<extraparam>
+<Prop commName="send_TCP" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="149" >
+<father id="174" num="6" />
+<cdparam x="922" y="422" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Event open, abort, close" />
+<TGConnectingPoint num="0" id="148" />
+<extraparam>
+<Prop commName="open, abort, close" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="151" >
+<father id="174" num="7" />
+<cdparam x="922" y="393" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Channel fromTtoA" />
+<TGConnectingPoint num="0" id="150" />
+<extraparam>
+<Prop commName="fromTtoA" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="153" >
+<father id="174" num="8" />
+<cdparam x="961" y="481" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Channel fromAtoT" />
+<TGConnectingPoint num="0" id="152" />
+<extraparam>
+<Prop commName="fromAtoT" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="155" >
+<father id="174" num="9" />
+<cdparam x="922" y="472" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Event receive_Application" />
+<TGConnectingPoint num="0" id="154" />
+<extraparam>
+<Prop commName="receive_Application" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="157" >
+<father id="174" num="10" />
+<cdparam x="1159" y="376" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Event timeOut" />
+<TGConnectingPoint num="0" id="156" />
+<extraparam>
+<Prop commName="timeOut" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="159" >
+<father id="174" num="11" />
+<cdparam x="1159" y="411" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Request req_Timer" />
+<TGConnectingPoint num="0" id="158" />
+<extraparam>
+<Prop commName="req_Timer" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="161" >
+<father id="174" num="12" />
+<cdparam x="1159" y="204" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Channel temp" />
+<TGConnectingPoint num="0" id="160" />
+<extraparam>
+<Prop commName="temp" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="163" >
+<father id="174" num="13" />
+<cdparam x="1159" y="272" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Channel temp" />
+<TGConnectingPoint num="0" id="162" />
+<extraparam>
+<Prop commName="temp" commType="0" origin="false" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="165" >
+<father id="174" num="14" />
+<cdparam x="1159" y="451" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" />
+<infoparam name="TGComponent" value="Event stop" />
+<TGConnectingPoint num="0" id="164" />
+<extraparam>
+<Prop commName="stop" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="218" >
+<father id="227" num="3" />
+<cdparam x="535" y="98" />
+<sizeparam width="201" height="238" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="735" minY="0" maxY="292" />
+<infoparam name="TGComponent" value="SmartCard" />
+<TGConnectingPoint num="0" id="210" />
+<TGConnectingPoint num="1" id="211" />
+<TGConnectingPoint num="2" id="212" />
+<TGConnectingPoint num="3" id="213" />
+<TGConnectingPoint num="4" id="214" />
+<TGConnectingPoint num="5" id="215" />
+<TGConnectingPoint num="6" id="216" />
+<TGConnectingPoint num="7" id="217" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="resetType" value="0" type="0" typeOther="" />
+<Attribute access="2" id="a" value="0" type="0" typeOther="" />
+<Attribute access="2" id="b" value="" type="4" typeOther="" />
+<Attribute access="2" id="i" value="0" type="0" typeOther="" />
+<Attribute access="2" id="j" value="0" type="0" typeOther="" />
+<Attribute access="2" id="x" value="0" type="0" typeOther="" />
+<Attribute access="2" id="tcpctrl" value="" type="5" typeOther="TCP_CTRL" />
+<Attribute access="2" id="t" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="185" >
+<father id="218" num="0" />
+<cdparam x="723" y="112" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Event send" />
+<TGConnectingPoint num="0" id="184" />
+<extraparam>
+<Prop commName="send" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="187" >
+<father id="218" num="1" />
+<cdparam x="580" y="85" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Event reset, pTS" />
+<TGConnectingPoint num="0" id="186" />
+<extraparam>
+<Prop commName="reset, pTS" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="189" >
+<father id="218" num="2" />
+<cdparam x="523" y="323" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" />
+<TGConnectingPoint num="0" id="188" />
+<extraparam>
+<Prop commName="answerToReset, pTSConfirm" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="191" >
+<father id="218" num="3" />
+<cdparam x="522" y="248" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Channel fromSCtoD" />
+<TGConnectingPoint num="0" id="190" />
+<extraparam>
+<Prop commName="fromSCtoD" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="193" >
+<father id="218" num="4" />
+<cdparam x="522" y="203" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Channel fromDtoSC" />
+<TGConnectingPoint num="0" id="192" />
+<extraparam>
+<Prop commName="fromDtoSC" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="195" >
+<father id="218" num="5" />
+<cdparam x="522" y="291" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Event data_Ready_SC" />
+<TGConnectingPoint num="0" id="194" />
+<extraparam>
+<Prop commName="data_Ready_SC" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="197" >
+<father id="218" num="6" />
+<cdparam x="522" y="157" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Event data_Ready" />
+<TGConnectingPoint num="0" id="196" />
+<extraparam>
+<Prop commName="data_Ready" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="2" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="199" >
+<father id="218" num="7" />
+<cdparam x="723" y="271" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Channel fromTtoP" />
+<TGConnectingPoint num="0" id="198" />
+<extraparam>
+<Prop commName="fromTtoP" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="201" >
+<father id="218" num="8" />
+<cdparam x="723" y="235" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Channel fromPtoT" />
+<TGConnectingPoint num="0" id="200" />
+<extraparam>
+<Prop commName="fromPtoT" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="203" >
+<father id="218" num="9" />
+<cdparam x="723" y="191" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Event receive" />
+<TGConnectingPoint num="0" id="202" />
+<extraparam>
+<Prop commName="receive" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="205" >
+<father id="218" num="10" />
+<cdparam x="723" y="302" />
+<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" />
+<infoparam name="TGComponent" value="Request start_TCP_IP" />
+<TGConnectingPoint num="0" id="204" />
+<extraparam>
+<Prop commName="start_TCP_IP" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="207" >
+<father id="218" num="11" />
+<cdparam x="525" y="117" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="191" minY="-10" maxY="228" />
+<infoparam name="TGComponent" value="Request activation" />
+<TGConnectingPoint num="0" id="206" />
+<extraparam>
+<Prop commName="activation" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="209" >
+<father id="218" num="12" />
+<cdparam x="620" y="326" />
+<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-10" maxX="191" minY="-10" maxY="228" />
+<infoparam name="TGComponent" value="Request start_Application" />
+<TGConnectingPoint num="0" id="208" />
+<extraparam>
+<Prop commName="start_Application" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+
+
+</TMLComponentTaskDiagramPanel>
+
+<TMLActivityDiagramPanel name="InterfaceDevice" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1012" id="235" >
+<cdparam x="553" y="376" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="231" />
+<TGConnectingPoint num="1" id="232" />
+<TGConnectingPoint num="2" id="233" />
+<TGConnectingPoint num="3" id="234" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="228" >
+<father id="235" num="0" />
+<cdparam x="528" y="386" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="229" >
+<father id="235" num="1" />
+<cdparam x="588" y="386" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="230" >
+<father id="235" num="2" />
+<cdparam x="573" y="421" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="243" >
+<cdparam x="644" y="517" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="239" />
+<TGConnectingPoint num="1" id="240" />
+<TGConnectingPoint num="2" id="241" />
+<TGConnectingPoint num="3" id="242" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="236" >
+<father id="243" num="0" />
+<cdparam x="599" y="527" />
+<sizeparam width="52" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ x==0 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="237" >
+<father id="243" num="1" />
+<cdparam x="679" y="527" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="238" >
+<father id="243" num="2" />
+<cdparam x="664" y="562" />
+<sizeparam width="42" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ x&gt;0 ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1000" id="245" >
+<cdparam x="222" y="58" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="244" />
+</COMPONENT>
+
+<COMPONENT type="1007" id="248" >
+<cdparam x="188" y="137" />
+<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="activation()" />
+<TGConnectingPoint num="0" id="246" />
+<TGConnectingPoint num="1" id="247" />
+<extraparam>
+<Data requestName="activation" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="251" >
+<cdparam x="202" y="237" />
+<sizeparam width="53" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="reset()" />
+<TGConnectingPoint num="0" id="249" />
+<TGConnectingPoint num="1" id="250" />
+<latencyCheck />
+<extraparam>
+<Data eventName="reset" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="254" >
+<cdparam x="167" y="288" />
+<sizeparam width="120" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="answerToReset() " />
+<TGConnectingPoint num="0" id="252" />
+<TGConnectingPoint num="1" id="253" />
+<extraparam>
+<Data eventName="answerToReset" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="257" >
+<cdparam x="207" y="337" />
+<sizeparam width="43" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="pTS()" />
+<TGConnectingPoint num="0" id="255" />
+<TGConnectingPoint num="1" id="256" />
+<extraparam>
+<Data eventName="pTS" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="260" >
+<cdparam x="356" y="165" />
+<sizeparam width="94" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="pTSConfirm() " />
+<TGConnectingPoint num="0" id="258" />
+<TGConnectingPoint num="1" id="259" />
+<latencyCheck />
+<breakpoint />
+<extraparam>
+<Data eventName="pTSConfirm" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="277" >
+<cdparam x="367" y="222" />
+<sizeparam width="114" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="data exchange
+" />
+<TGConnectingPoint num="0" id="261" />
+<TGConnectingPoint num="1" id="262" />
+<TGConnectingPoint num="2" id="263" />
+<TGConnectingPoint num="3" id="264" />
+<TGConnectingPoint num="4" id="265" />
+<TGConnectingPoint num="5" id="266" />
+<TGConnectingPoint num="6" id="267" />
+<TGConnectingPoint num="7" id="268" />
+<TGConnectingPoint num="8" id="269" />
+<TGConnectingPoint num="9" id="270" />
+<TGConnectingPoint num="10" id="271" />
+<TGConnectingPoint num="11" id="272" />
+<TGConnectingPoint num="12" id="273" />
+<TGConnectingPoint num="13" id="274" />
+<TGConnectingPoint num="14" id="275" />
+<TGConnectingPoint num="15" id="276" />
+<extraparam>
+<Line value="data exchange" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="280" >
+<cdparam x="429" y="448" />
+<sizeparam width="94" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="write channel" value="fromDtoSC(1)" />
+<TGConnectingPoint num="0" id="278" />
+<TGConnectingPoint num="1" id="279" />
+<extraparam>
+<Data channelName="fromDtoSC" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="283" >
+<cdparam x="419" y="507" />
+<sizeparam width="115" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="data_Ready(x, b)" />
+<TGConnectingPoint num="0" id="281" />
+<TGConnectingPoint num="1" id="282" />
+<latencyCheck />
+<extraparam>
+<Data eventName="data_Ready" nbOfParams="5" />
+<Param index="0" value="x" />
+<Param index="1" value="b" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="285" >
+<cdparam x="466" y="570" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="284" />
+</COMPONENT>
+
+<COMPONENT type="1017" id="288" >
+<cdparam x="588" y="447" />
+<sizeparam width="142" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="notified event" value="x=?data_Ready_SC()" />
+<TGConnectingPoint num="0" id="286" />
+<TGConnectingPoint num="1" id="287" />
+<extraparam>
+<Data eventName="data_Ready_SC" variable="x" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="290" >
+<cdparam x="569" y="577" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="289" />
+</COMPONENT>
+
+<COMPONENT type="1009" id="293" >
+<cdparam x="610" y="700" />
+<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read channel" value="fromSCtoD(1) " />
+<TGConnectingPoint num="0" id="291" />
+<TGConnectingPoint num="1" id="292" />
+<extraparam>
+<Data channelName="fromSCtoD" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="296" >
+<cdparam x="600" y="619" />
+<sizeparam width="119" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="data_Ready_SC() " />
+<TGConnectingPoint num="0" id="294" />
+<TGConnectingPoint num="1" id="295" />
+<accessibility />
+<extraparam>
+<Data eventName="data_Ready_SC" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="298" >
+<cdparam x="649" y="774" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="297" />
+</COMPONENT>
+
+<COMPONENT type="1014" id="302" >
+<cdparam x="300" y="287" />
+<sizeparam width="268" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="for loop" value="for(i=0;i&lt;nbOfComputedPackets;i = i +1)" />
+<TGConnectingPoint num="0" id="299" />
+<TGConnectingPoint num="1" id="300" />
+<TGConnectingPoint num="2" id="301" />
+<extraparam>
+<Data init="i=0" condition="i&lt;nbOfComputedPackets" increment="i = i +1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="304" >
+<cdparam x="382" y="380" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="303" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="305" >
+<cdparam x="434" y="312" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="434" y="312" id="301" />
+<P2  x="392" y="375" id="303" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="306" >
+<cdparam x="561" y="301" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="568" y="301" id="300" />
+<P2  x="568" y="366" id="231" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="311" >
+<cdparam x="78" y="363" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to wait event" value="null" />
+<P1  x="228" y="362" id="256" />
+<P2  x="403" y="160" id="258" />
+<Point x="228" y="383" />
+<Point x="307" y="383" />
+<Point x="307" y="140" />
+<Point x="403" y="140" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="307" >
+<father id="311" num="0" />
+<cdparam x="228" y="383" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="308" >
+<father id="311" num="1" />
+<cdparam x="307" y="383" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="309" >
+<father id="311" num="2" />
+<cdparam x="307" y="140" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="310" >
+<father id="311" num="3" />
+<cdparam x="403" y="140" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="115" id="312" >
+<cdparam x="228" y="57" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to send request" value="null" />
+<P1  x="229" y="78" id="244" />
+<P2  x="228" y="132" id="246" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="313" >
+<cdparam x="228" y="162" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send request to send event" value="null" />
+<P1  x="228" y="162" id="247" />
+<P2  x="228" y="232" id="249" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="314" >
+<cdparam x="228" y="284" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to send event" value="null" />
+<P1  x="227" y="313" id="253" />
+<P2  x="228" y="332" id="255" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="315" >
+<cdparam x="528" y="391" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to write channel" value="null" />
+<P1  x="528" y="391" id="232" />
+<P2  x="476" y="443" id="278" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="316" >
+<cdparam x="476" y="473" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="476" y="473" id="279" />
+<P2  x="476" y="502" id="281" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="317" >
+<cdparam x="471" y="529" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to stop state" value="null" />
+<P1  x="476" y="532" id="282" />
+<P2  x="476" y="565" id="284" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="318" >
+<cdparam x="619" y="532" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="619" y="532" id="240" />
+<P2  x="579" y="572" id="289" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="319" >
+<cdparam x="580" y="405" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to notified event" value="null" />
+<P1  x="608" y="391" id="233" />
+<P2  x="659" y="442" id="286" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="320" >
+<cdparam x="659" y="472" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from notified event to choice" value="null" />
+<P1  x="659" y="472" id="287" />
+<P2  x="659" y="507" id="239" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="321" >
+<cdparam x="659" y="572" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to wait event" value="null" />
+<P1  x="659" y="572" id="242" />
+<P2  x="659" y="614" id="294" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="322" >
+<cdparam x="670" y="644" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to read channel" value="null" />
+<P1  x="659" y="644" id="295" />
+<P2  x="659" y="695" id="291" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="323" >
+<cdparam x="659" y="725" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from read channel to stop state" value="null" />
+<P1  x="659" y="725" id="292" />
+<P2  x="659" y="769" id="297" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="324" >
+<cdparam x="403" y="190" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to for loop" value="null" />
+<P1  x="403" y="190" id="259" />
+<P2  x="434" y="282" id="299" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="325" >
+<cdparam x="228" y="262" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to wait event" value="null" />
+<P1  x="228" y="262" id="250" />
+<P2  x="227" y="283" id="252" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="SmartCard" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1000" id="327" >
+<cdparam x="159" y="66" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="326" />
+</COMPONENT>
+
+<COMPONENT type="1010" id="330" >
+<cdparam x="138" y="129" />
+<sizeparam width="57" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="reset() " />
+<TGConnectingPoint num="0" id="328" />
+<TGConnectingPoint num="1" id="329" />
+<extraparam>
+<Data eventName="reset" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="333" >
+<cdparam x="108" y="182" />
+<sizeparam width="116" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="answerToReset()" />
+<TGConnectingPoint num="0" id="331" />
+<TGConnectingPoint num="1" id="332" />
+<extraparam>
+<Data eventName="answerToReset" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="336" >
+<cdparam x="143" y="237" />
+<sizeparam width="47" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="pTS() " />
+<TGConnectingPoint num="0" id="334" />
+<TGConnectingPoint num="1" id="335" />
+<extraparam>
+<Data eventName="pTS" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="339" >
+<cdparam x="121" y="308" />
+<sizeparam width="90" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="pTSConfirm()" />
+<TGConnectingPoint num="0" id="337" />
+<TGConnectingPoint num="1" id="338" />
+<extraparam>
+<Data eventName="pTSConfirm" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="356" >
+<cdparam x="376" y="98" />
+<sizeparam width="249" height="39" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="The first two layers of the OSI model 
+are used to communicate between 
+the smart card and the terminal
+" />
+<TGConnectingPoint num="0" id="340" />
+<TGConnectingPoint num="1" id="341" />
+<TGConnectingPoint num="2" id="342" />
+<TGConnectingPoint num="3" id="343" />
+<TGConnectingPoint num="4" id="344" />
+<TGConnectingPoint num="5" id="345" />
+<TGConnectingPoint num="6" id="346" />
+<TGConnectingPoint num="7" id="347" />
+<TGConnectingPoint num="8" id="348" />
+<TGConnectingPoint num="9" id="349" />
+<TGConnectingPoint num="10" id="350" />
+<TGConnectingPoint num="11" id="351" />
+<TGConnectingPoint num="12" id="352" />
+<TGConnectingPoint num="13" id="353" />
+<TGConnectingPoint num="14" id="354" />
+<TGConnectingPoint num="15" id="355" />
+<extraparam>
+<Line value="The first two layers of the OSI model " />
+<Line value="are used to communicate between " />
+<Line value="the smart card and the terminal" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1007" id="359" >
+<cdparam x="250" y="97" />
+<sizeparam width="96" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="start_TCP_IP()" />
+<TGConnectingPoint num="0" id="357" />
+<TGConnectingPoint num="1" id="358" />
+<extraparam>
+<Data requestName="start_TCP_IP" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1007" id="362" >
+<cdparam x="236" y="148" />
+<sizeparam width="125" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="start_Application()" />
+<TGConnectingPoint num="0" id="360" />
+<TGConnectingPoint num="1" id="361" />
+<extraparam>
+<Data requestName="start_Application" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="364" >
+<cdparam x="515" y="428" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="363" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="367" >
+<cdparam x="305" y="350" />
+<sizeparam width="115" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="data_Ready_SC()" />
+<TGConnectingPoint num="0" id="365" />
+<TGConnectingPoint num="1" id="366" />
+<extraparam>
+<Data eventName="data_Ready_SC" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="369" >
+<cdparam x="352" y="426" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="368" />
+</COMPONENT>
+
+<COMPONENT type="1009" id="372" >
+<cdparam x="318" y="308" />
+<sizeparam width="88" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read channel" value="fromTtoP(1) " />
+<TGConnectingPoint num="0" id="370" />
+<TGConnectingPoint num="1" id="371" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="375" >
+<cdparam x="335" y="264" />
+<sizeparam width="55" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="send() " />
+<TGConnectingPoint num="0" id="373" />
+<TGConnectingPoint num="1" id="374" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="378" >
+<cdparam x="315" y="392" />
+<sizeparam width="94" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="write channel" value="fromSCtoD(1)" />
+<TGConnectingPoint num="0" id="376" />
+<TGConnectingPoint num="1" id="377" />
+<extraparam>
+<Data channelName="fromSCtoD" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="381" >
+<cdparam x="493" y="350" />
+<sizeparam width="65" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="receive()" />
+<TGConnectingPoint num="0" id="379" />
+<TGConnectingPoint num="1" id="380" />
+<extraparam>
+<Data eventName="receive" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1009" id="384" >
+<cdparam x="476" y="311" />
+<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read channel" value="fromDtoSC(1) " />
+<TGConnectingPoint num="0" id="382" />
+<TGConnectingPoint num="1" id="383" />
+<extraparam>
+<Data channelName="fromDtoSC" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="387" >
+<cdparam x="483" y="387" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="write channel" value="fromPtoT(1)" />
+<TGConnectingPoint num="0" id="385" />
+<TGConnectingPoint num="1" id="386" />
+<extraparam>
+<Data channelName="fromPtoT" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="390" >
+<cdparam x="466" y="268" />
+<sizeparam width="118" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="data_Ready(t, b) " />
+<TGConnectingPoint num="0" id="388" />
+<TGConnectingPoint num="1" id="389" />
+<breakpoint />
+<extraparam>
+<Data eventName="data_Ready" nbOfParams="5" />
+<Param index="0" value="t" />
+<Param index="1" value="b" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1014" id="394" >
+<cdparam x="236" y="202" />
+<sizeparam width="124" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="for loop" value="for(j=0;x==0;j = j)" />
+<TGConnectingPoint num="0" id="391" />
+<TGConnectingPoint num="1" id="392" />
+<TGConnectingPoint num="2" id="393" />
+<extraparam>
+<Data init="j=0" condition="x==0" increment="j = j" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="396" >
+<cdparam x="297" y="231" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="395" />
+</COMPONENT>
+
+<COMPONENT type="1018" id="407" >
+<cdparam x="424" y="226" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="select" value="null" />
+<TGConnectingPoint num="0" id="397" />
+<TGConnectingPoint num="1" id="398" />
+<TGConnectingPoint num="2" id="399" />
+<TGConnectingPoint num="3" id="400" />
+<TGConnectingPoint num="4" id="401" />
+<TGConnectingPoint num="5" id="402" />
+<TGConnectingPoint num="6" id="403" />
+<TGConnectingPoint num="7" id="404" />
+<TGConnectingPoint num="8" id="405" />
+<TGConnectingPoint num="9" id="406" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="412" >
+<cdparam x="111" y="331" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to send request" value="null" />
+<P1  x="166" y="333" id="338" />
+<P2  x="298" y="92" id="357" />
+<Point x="166" y="351" />
+<Point x="231" y="351" />
+<Point x="231" y="72" />
+<Point x="298" y="72" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="408" >
+<father id="412" num="0" />
+<cdparam x="166" y="351" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="409" >
+<father id="412" num="1" />
+<cdparam x="231" y="351" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="410" >
+<father id="412" num="2" />
+<cdparam x="231" y="72" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="411" >
+<father id="412" num="3" />
+<cdparam x="298" y="72" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="115" id="413" >
+<cdparam x="166" y="64" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to wait event" value="null" />
+<P1  x="166" y="86" id="326" />
+<P2  x="166" y="124" id="328" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="414" >
+<cdparam x="166" y="154" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to send event" value="null" />
+<P1  x="166" y="154" id="329" />
+<P2  x="166" y="177" id="331" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="415" >
+<cdparam x="312" y="133" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send request to send request" value="null" />
+<P1  x="298" y="122" id="358" />
+<P2  x="298" y="143" id="360" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="416" >
+<cdparam x="355" y="300" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to read channel" value="null" />
+<P1  x="362" y="289" id="374" />
+<P2  x="362" y="303" id="370" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="417" >
+<cdparam x="355" y="365" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from read channel to send event" value="null" />
+<P1  x="362" y="333" id="371" />
+<P2  x="362" y="345" id="365" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="418" >
+<cdparam x="355" y="417" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to write channel" value="null" />
+<P1  x="362" y="375" id="366" />
+<P2  x="362" y="387" id="376" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="419" >
+<cdparam x="355" y="473" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to stop state" value="null" />
+<P1  x="362" y="417" id="377" />
+<P2  x="362" y="421" id="368" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="420" >
+<cdparam x="541" y="358" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from read channel to send event" value="null" />
+<P1  x="525" y="336" id="383" />
+<P2  x="525" y="345" id="379" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="421" >
+<cdparam x="540" y="402" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to write channel" value="null" />
+<P1  x="525" y="375" id="380" />
+<P2  x="525" y="382" id="385" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="422" >
+<cdparam x="543" y="305" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to read channel" value="null" />
+<P1  x="525" y="293" id="389" />
+<P2  x="525" y="306" id="382" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="423" >
+<cdparam x="540" y="464" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to stop state" value="null" />
+<P1  x="525" y="412" id="386" />
+<P2  x="525" y="423" id="363" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="424" >
+<cdparam x="298" y="173" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send request to for loop" value="null" />
+<P1  x="298" y="173" id="361" />
+<P2  x="298" y="197" id="391" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="425" >
+<cdparam x="328" y="232" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from for loop to stop state" value="null" />
+<P1  x="298" y="227" id="393" />
+<P2  x="307" y="226" id="395" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="426" >
+<cdparam x="395" y="283" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from select to wait event" value="null" />
+<P1  x="399" y="241" id="398" />
+<P2  x="362" y="259" id="373" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="427" >
+<cdparam x="543" y="341" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from select to wait event" value="null" />
+<P1  x="479" y="241" id="399" />
+<P2  x="525" y="263" id="388" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="428" >
+<cdparam x="391" y="282" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from for loop to select" value="null" />
+<P1  x="360" y="216" id="392" />
+<P2  x="439" y="216" id="397" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="429" >
+<cdparam x="164" y="262" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to send event" value="null" />
+<P1  x="166" y="262" id="335" />
+<P2  x="166" y="303" id="337" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="430" >
+<cdparam x="166" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to wait event" value="null" />
+<P1  x="166" y="207" id="332" />
+<P2  x="166" y="232" id="334" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="TCPIP" minX="10" maxX="2900" minY="10" maxY="1900" >
+<COMPONENT type="1012" id="438" >
+<cdparam x="2086" y="1378" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="434" />
+<TGConnectingPoint num="1" id="435" />
+<TGConnectingPoint num="2" id="436" />
+<TGConnectingPoint num="3" id="437" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="431" >
+<father id="438" num="0" />
+<cdparam x="2061" y="1388" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="432" >
+<father id="438" num="1" />
+<cdparam x="2121" y="1388" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="433" >
+<father id="438" num="2" />
+<cdparam x="2106" y="1426" />
+<sizeparam width="135" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ tcpctrl.state ==10 ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="446" >
+<cdparam x="2262" y="951" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="442" />
+<TGConnectingPoint num="1" id="443" />
+<TGConnectingPoint num="2" id="444" />
+<TGConnectingPoint num="3" id="445" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="439" >
+<father id="446" num="0" />
+<cdparam x="2212" y="961" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state ==1 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="440" >
+<father id="446" num="1" />
+<cdparam x="2297" y="961" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ tcpctrl.state ==3 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="441" >
+<father id="446" num="2" />
+<cdparam x="2282" y="996" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ else ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="454" >
+<cdparam x="1981" y="1346" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="450" />
+<TGConnectingPoint num="1" id="451" />
+<TGConnectingPoint num="2" id="452" />
+<TGConnectingPoint num="3" id="453" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="447" >
+<father id="454" num="0" />
+<cdparam x="1934" y="1356" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state ==5 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="448" >
+<father id="454" num="1" />
+<cdparam x="2016" y="1356" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="449" >
+<father id="454" num="2" />
+<cdparam x="2001" y="1391" />
+<sizeparam width="131" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ tcpctrl.state == 7 ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="462" >
+<cdparam x="1811" y="1269" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="458" />
+<TGConnectingPoint num="1" id="459" />
+<TGConnectingPoint num="2" id="460" />
+<TGConnectingPoint num="3" id="461" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="455" >
+<father id="462" num="0" />
+<cdparam x="1762" y="1279" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state ==4 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="456" >
+<father id="462" num="1" />
+<cdparam x="1846" y="1279" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="457" >
+<father id="462" num="2" />
+<cdparam x="1831" y="1314" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ tcpctrl.state ==2 ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="470" >
+<cdparam x="1716" y="1141" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="466" />
+<TGConnectingPoint num="1" id="467" />
+<TGConnectingPoint num="2" id="468" />
+<TGConnectingPoint num="3" id="469" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="463" >
+<father id="470" num="0" />
+<cdparam x="1691" y="1151" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="464" >
+<father id="470" num="1" />
+<cdparam x="1751" y="1151" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="465" >
+<father id="470" num="2" />
+<cdparam x="1736" y="1186" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="474" >
+<cdparam x="1524" y="1254" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="472" />
+<TGConnectingPoint num="1" id="473" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="471" >
+<father id="474" num="0" />
+<cdparam x="1539" y="1274" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="478" >
+<cdparam x="1524" y="1064" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="476" />
+<TGConnectingPoint num="1" id="477" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="475" >
+<father id="478" num="0" />
+<cdparam x="1538" y="1088" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="486" >
+<cdparam x="1592" y="1006" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="482" />
+<TGConnectingPoint num="1" id="483" />
+<TGConnectingPoint num="2" id="484" />
+<TGConnectingPoint num="3" id="485" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="479" >
+<father id="486" num="0" />
+<cdparam x="1542" y="1016" />
+<sizeparam width="135" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state  == 4 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="480" >
+<father id="486" num="1" />
+<cdparam x="1627" y="1016" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="481" >
+<father id="486" num="2" />
+<cdparam x="1612" y="1051" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="494" >
+<cdparam x="1713" y="875" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="490" />
+<TGConnectingPoint num="1" id="491" />
+<TGConnectingPoint num="2" id="492" />
+<TGConnectingPoint num="3" id="493" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="487" >
+<father id="494" num="0" />
+<cdparam x="1688" y="885" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="488" >
+<father id="494" num="1" />
+<cdparam x="1748" y="885" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="489" >
+<father id="494" num="2" />
+<cdparam x="1733" y="920" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="498" >
+<cdparam x="1636" y="1235" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="496" />
+<TGConnectingPoint num="1" id="497" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="495" >
+<father id="498" num="0" />
+<cdparam x="1655" y="1254" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="502" >
+<cdparam x="2213" y="1059" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="500" />
+<TGConnectingPoint num="1" id="501" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="499" >
+<father id="502" num="0" />
+<cdparam x="2200" y="1083" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="506" >
+<cdparam x="2336" y="1024" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="504" />
+<TGConnectingPoint num="1" id="505" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="503" >
+<father id="506" num="0" />
+<cdparam x="2312" y="1044" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="514" >
+<cdparam x="1193" y="1020" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="510" />
+<TGConnectingPoint num="1" id="511" />
+<TGConnectingPoint num="2" id="512" />
+<TGConnectingPoint num="3" id="513" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="507" >
+<father id="514" num="0" />
+<cdparam x="1168" y="1030" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="508" >
+<father id="514" num="1" />
+<cdparam x="1228" y="1030" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="509" >
+<father id="514" num="2" />
+<cdparam x="1213" y="1065" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ tcpctrl.state ==6 ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="518" >
+<cdparam x="1203" y="1107" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="516" />
+<TGConnectingPoint num="1" id="517" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="515" >
+<father id="518" num="0" />
+<cdparam x="1218" y="1127" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="526" >
+<cdparam x="557" y="712" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="522" />
+<TGConnectingPoint num="1" id="523" />
+<TGConnectingPoint num="2" id="524" />
+<TGConnectingPoint num="3" id="525" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="519" >
+<father id="526" num="0" />
+<cdparam x="514" y="722" />
+<sizeparam width="131" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state == 1 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="520" >
+<father id="526" num="1" />
+<cdparam x="592" y="722" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="521" >
+<father id="526" num="2" />
+<cdparam x="577" y="757" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="530" >
+<cdparam x="717" y="694" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="528" />
+<TGConnectingPoint num="1" id="529" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="527" >
+<father id="530" num="0" />
+<cdparam x="732" y="714" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="534" >
+<cdparam x="938" y="1025" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="532" />
+<TGConnectingPoint num="1" id="533" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="531" >
+<father id="534" num="0" />
+<cdparam x="953" y="1045" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="542" >
+<cdparam x="1034" y="939" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="538" />
+<TGConnectingPoint num="1" id="539" />
+<TGConnectingPoint num="2" id="540" />
+<TGConnectingPoint num="3" id="541" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="535" >
+<father id="542" num="0" />
+<cdparam x="989" y="949" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state ==4 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="536" >
+<father id="542" num="1" />
+<cdparam x="1070" y="949" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="537" >
+<father id="542" num="2" />
+<cdparam x="1054" y="984" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ tcpctrl.state == 5]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="546" >
+<cdparam x="795" y="1009" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="544" />
+<TGConnectingPoint num="1" id="545" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="543" >
+<father id="546" num="0" />
+<cdparam x="818" y="1031" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="554" >
+<cdparam x="828" y="869" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="550" />
+<TGConnectingPoint num="1" id="551" />
+<TGConnectingPoint num="2" id="552" />
+<TGConnectingPoint num="3" id="553" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="547" >
+<father id="554" num="0" />
+<cdparam x="753" y="885" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state ==0 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="548" >
+<father id="554" num="1" />
+<cdparam x="863" y="879" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="549" >
+<father id="554" num="2" />
+<cdparam x="848" y="914" />
+<sizeparam width="123" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ tcpctrl.state==0 ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="558" >
+<cdparam x="341" y="764" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="556" />
+<TGConnectingPoint num="1" id="557" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="555" >
+<father id="558" num="0" />
+<cdparam x="354" y="785" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="562" >
+<cdparam x="127" y="794" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="560" />
+<TGConnectingPoint num="1" id="561" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="559" >
+<father id="562" num="0" />
+<cdparam x="146" y="818" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="570" >
+<cdparam x="993" y="780" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="566" />
+<TGConnectingPoint num="1" id="567" />
+<TGConnectingPoint num="2" id="568" />
+<TGConnectingPoint num="3" id="569" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="563" >
+<father id="570" num="0" />
+<cdparam x="949" y="793" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="564" >
+<father id="570" num="1" />
+<cdparam x="1028" y="790" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="565" >
+<father id="570" num="2" />
+<cdparam x="1013" y="825" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="574" >
+<cdparam x="1003" y="701" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="572" />
+<TGConnectingPoint num="1" id="573" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="571" >
+<father id="574" num="0" />
+<cdparam x="1018" y="721" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="578" >
+<cdparam x="434" y="783" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="576" />
+<TGConnectingPoint num="1" id="577" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="575" >
+<father id="578" num="0" />
+<cdparam x="449" y="802" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="582" >
+<cdparam x="225" y="863" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="580" />
+<TGConnectingPoint num="1" id="581" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="579" >
+<father id="582" num="0" />
+<cdparam x="245" y="885" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1013" id="586" >
+<cdparam x="1044" y="1057" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="584" />
+<TGConnectingPoint num="1" id="585" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="583" >
+<father id="586" num="0" />
+<cdparam x="1059" y="1077" />
+<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="b" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="594" >
+<cdparam x="173" y="486" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="590" />
+<TGConnectingPoint num="1" id="591" />
+<TGConnectingPoint num="2" id="592" />
+<TGConnectingPoint num="3" id="593" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="587" >
+<father id="594" num="0" />
+<cdparam x="98" y="496" />
+<sizeparam width="123" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state==0 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="588" >
+<father id="594" num="1" />
+<cdparam x="208" y="496" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="589" >
+<father id="594" num="2" />
+<cdparam x="193" y="531" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="602" >
+<cdparam x="359" y="192" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="598" />
+<TGConnectingPoint num="1" id="599" />
+<TGConnectingPoint num="2" id="600" />
+<TGConnectingPoint num="3" id="601" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="595" >
+<father id="602" num="0" />
+<cdparam x="317" y="202" />
+<sizeparam width="88" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.a&gt;0 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="596" >
+<father id="602" num="1" />
+<cdparam x="394" y="202" />
+<sizeparam width="98" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ tcpctrl.a==0 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="597" >
+<father id="602" num="2" />
+<cdparam x="379" y="237" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="610" >
+<cdparam x="449" y="582" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="606" />
+<TGConnectingPoint num="1" id="607" />
+<TGConnectingPoint num="2" id="608" />
+<TGConnectingPoint num="3" id="609" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="603" >
+<father id="610" num="0" />
+<cdparam x="398" y="592" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state ==9 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="604" >
+<father id="610" num="1" />
+<cdparam x="500" y="599" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="605" >
+<father id="610" num="2" />
+<cdparam x="469" y="627" />
+<sizeparam width="277" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ (tcpctrl.state ==2) or (tcpctrl.state ==4) ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1012" id="618" >
+<cdparam x="274" y="564" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="614" />
+<TGConnectingPoint num="1" id="615" />
+<TGConnectingPoint num="2" id="616" />
+<TGConnectingPoint num="3" id="617" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="611" >
+<father id="618" num="0" />
+<cdparam x="228" y="574" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ tcpctrl.state == 1]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="612" >
+<father id="618" num="1" />
+<cdparam x="317" y="584" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ else ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="613" >
+<father id="618" num="2" />
+<cdparam x="294" y="613" />
+<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ tcpctrl.state ==4 ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1000" id="620" >
+<cdparam x="227" y="27" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="619" />
+</COMPONENT>
+
+<COMPONENT type="301" id="637" >
+<cdparam x="10" y="30" />
+<sizeparam width="98" height="135" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="0: closed
+1: Listen
+2: SYN rcvd
+3: SYN sent
+4: Estab
+5: Fin wait1
+6: Fin wait2
+7: closing
+8: Time wait
+9: close wait
+10:last ack
+" />
+<TGConnectingPoint num="0" id="621" />
+<TGConnectingPoint num="1" id="622" />
+<TGConnectingPoint num="2" id="623" />
+<TGConnectingPoint num="3" id="624" />
+<TGConnectingPoint num="4" id="625" />
+<TGConnectingPoint num="5" id="626" />
+<TGConnectingPoint num="6" id="627" />
+<TGConnectingPoint num="7" id="628" />
+<TGConnectingPoint num="8" id="629" />
+<TGConnectingPoint num="9" id="630" />
+<TGConnectingPoint num="10" id="631" />
+<TGConnectingPoint num="11" id="632" />
+<TGConnectingPoint num="12" id="633" />
+<TGConnectingPoint num="13" id="634" />
+<TGConnectingPoint num="14" id="635" />
+<TGConnectingPoint num="15" id="636" />
+<extraparam>
+<Line value="0: closed" />
+<Line value="1: Listen" />
+<Line value="2: SYN rcvd" />
+<Line value="3: SYN sent" />
+<Line value="4: Estab" />
+<Line value="5: Fin wait1" />
+<Line value="6: Fin wait2" />
+<Line value="7: closing" />
+<Line value="8: Time wait" />
+<Line value="9: close wait" />
+<Line value="10:last ack" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="640" >
+<cdparam x="72" y="549" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =1" />
+<TGConnectingPoint num="0" id="638" />
+<TGConnectingPoint num="1" id="639" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="642" >
+<cdparam x="116" y="615" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="641" />
+</COMPONENT>
+
+<COMPONENT type="1009" id="645" >
+<cdparam x="964" y="585" />
+<sizeparam width="88" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="read channel" value="fromPtoT(1) " />
+<TGConnectingPoint num="0" id="643" />
+<TGConnectingPoint num="1" id="644" />
+<extraparam>
+<Data channelName="fromPtoT" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1014" id="649" >
+<cdparam x="145" y="85" />
+<sizeparam width="180" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="for loop" value="for(i=0;(tcpctrl.a==0);i = i)" />
+<TGConnectingPoint num="0" id="646" />
+<TGConnectingPoint num="1" id="647" />
+<TGConnectingPoint num="2" id="648" />
+<extraparam>
+<Data init="i=0" condition="(tcpctrl.a==0)" increment="i = i" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="651" >
+<cdparam x="224" y="207" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="650" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="654" >
+<cdparam x="182" y="144" />
+<sizeparam width="105" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state=0" />
+<TGConnectingPoint num="0" id="652" />
+<TGConnectingPoint num="1" id="653" />
+</COMPONENT>
+
+<COMPONENT type="1017" id="657" >
+<cdparam x="311" y="133" />
+<sizeparam width="127" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="notified event" value="tcpctrl.a=?abort()" />
+<TGConnectingPoint num="0" id="655" />
+<TGConnectingPoint num="1" id="656" />
+<extraparam>
+<Data eventName="abort" variable="tcpctrl.a" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1009" id="660" >
+<cdparam x="690" y="589" />
+<sizeparam width="64" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="read channel" value="temp(1) " />
+<TGConnectingPoint num="0" id="658" />
+<TGConnectingPoint num="1" id="659" />
+<extraparam>
+<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="663" >
+<cdparam x="686" y="534" />
+<sizeparam width="73" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="wait event" value="timeOut() " />
+<TGConnectingPoint num="0" id="661" />
+<TGConnectingPoint num="1" id="662" />
+<extraparam>
+<Data eventName="timeOut" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="666" >
+<cdparam x="974" y="528" />
+<sizeparam width="69" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="wait event" value="receive() " />
+<TGConnectingPoint num="0" id="664" />
+<TGConnectingPoint num="1" id="665" />
+<extraparam>
+<Data eventName="receive" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="669" >
+<cdparam x="436" y="492" />
+<sizeparam width="57" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="wait event" value="close() " />
+<TGConnectingPoint num="0" id="667" />
+<TGConnectingPoint num="1" id="668" />
+<extraparam>
+<Data eventName="close" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="672" >
+<cdparam x="247" y="468" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="wait event" value="send_TCP() " />
+<TGConnectingPoint num="0" id="670" />
+<TGConnectingPoint num="1" id="671" />
+<extraparam>
+<Data eventName="send_TCP" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="675" >
+<cdparam x="160" y="419" />
+<sizeparam width="56" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="wait event" value="open() " />
+<TGConnectingPoint num="0" id="673" />
+<TGConnectingPoint num="1" id="674" />
+<breakpoint />
+<extraparam>
+<Data eventName="open" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1018" id="686" >
+<cdparam x="449" y="267" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="select" value="null" />
+<TGConnectingPoint num="0" id="676" />
+<TGConnectingPoint num="1" id="677" />
+<TGConnectingPoint num="2" id="678" />
+<TGConnectingPoint num="3" id="679" />
+<TGConnectingPoint num="4" id="680" />
+<TGConnectingPoint num="5" id="681" />
+<TGConnectingPoint num="6" id="682" />
+<TGConnectingPoint num="7" id="683" />
+<TGConnectingPoint num="8" id="684" />
+<TGConnectingPoint num="9" id="685" />
+<breakpoint />
+</COMPONENT>
+
+<COMPONENT type="1001" id="688" >
+<cdparam x="226" y="529" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="687" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="690" >
+<cdparam x="343" y="614" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="689" />
+</COMPONENT>
+
+<COMPONENT type="1010" id="693" >
+<cdparam x="272" y="228" />
+<sizeparam width="58" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="wait event" value="abort() " />
+<TGConnectingPoint num="0" id="691" />
+<TGConnectingPoint num="1" id="692" />
+<extraparam>
+<Data eventName="abort" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="695" >
+<cdparam x="291" y="290" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="694" />
+</COMPONENT>
+
+<COMPONENT type="301" id="712" >
+<cdparam x="602" y="86" />
+<sizeparam width="393" height="51" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="b est le nombre d&apos;instructions necessaires pour paquetiser
+ou depaquitiser un paquet TCP
+
+On prend b=1 comme exemple
+" />
+<TGConnectingPoint num="0" id="696" />
+<TGConnectingPoint num="1" id="697" />
+<TGConnectingPoint num="2" id="698" />
+<TGConnectingPoint num="3" id="699" />
+<TGConnectingPoint num="4" id="700" />
+<TGConnectingPoint num="5" id="701" />
+<TGConnectingPoint num="6" id="702" />
+<TGConnectingPoint num="7" id="703" />
+<TGConnectingPoint num="8" id="704" />
+<TGConnectingPoint num="9" id="705" />
+<TGConnectingPoint num="10" id="706" />
+<TGConnectingPoint num="11" id="707" />
+<TGConnectingPoint num="12" id="708" />
+<TGConnectingPoint num="13" id="709" />
+<TGConnectingPoint num="14" id="710" />
+<TGConnectingPoint num="15" id="711" />
+<extraparam>
+<Line value="b est le nombre d&apos;instructions necessaires pour paquetiser" />
+<Line value="ou depaquitiser un paquet TCP" />
+<Line value="" />
+<Line value="On prend b=1 comme exemple" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1009" id="715" >
+<cdparam x="186" y="808" />
+<sizeparam width="88" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="read channel" value="fromAtoT(1) " />
+<TGConnectingPoint num="0" id="713" />
+<TGConnectingPoint num="1" id="714" />
+<extraparam>
+<Data channelName="fromAtoT" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="718" >
+<cdparam x="188" y="1002" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="716" />
+<TGConnectingPoint num="1" id="717" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="720" >
+<cdparam x="219" y="1237" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="719" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="723" >
+<cdparam x="384" y="1032" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =5" />
+<TGConnectingPoint num="0" id="721" />
+<TGConnectingPoint num="1" id="722" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="725" >
+<cdparam x="428" y="1213" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="724" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="728" >
+<cdparam x="80" y="1041" />
+<sizeparam width="105" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state=3" />
+<TGConnectingPoint num="0" id="726" />
+<TGConnectingPoint num="1" id="727" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="731" >
+<cdparam x="90" y="938" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="729" />
+<TGConnectingPoint num="1" id="730" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="734" >
+<cdparam x="288" y="1026" />
+<sizeparam width="117" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =10" />
+<TGConnectingPoint num="0" id="732" />
+<TGConnectingPoint num="1" id="733" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="736" >
+<cdparam x="334" y="1229" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="735" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="739" >
+<cdparam x="397" y="941" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="737" />
+<TGConnectingPoint num="1" id="738" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="742" >
+<cdparam x="304" y="900" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="740" />
+<TGConnectingPoint num="1" id="741" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="744" >
+<cdparam x="789" y="1270" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="743" />
+</COMPONENT>
+
+<COMPONENT type="301" id="761" >
+<cdparam x="998" y="850" />
+<sizeparam width="50" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="Fin
+" />
+<TGConnectingPoint num="0" id="745" />
+<TGConnectingPoint num="1" id="746" />
+<TGConnectingPoint num="2" id="747" />
+<TGConnectingPoint num="3" id="748" />
+<TGConnectingPoint num="4" id="749" />
+<TGConnectingPoint num="5" id="750" />
+<TGConnectingPoint num="6" id="751" />
+<TGConnectingPoint num="7" id="752" />
+<TGConnectingPoint num="8" id="753" />
+<TGConnectingPoint num="9" id="754" />
+<TGConnectingPoint num="10" id="755" />
+<TGConnectingPoint num="11" id="756" />
+<TGConnectingPoint num="12" id="757" />
+<TGConnectingPoint num="13" id="758" />
+<TGConnectingPoint num="14" id="759" />
+<TGConnectingPoint num="15" id="760" />
+<extraparam>
+<Line value="Fin" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="764" >
+<cdparam x="674" y="965" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =1" />
+<TGConnectingPoint num="0" id="762" />
+<TGConnectingPoint num="1" id="763" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="766" >
+<cdparam x="718" y="1032" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="765" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="769" >
+<cdparam x="758" y="1086" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="767" />
+<TGConnectingPoint num="1" id="768" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="786" >
+<cdparam x="781" y="950" />
+<sizeparam width="94" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="Active Open
+" />
+<TGConnectingPoint num="0" id="770" />
+<TGConnectingPoint num="1" id="771" />
+<TGConnectingPoint num="2" id="772" />
+<TGConnectingPoint num="3" id="773" />
+<TGConnectingPoint num="4" id="774" />
+<TGConnectingPoint num="5" id="775" />
+<TGConnectingPoint num="6" id="776" />
+<TGConnectingPoint num="7" id="777" />
+<TGConnectingPoint num="8" id="778" />
+<TGConnectingPoint num="9" id="779" />
+<TGConnectingPoint num="10" id="780" />
+<TGConnectingPoint num="11" id="781" />
+<TGConnectingPoint num="12" id="782" />
+<TGConnectingPoint num="13" id="783" />
+<TGConnectingPoint num="14" id="784" />
+<TGConnectingPoint num="15" id="785" />
+<extraparam>
+<Line value="Active Open" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="803" >
+<cdparam x="715" y="907" />
+<sizeparam width="104" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="Passive Open
+" />
+<TGConnectingPoint num="0" id="787" />
+<TGConnectingPoint num="1" id="788" />
+<TGConnectingPoint num="2" id="789" />
+<TGConnectingPoint num="3" id="790" />
+<TGConnectingPoint num="4" id="791" />
+<TGConnectingPoint num="5" id="792" />
+<TGConnectingPoint num="6" id="793" />
+<TGConnectingPoint num="7" id="794" />
+<TGConnectingPoint num="8" id="795" />
+<TGConnectingPoint num="9" id="796" />
+<TGConnectingPoint num="10" id="797" />
+<TGConnectingPoint num="11" id="798" />
+<TGConnectingPoint num="12" id="799" />
+<TGConnectingPoint num="13" id="800" />
+<TGConnectingPoint num="14" id="801" />
+<TGConnectingPoint num="15" id="802" />
+<extraparam>
+<Line value="Passive Open" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="806" >
+<cdparam x="745" y="1193" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =3" />
+<TGConnectingPoint num="0" id="804" />
+<TGConnectingPoint num="1" id="805" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="809" >
+<cdparam x="442" y="768" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =0" />
+<TGConnectingPoint num="0" id="807" />
+<TGConnectingPoint num="1" id="808" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="811" >
+<cdparam x="486" y="830" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="810" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="814" >
+<cdparam x="901" y="1123" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="812" />
+<TGConnectingPoint num="1" id="813" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="831" >
+<cdparam x="884" y="1068" />
+<sizeparam width="115" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="send Ack of Fin
+" />
+<TGConnectingPoint num="0" id="815" />
+<TGConnectingPoint num="1" id="816" />
+<TGConnectingPoint num="2" id="817" />
+<TGConnectingPoint num="3" id="818" />
+<TGConnectingPoint num="4" id="819" />
+<TGConnectingPoint num="5" id="820" />
+<TGConnectingPoint num="6" id="821" />
+<TGConnectingPoint num="7" id="822" />
+<TGConnectingPoint num="8" id="823" />
+<TGConnectingPoint num="9" id="824" />
+<TGConnectingPoint num="10" id="825" />
+<TGConnectingPoint num="11" id="826" />
+<TGConnectingPoint num="12" id="827" />
+<TGConnectingPoint num="13" id="828" />
+<TGConnectingPoint num="14" id="829" />
+<TGConnectingPoint num="15" id="830" />
+<extraparam>
+<Line value="send Ack of Fin" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="834" >
+<cdparam x="889" y="1234" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =9" />
+<TGConnectingPoint num="0" id="832" />
+<TGConnectingPoint num="1" id="833" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="836" >
+<cdparam x="933" y="1311" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="835" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="839" >
+<cdparam x="1007" y="1155" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="837" />
+<TGConnectingPoint num="1" id="838" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="856" >
+<cdparam x="1000" y="1094" />
+<sizeparam width="115" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="send Ack of Fin
+" />
+<TGConnectingPoint num="0" id="840" />
+<TGConnectingPoint num="1" id="841" />
+<TGConnectingPoint num="2" id="842" />
+<TGConnectingPoint num="3" id="843" />
+<TGConnectingPoint num="4" id="844" />
+<TGConnectingPoint num="5" id="845" />
+<TGConnectingPoint num="6" id="846" />
+<TGConnectingPoint num="7" id="847" />
+<TGConnectingPoint num="8" id="848" />
+<TGConnectingPoint num="9" id="849" />
+<TGConnectingPoint num="10" id="850" />
+<TGConnectingPoint num="11" id="851" />
+<TGConnectingPoint num="12" id="852" />
+<TGConnectingPoint num="13" id="853" />
+<TGConnectingPoint num="14" id="854" />
+<TGConnectingPoint num="15" id="855" />
+<extraparam>
+<Line value="send Ack of Fin" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="859" >
+<cdparam x="995" y="1266" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =7" />
+<TGConnectingPoint num="0" id="857" />
+<TGConnectingPoint num="1" id="858" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="861" >
+<cdparam x="1039" y="1341" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="860" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="864" >
+<cdparam x="680" y="758" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="862" />
+<TGConnectingPoint num="1" id="863" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="866" >
+<cdparam x="712" y="865" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="865" />
+</COMPONENT>
+
+<COMPONENT type="1007" id="869" >
+<cdparam x="92" y="1100" />
+<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send request" value="req_Timer()" />
+<TGConnectingPoint num="0" id="867" />
+<TGConnectingPoint num="1" id="868" />
+<extraparam>
+<Data requestName="req_Timer" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="872" >
+<cdparam x="102" y="1167" />
+<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="temp(1)" />
+<TGConnectingPoint num="0" id="870" />
+<TGConnectingPoint num="1" id="871" />
+<extraparam>
+<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="874" >
+<cdparam x="122" y="1236" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="873" />
+</COMPONENT>
+
+<COMPONENT type="1007" id="877" >
+<cdparam x="189" y="1102" />
+<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send request" value="req_Timer()" />
+<TGConnectingPoint num="0" id="875" />
+<TGConnectingPoint num="1" id="876" />
+<extraparam>
+<Data requestName="req_Timer" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="880" >
+<cdparam x="199" y="1169" />
+<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="temp(1)" />
+<TGConnectingPoint num="0" id="878" />
+<TGConnectingPoint num="1" id="879" />
+<extraparam>
+<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1007" id="883" >
+<cdparam x="306" y="1106" />
+<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send request" value="req_Timer()" />
+<TGConnectingPoint num="0" id="881" />
+<TGConnectingPoint num="1" id="882" />
+<extraparam>
+<Data requestName="req_Timer" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="886" >
+<cdparam x="316" y="1173" />
+<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="temp(1)" />
+<TGConnectingPoint num="0" id="884" />
+<TGConnectingPoint num="1" id="885" />
+<extraparam>
+<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1007" id="889" >
+<cdparam x="398" y="1090" />
+<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send request" value="req_Timer()" />
+<TGConnectingPoint num="0" id="887" />
+<TGConnectingPoint num="1" id="888" />
+<extraparam>
+<Data requestName="req_Timer" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="892" >
+<cdparam x="408" y="1159" />
+<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="temp(1)" />
+<TGConnectingPoint num="0" id="890" />
+<TGConnectingPoint num="1" id="891" />
+<extraparam>
+<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="895" >
+<cdparam x="52" y="861" />
+<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="seqNum=seqNum+wind" />
+<TGConnectingPoint num="0" id="893" />
+<TGConnectingPoint num="1" id="894" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="898" >
+<cdparam x="150" y="940" />
+<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="seqNum=seqNum+wind" />
+<TGConnectingPoint num="0" id="896" />
+<TGConnectingPoint num="1" id="897" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="901" >
+<cdparam x="359" y="865" />
+<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="seqNum=seqNum+wind" />
+<TGConnectingPoint num="0" id="899" />
+<TGConnectingPoint num="1" id="900" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="904" >
+<cdparam x="266" y="831" />
+<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="seqNum=seqNum+wind" />
+<TGConnectingPoint num="0" id="902" />
+<TGConnectingPoint num="1" id="903" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="907" >
+<cdparam x="204" y="1052" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="905" />
+<TGConnectingPoint num="1" id="906" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="910" >
+<cdparam x="321" y="962" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="908" />
+<TGConnectingPoint num="1" id="909" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="913" >
+<cdparam x="413" y="983" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="911" />
+<TGConnectingPoint num="1" id="912" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="916" >
+<cdparam x="107" y="986" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="914" />
+<TGConnectingPoint num="1" id="915" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="919" >
+<cdparam x="697" y="813" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="917" />
+<TGConnectingPoint num="1" id="918" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="922" >
+<cdparam x="773" y="1141" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="920" />
+<TGConnectingPoint num="1" id="921" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="925" >
+<cdparam x="918" y="1178" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="923" />
+<TGConnectingPoint num="1" id="924" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="928" >
+<cdparam x="1024" y="1211" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="926" />
+<TGConnectingPoint num="1" id="927" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="930" >
+<cdparam x="612" y="762" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="929" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="932" >
+<cdparam x="899" y="922" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="931" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="935" >
+<cdparam x="1166" y="1214" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="933" />
+<TGConnectingPoint num="1" id="934" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="952" >
+<cdparam x="1159" y="1153" />
+<sizeparam width="115" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="send Ack of Fin
+" />
+<TGConnectingPoint num="0" id="936" />
+<TGConnectingPoint num="1" id="937" />
+<TGConnectingPoint num="2" id="938" />
+<TGConnectingPoint num="3" id="939" />
+<TGConnectingPoint num="4" id="940" />
+<TGConnectingPoint num="5" id="941" />
+<TGConnectingPoint num="6" id="942" />
+<TGConnectingPoint num="7" id="943" />
+<TGConnectingPoint num="8" id="944" />
+<TGConnectingPoint num="9" id="945" />
+<TGConnectingPoint num="10" id="946" />
+<TGConnectingPoint num="11" id="947" />
+<TGConnectingPoint num="12" id="948" />
+<TGConnectingPoint num="13" id="949" />
+<TGConnectingPoint num="14" id="950" />
+<TGConnectingPoint num="15" id="951" />
+<extraparam>
+<Line value="send Ack of Fin" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="955" >
+<cdparam x="1154" y="1295" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =8" />
+<TGConnectingPoint num="0" id="953" />
+<TGConnectingPoint num="1" id="954" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="957" >
+<cdparam x="1197" y="1471" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="956" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="960" >
+<cdparam x="1153" y="1402" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =0" />
+<TGConnectingPoint num="0" id="958" />
+<TGConnectingPoint num="1" id="959" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="963" >
+<cdparam x="1183" y="1351" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="961" />
+<TGConnectingPoint num="1" id="962" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="965" >
+<cdparam x="1277" y="1070" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="964" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="967" >
+<cdparam x="1519" y="1457" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="966" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="970" >
+<cdparam x="1487" y="1132" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoA(1)" />
+<TGConnectingPoint num="0" id="968" />
+<TGConnectingPoint num="1" id="969" />
+<extraparam>
+<Data channelName="fromTtoA" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="973" >
+<cdparam x="1487" y="1348" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="971" />
+<TGConnectingPoint num="1" id="972" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="976" >
+<cdparam x="1707" y="1026" />
+<sizeparam width="48" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="stop()" />
+<TGConnectingPoint num="0" id="974" />
+<TGConnectingPoint num="1" id="975" />
+<extraparam>
+<Data eventName="stop" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="993" >
+<cdparam x="1759" y="1192" />
+<sizeparam width="92" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="Correct ack
+" />
+<TGConnectingPoint num="0" id="977" />
+<TGConnectingPoint num="1" id="978" />
+<TGConnectingPoint num="2" id="979" />
+<TGConnectingPoint num="3" id="980" />
+<TGConnectingPoint num="4" id="981" />
+<TGConnectingPoint num="5" id="982" />
+<TGConnectingPoint num="6" id="983" />
+<TGConnectingPoint num="7" id="984" />
+<TGConnectingPoint num="8" id="985" />
+<TGConnectingPoint num="9" id="986" />
+<TGConnectingPoint num="10" id="987" />
+<TGConnectingPoint num="11" id="988" />
+<TGConnectingPoint num="12" id="989" />
+<TGConnectingPoint num="13" id="990" />
+<TGConnectingPoint num="14" id="991" />
+<TGConnectingPoint num="15" id="992" />
+<extraparam>
+<Line value="Correct ack" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="1010" >
+<cdparam x="1635" y="1168" />
+<sizeparam width="76" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="false ack
+" />
+<TGConnectingPoint num="0" id="994" />
+<TGConnectingPoint num="1" id="995" />
+<TGConnectingPoint num="2" id="996" />
+<TGConnectingPoint num="3" id="997" />
+<TGConnectingPoint num="4" id="998" />
+<TGConnectingPoint num="5" id="999" />
+<TGConnectingPoint num="6" id="1000" />
+<TGConnectingPoint num="7" id="1001" />
+<TGConnectingPoint num="8" id="1002" />
+<TGConnectingPoint num="9" id="1003" />
+<TGConnectingPoint num="10" id="1004" />
+<TGConnectingPoint num="11" id="1005" />
+<TGConnectingPoint num="12" id="1006" />
+<TGConnectingPoint num="13" id="1007" />
+<TGConnectingPoint num="14" id="1008" />
+<TGConnectingPoint num="15" id="1009" />
+<extraparam>
+<Line value="false ack" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="1013" >
+<cdparam x="1599" y="1299" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="1011" />
+<TGConnectingPoint num="1" id="1012" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1015" >
+<cdparam x="1632" y="1468" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1014" />
+</COMPONENT>
+
+<COMPONENT type="301" id="1032" >
+<cdparam x="1469" y="1295" />
+<sizeparam width="137" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="return acknowldge
+" />
+<TGConnectingPoint num="0" id="1016" />
+<TGConnectingPoint num="1" id="1017" />
+<TGConnectingPoint num="2" id="1018" />
+<TGConnectingPoint num="3" id="1019" />
+<TGConnectingPoint num="4" id="1020" />
+<TGConnectingPoint num="5" id="1021" />
+<TGConnectingPoint num="6" id="1022" />
+<TGConnectingPoint num="7" id="1023" />
+<TGConnectingPoint num="8" id="1024" />
+<TGConnectingPoint num="9" id="1025" />
+<TGConnectingPoint num="10" id="1026" />
+<TGConnectingPoint num="11" id="1027" />
+<TGConnectingPoint num="12" id="1028" />
+<TGConnectingPoint num="13" id="1029" />
+<TGConnectingPoint num="14" id="1030" />
+<TGConnectingPoint num="15" id="1031" />
+<extraparam>
+<Line value="return acknowldge" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="1049" >
+<cdparam x="1620" y="927" />
+<sizeparam width="50" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="data
+" />
+<TGConnectingPoint num="0" id="1033" />
+<TGConnectingPoint num="1" id="1034" />
+<TGConnectingPoint num="2" id="1035" />
+<TGConnectingPoint num="3" id="1036" />
+<TGConnectingPoint num="4" id="1037" />
+<TGConnectingPoint num="5" id="1038" />
+<TGConnectingPoint num="6" id="1039" />
+<TGConnectingPoint num="7" id="1040" />
+<TGConnectingPoint num="8" id="1041" />
+<TGConnectingPoint num="9" id="1042" />
+<TGConnectingPoint num="10" id="1043" />
+<TGConnectingPoint num="11" id="1044" />
+<TGConnectingPoint num="12" id="1045" />
+<TGConnectingPoint num="13" id="1046" />
+<TGConnectingPoint num="14" id="1047" />
+<TGConnectingPoint num="15" id="1048" />
+<extraparam>
+<Line value="data" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="1052" >
+<cdparam x="1504" y="1405" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="1050" />
+<TGConnectingPoint num="1" id="1051" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="1055" >
+<cdparam x="1617" y="1348" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="1053" />
+<TGConnectingPoint num="1" id="1054" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="1058" >
+<cdparam x="1612" y="1404" />
+<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="temp(1)" />
+<TGConnectingPoint num="0" id="1056" />
+<TGConnectingPoint num="1" id="1057" />
+<extraparam>
+<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1060" >
+<cdparam x="1730" y="1335" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1059" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="1063" >
+<cdparam x="1772" y="1349" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =4" />
+<TGConnectingPoint num="0" id="1061" />
+<TGConnectingPoint num="1" id="1062" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="1065" >
+<cdparam x="1818" y="1457" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1064" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="1068" >
+<cdparam x="1866" y="1411" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =6" />
+<TGConnectingPoint num="0" id="1066" />
+<TGConnectingPoint num="1" id="1067" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="1070" >
+<cdparam x="1910" y="1481" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1069" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="1072" >
+<cdparam x="1986" y="1543" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1071" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="1075" >
+<cdparam x="2047" y="1466" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =0" />
+<TGConnectingPoint num="0" id="1073" />
+<TGConnectingPoint num="1" id="1074" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="1077" >
+<cdparam x="2091" y="1537" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1076" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="1080" >
+<cdparam x="1942" y="1493" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =0" />
+<TGConnectingPoint num="0" id="1078" />
+<TGConnectingPoint num="1" id="1079" />
+</COMPONENT>
+
+<COMPONENT type="1011" id="1083" >
+<cdparam x="1942" y="1434" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =8" />
+<TGConnectingPoint num="0" id="1081" />
+<TGConnectingPoint num="1" id="1082" />
+</COMPONENT>
+
+<COMPONENT type="301" id="1100" >
+<cdparam x="1825" y="889" />
+<sizeparam width="50" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="Syn
+" />
+<TGConnectingPoint num="0" id="1084" />
+<TGConnectingPoint num="1" id="1085" />
+<TGConnectingPoint num="2" id="1086" />
+<TGConnectingPoint num="3" id="1087" />
+<TGConnectingPoint num="4" id="1088" />
+<TGConnectingPoint num="5" id="1089" />
+<TGConnectingPoint num="6" id="1090" />
+<TGConnectingPoint num="7" id="1091" />
+<TGConnectingPoint num="8" id="1092" />
+<TGConnectingPoint num="9" id="1093" />
+<TGConnectingPoint num="10" id="1094" />
+<TGConnectingPoint num="11" id="1095" />
+<TGConnectingPoint num="12" id="1096" />
+<TGConnectingPoint num="13" id="1097" />
+<TGConnectingPoint num="14" id="1098" />
+<TGConnectingPoint num="15" id="1099" />
+<extraparam>
+<Line value="Syn" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="1117" >
+<cdparam x="1707" y="945" />
+<sizeparam width="50" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="ack
+" />
+<TGConnectingPoint num="0" id="1101" />
+<TGConnectingPoint num="1" id="1102" />
+<TGConnectingPoint num="2" id="1103" />
+<TGConnectingPoint num="3" id="1104" />
+<TGConnectingPoint num="4" id="1105" />
+<TGConnectingPoint num="5" id="1106" />
+<TGConnectingPoint num="6" id="1107" />
+<TGConnectingPoint num="7" id="1108" />
+<TGConnectingPoint num="8" id="1109" />
+<TGConnectingPoint num="9" id="1110" />
+<TGConnectingPoint num="10" id="1111" />
+<TGConnectingPoint num="11" id="1112" />
+<TGConnectingPoint num="12" id="1113" />
+<TGConnectingPoint num="13" id="1114" />
+<TGConnectingPoint num="14" id="1115" />
+<TGConnectingPoint num="15" id="1116" />
+<extraparam>
+<Line value="ack" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="1120" >
+<cdparam x="2176" y="1198" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="1118" />
+<TGConnectingPoint num="1" id="1119" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1122" >
+<cdparam x="2207" y="1483" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1121" />
+</COMPONENT>
+
+<COMPONENT type="1007" id="1125" >
+<cdparam x="2177" y="1298" />
+<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send request" value="req_Timer()" />
+<TGConnectingPoint num="0" id="1123" />
+<TGConnectingPoint num="1" id="1124" />
+<extraparam>
+<Data requestName="req_Timer" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="1128" >
+<cdparam x="2187" y="1365" />
+<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="temp(1)" />
+<TGConnectingPoint num="0" id="1126" />
+<TGConnectingPoint num="1" id="1127" />
+<extraparam>
+<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="1131" >
+<cdparam x="2138" y="1136" />
+<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="seqNum=seqNum+wind" />
+<TGConnectingPoint num="0" id="1129" />
+<TGConnectingPoint num="1" id="1130" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1134" >
+<cdparam x="2192" y="1248" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="1132" />
+<TGConnectingPoint num="1" id="1133" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="1137" >
+<cdparam x="2163" y="1424" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =2" />
+<TGConnectingPoint num="0" id="1135" />
+<TGConnectingPoint num="1" id="1136" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="1140" >
+<cdparam x="2299" y="1122" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="write channel" value="fromTtoP(1)" />
+<TGConnectingPoint num="0" id="1138" />
+<TGConnectingPoint num="1" id="1139" />
+<extraparam>
+<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="1157" >
+<cdparam x="2283" y="1065" />
+<sizeparam width="121" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="UML Note" value="send Ack of SYN
+" />
+<TGConnectingPoint num="0" id="1141" />
+<TGConnectingPoint num="1" id="1142" />
+<TGConnectingPoint num="2" id="1143" />
+<TGConnectingPoint num="3" id="1144" />
+<TGConnectingPoint num="4" id="1145" />
+<TGConnectingPoint num="5" id="1146" />
+<TGConnectingPoint num="6" id="1147" />
+<TGConnectingPoint num="7" id="1148" />
+<TGConnectingPoint num="8" id="1149" />
+<TGConnectingPoint num="9" id="1150" />
+<TGConnectingPoint num="10" id="1151" />
+<TGConnectingPoint num="11" id="1152" />
+<TGConnectingPoint num="12" id="1153" />
+<TGConnectingPoint num="13" id="1154" />
+<TGConnectingPoint num="14" id="1155" />
+<TGConnectingPoint num="15" id="1156" />
+<extraparam>
+<Line value="send Ack of SYN" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="1160" >
+<cdparam x="2287" y="1267" />
+<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="action state" value="tcpctrl.state =2" />
+<TGConnectingPoint num="0" id="1158" />
+<TGConnectingPoint num="1" id="1159" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="1162" >
+<cdparam x="2330" y="1324" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1161" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1165" >
+<cdparam x="2316" y="1199" />
+<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="send()" />
+<TGConnectingPoint num="0" id="1163" />
+<TGConnectingPoint num="1" id="1164" />
+<extraparam>
+<Data eventName="send" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1167" >
+<cdparam x="1649" y="1057" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1166" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="1169" >
+<cdparam x="2168" y="1421" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1168" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="1171" >
+<cdparam x="2268" y="1039" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1170" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1174" >
+<cdparam x="1459" y="1192" />
+<sizeparam width="140" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="send event" value="receive_Application()" />
+<TGConnectingPoint num="0" id="1172" />
+<TGConnectingPoint num="1" id="1173" />
+<extraparam>
+<Data eventName="receive_Application" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1009" id="1177" >
+<cdparam x="1699" y="1086" />
+<sizeparam width="64" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" />
+<infoparam name="read channel" value="temp(1) " />
+<TGConnectingPoint num="0" id="1175" />
+<TGConnectingPoint num="1" id="1176" />
+<extraparam>
+<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="115" id="1178" >
+<cdparam x="1048" y="795" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="1048" y="795" id="568" />
+<P2  x="1728" y="865" id="490" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1179" >
+<cdparam x="1048" y="795" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="1089" y="954" id="540" />
+<P2  x="1208" y="1010" id="510" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1180" >
+<cdparam x="1008" y="610" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from read channel to execI" value="null" />
+<P1  x="1008" y="610" id="644" />
+<P2  x="1008" y="696" id="572" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1181" >
+<cdparam x="722" y="614" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from read channel to execI" value="null" />
+<P1  x="722" y="614" id="659" />
+<P2  x="722" y="689" id="528" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1182" >
+<cdparam x="504" y="597" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="504" y="597" id="608" />
+<P2  x="572" y="702" id="522" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1183" >
+<cdparam x="464" y="637" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="464" y="637" id="609" />
+<P2  x="439" y="778" id="576" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1184" >
+<cdparam x="424" y="597" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="424" y="597" id="607" />
+<P2  x="346" y="759" id="556" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1185" >
+<cdparam x="289" y="619" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to read channel" value="null" />
+<P1  x="289" y="619" id="617" />
+<P2  x="230" y="803" id="713" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1186" >
+<cdparam x="249" y="579" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="249" y="579" id="615" />
+<P2  x="132" y="789" id="560" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1187" >
+<cdparam x="371" y="93" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from for loop to notified event" value="null" />
+<P1  x="325" y="99" id="647" />
+<P2  x="374" y="128" id="655" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1188" >
+<cdparam x="234" y="169" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="234" y="169" id="653" />
+<P2  x="234" y="202" id="650" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1189" >
+<cdparam x="234" y="104" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from for loop to action state" value="null" />
+<P1  x="235" y="110" id="648" />
+<P2  x="234" y="139" id="652" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1190" >
+<cdparam x="234" y="47" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to for loop" value="null" />
+<P1  x="234" y="47" id="619" />
+<P2  x="235" y="80" id="646" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1191" >
+<cdparam x="425" y="162" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from notified event to choice" value="null" />
+<P1  x="374" y="158" id="656" />
+<P2  x="374" y="182" id="598" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1192" >
+<cdparam x="564" y="482" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to wait event" value="null" />
+<P1  x="464" y="322" id="682" />
+<P2  x="722" y="529" id="661" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1193" >
+<cdparam x="722" y="559" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to read channel" value="null" />
+<P1  x="722" y="559" id="662" />
+<P2  x="722" y="584" id="658" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1194" >
+<cdparam x="604" y="442" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to wait event" value="null" />
+<P1  x="504" y="282" id="678" />
+<P2  x="1008" y="523" id="664" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1195" >
+<cdparam x="1007" y="553" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to read channel" value="null" />
+<P1  x="1008" y="553" id="665" />
+<P2  x="1008" y="580" id="643" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1196" >
+<cdparam x="524" y="442" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to wait event" value="null" />
+<P1  x="464" y="322" id="679" />
+<P2  x="464" y="487" id="667" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1197" >
+<cdparam x="330" y="428" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to wait event" value="null" />
+<P1  x="424" y="282" id="680" />
+<P2  x="289" y="463" id="670" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1198" >
+<cdparam x="318" y="520" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to choice" value="null" />
+<P1  x="289" y="493" id="671" />
+<P2  x="289" y="554" id="614" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1199" >
+<cdparam x="160" y="481" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to action state" value="null" />
+<P1  x="148" y="501" id="591" />
+<P2  x="126" y="544" id="638" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1200" >
+<cdparam x="290" y="388" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to wait event" value="null" />
+<P1  x="424" y="282" id="677" />
+<P2  x="188" y="414" id="673" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1201" >
+<cdparam x="229" y="467" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to choice" value="null" />
+<P1  x="188" y="444" id="674" />
+<P2  x="188" y="476" id="590" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1202" >
+<cdparam x="228" y="501" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="228" y="501" id="592" />
+<P2  x="236" y="524" id="687" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1203" >
+<cdparam x="334" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to wait event" value="null" />
+<P1  x="334" y="207" id="599" />
+<P2  x="301" y="223" id="691" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1204" >
+<cdparam x="301" y="253" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to stop state" value="null" />
+<P1  x="301" y="253" id="692" />
+<P2  x="301" y="285" id="694" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1205" >
+<cdparam x="464" y="517" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to choice" value="null" />
+<P1  x="464" y="517" id="668" />
+<P2  x="464" y="572" id="606" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1206" >
+<cdparam x="329" y="579" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="329" y="579" id="616" />
+<P2  x="353" y="609" id="689" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1207" >
+<cdparam x="126" y="574" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="126" y="574" id="639" />
+<P2  x="126" y="610" id="641" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1208" >
+<cdparam x="414" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to select" value="null" />
+<P1  x="414" y="207" id="600" />
+<P2  x="464" y="257" id="676" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1209" >
+<cdparam x="230" y="833" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from read channel to execI" value="null" />
+<P1  x="230" y="833" id="714" />
+<P2  x="230" y="858" id="580" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1210" >
+<cdparam x="716" y="749" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="968" y="795" id="567" />
+<P2  x="843" y="859" id="550" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1211" >
+<cdparam x="720" y="1074" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="728" y="990" id="763" />
+<P2  x="728" y="1027" id="765" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1212" >
+<cdparam x="733" y="899" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to action state" value="null" />
+<P1  x="803" y="884" id="551" />
+<P2  x="728" y="960" id="762" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1213" >
+<cdparam x="800" y="938" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="843" y="924" id="553" />
+<P2  x="800" y="1004" id="544" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1214" >
+<cdparam x="800" y="1057" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to write channel" value="null" />
+<P1  x="800" y="1044" id="545" />
+<P2  x="800" y="1081" id="767" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1215" >
+<cdparam x="132" y="886" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to write channel" value="null" />
+<P1  x="132" y="886" id="894" />
+<P2  x="132" y="933" id="729" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1216" >
+<cdparam x="943" y="1061" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to write channel" value="null" />
+<P1  x="943" y="1060" id="533" />
+<P2  x="943" y="1118" id="812" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1217" >
+<cdparam x="1049" y="1093" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to write channel" value="null" />
+<P1  x="1049" y="1092" id="585" />
+<P2  x="1049" y="1150" id="837" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1218" >
+<cdparam x="1049" y="994" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="1049" y="994" id="541" />
+<P2  x="1049" y="1052" id="584" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1219" >
+<cdparam x="696" y="742" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to write channel" value="null" />
+<P1  x="722" y="729" id="529" />
+<P2  x="722" y="753" id="862" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1220" >
+<cdparam x="132" y="1125" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send request to write channel" value="null" />
+<P1  x="132" y="1125" id="868" />
+<P2  x="132" y="1162" id="870" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1221" >
+<cdparam x="132" y="1192" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to stop state" value="null" />
+<P1  x="132" y="1192" id="871" />
+<P2  x="132" y="1231" id="873" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1222" >
+<cdparam x="132" y="1066" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to send request" value="null" />
+<P1  x="132" y="1066" id="727" />
+<P2  x="132" y="1095" id="867" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1223" >
+<cdparam x="229" y="1127" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send request to write channel" value="null" />
+<P1  x="229" y="1127" id="876" />
+<P2  x="229" y="1164" id="878" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1224" >
+<cdparam x="346" y="1131" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send request to write channel" value="null" />
+<P1  x="346" y="1131" id="882" />
+<P2  x="346" y="1168" id="884" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1225" >
+<cdparam x="346" y="1051" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to send request" value="null" />
+<P1  x="346" y="1051" id="733" />
+<P2  x="346" y="1101" id="881" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1226" >
+<cdparam x="437" y="1118" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send request to write channel" value="null" />
+<P1  x="438" y="1115" id="888" />
+<P2  x="438" y="1154" id="890" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1227" >
+<cdparam x="438" y="1057" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to send request" value="null" />
+<P1  x="438" y="1057" id="722" />
+<P2  x="438" y="1085" id="887" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1228" >
+<cdparam x="132" y="808" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to action state" value="null" />
+<P1  x="132" y="829" id="561" />
+<P2  x="132" y="856" id="893" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1229" >
+<cdparam x="230" y="898" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to action state" value="null" />
+<P1  x="230" y="898" id="581" />
+<P2  x="230" y="935" id="896" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1230" >
+<cdparam x="230" y="965" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to write channel" value="null" />
+<P1  x="230" y="965" id="897" />
+<P2  x="230" y="997" id="716" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1231" >
+<cdparam x="346" y="799" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to action state" value="null" />
+<P1  x="346" y="799" id="557" />
+<P2  x="346" y="826" id="902" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1232" >
+<cdparam x="346" y="856" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to write channel" value="null" />
+<P1  x="346" y="856" id="903" />
+<P2  x="346" y="895" id="740" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1233" >
+<cdparam x="439" y="818" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to action state" value="null" />
+<P1  x="439" y="818" id="577" />
+<P2  x="439" y="860" id="899" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1234" >
+<cdparam x="439" y="890" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to write channel" value="null" />
+<P1  x="439" y="890" id="900" />
+<P2  x="439" y="936" id="737" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1235" >
+<cdparam x="132" y="963" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="132" y="963" id="730" />
+<P2  x="132" y="981" id="914" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1236" >
+<cdparam x="132" y="1011" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to action state" value="null" />
+<P1  x="132" y="1011" id="915" />
+<P2  x="132" y="1036" id="726" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1237" >
+<cdparam x="230" y="1027" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="230" y="1027" id="717" />
+<P2  x="229" y="1047" id="905" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1238" >
+<cdparam x="228" y="1088" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to send request" value="null" />
+<P1  x="229" y="1077" id="906" />
+<P2  x="229" y="1097" id="875" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1239" >
+<cdparam x="346" y="925" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="346" y="925" id="741" />
+<P2  x="346" y="957" id="908" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1240" >
+<cdparam x="348" y="987" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to action state" value="null" />
+<P1  x="346" y="987" id="909" />
+<P2  x="346" y="1021" id="732" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1241" >
+<cdparam x="439" y="966" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="439" y="966" id="738" />
+<P2  x="438" y="978" id="911" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1242" >
+<cdparam x="438" y="1008" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to action state" value="null" />
+<P1  x="438" y="1008" id="912" />
+<P2  x="438" y="1027" id="721" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1243" >
+<cdparam x="722" y="783" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="722" y="783" id="863" />
+<P2  x="722" y="808" id="917" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1244" >
+<cdparam x="722" y="838" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to stop state" value="null" />
+<P1  x="722" y="838" id="918" />
+<P2  x="722" y="860" id="865" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1245" >
+<cdparam x="800" y="1111" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="800" y="1111" id="768" />
+<P2  x="798" y="1136" id="920" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1246" >
+<cdparam x="798" y="1166" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to action state" value="null" />
+<P1  x="798" y="1166" id="921" />
+<P2  x="799" y="1188" id="804" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1247" >
+<cdparam x="943" y="1148" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="943" y="1148" id="813" />
+<P2  x="943" y="1173" id="923" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1248" >
+<cdparam x="950" y="1201" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to action state" value="null" />
+<P1  x="943" y="1203" id="924" />
+<P2  x="943" y="1229" id="832" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1249" >
+<cdparam x="1049" y="1180" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="1049" y="1180" id="838" />
+<P2  x="1049" y="1206" id="926" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1250" >
+<cdparam x="1049" y="1223" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to action state" value="null" />
+<P1  x="1049" y="1236" id="927" />
+<P2  x="1049" y="1261" id="857" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1251" >
+<cdparam x="883" y="884" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="883" y="884" id="552" />
+<P2  x="909" y="917" id="931" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1252" >
+<cdparam x="612" y="727" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="612" y="727" id="524" />
+<P2  x="622" y="757" id="929" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1253" >
+<cdparam x="532" y="727" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to action state" value="null" />
+<P1  x="532" y="727" id="523" />
+<P2  x="496" y="763" id="807" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1254" >
+<cdparam x="799" y="1218" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="799" y="1218" id="805" />
+<P2  x="799" y="1265" id="743" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1255" >
+<cdparam x="1009" y="954" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="1009" y="954" id="539" />
+<P2  x="943" y="1020" id="532" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1256" >
+<cdparam x="229" y="1194" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to stop state" value="null" />
+<P1  x="229" y="1194" id="879" />
+<P2  x="229" y="1232" id="719" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1257" >
+<cdparam x="346" y="1198" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to stop state" value="null" />
+<P1  x="346" y="1198" id="885" />
+<P2  x="344" y="1224" id="735" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1258" >
+<cdparam x="438" y="1184" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to stop state" value="null" />
+<P1  x="438" y="1184" id="891" />
+<P2  x="438" y="1208" id="724" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1259" >
+<cdparam x="496" y="793" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="496" y="793" id="808" />
+<P2  x="496" y="825" id="810" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1260" >
+<cdparam x="943" y="1259" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="943" y="1259" id="833" />
+<P2  x="943" y="1306" id="835" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1261" >
+<cdparam x="1008" y="736" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to choice" value="null" />
+<P1  x="1008" y="736" id="573" />
+<P2  x="1008" y="770" id="566" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1262" >
+<cdparam x="1008" y="835" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="1008" y="835" id="569" />
+<P2  x="1049" y="929" id="538" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1263" >
+<cdparam x="1049" y="1291" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="1049" y="1291" id="858" />
+<P2  x="1049" y="1336" id="860" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1264" >
+<cdparam x="1208" y="1152" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to write channel" value="null" />
+<P1  x="1208" y="1142" id="517" />
+<P2  x="1208" y="1209" id="933" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1265" >
+<cdparam x="1208" y="1239" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to action state" value="null" />
+<P1  x="1208" y="1239" id="934" />
+<P2  x="1208" y="1290" id="953" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1266" >
+<cdparam x="1208" y="1320" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to send event" value="null" />
+<P1  x="1208" y="1320" id="954" />
+<P2  x="1208" y="1346" id="961" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1267" >
+<cdparam x="1206" y="1385" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to action state" value="null" />
+<P1  x="1208" y="1376" id="962" />
+<P2  x="1207" y="1397" id="958" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1268" >
+<cdparam x="1206" y="1088" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="1208" y="1075" id="513" />
+<P2  x="1208" y="1102" id="516" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1269" >
+<cdparam x="1248" y="1035" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="1248" y="1035" id="512" />
+<P2  x="1287" y="1065" id="964" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1270" >
+<cdparam x="1207" y="1427" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="1207" y="1427" id="959" />
+<P2  x="1207" y="1466" id="956" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1271" >
+<cdparam x="1553" y="1019" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="1567" y="1021" id="483" />
+<P2  x="1529" y="1059" id="476" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1272" >
+<cdparam x="1529" y="1324" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to write channel" value="null" />
+<P1  x="1529" y="1289" id="473" />
+<P2  x="1529" y="1343" id="971" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1273" >
+<cdparam x="1684" y="929" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to send event" value="null" />
+<P1  x="1728" y="930" id="493" />
+<P2  x="1731" y="1021" id="974" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1274" >
+<cdparam x="1615" y="1283" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to write channel" value="null" />
+<P1  x="1641" y="1270" id="497" />
+<P2  x="1641" y="1294" id="1011" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1275" >
+<cdparam x="1641" y="1324" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="1641" y="1324" id="1012" />
+<P2  x="1642" y="1343" id="1053" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1276" >
+<cdparam x="1529" y="1373" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="1529" y="1373" id="972" />
+<P2  x="1529" y="1400" id="1050" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1277" >
+<cdparam x="1529" y="1422" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to stop state" value="null" />
+<P1  x="1529" y="1430" id="1051" />
+<P2  x="1529" y="1452" id="966" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1278" >
+<cdparam x="1642" y="1373" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to write channel" value="null" />
+<P1  x="1642" y="1373" id="1054" />
+<P2  x="1642" y="1399" id="1056" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1279" >
+<cdparam x="1956" y="1361" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to action state" value="null" />
+<P1  x="1956" y="1361" id="451" />
+<P2  x="1920" y="1406" id="1066" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1280" >
+<cdparam x="2100" y="1490" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="2101" y="1491" id="1074" />
+<P2  x="2101" y="1532" id="1076" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1281" >
+<cdparam x="1996" y="1401" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to action state" value="null" />
+<P1  x="1996" y="1401" id="453" />
+<P2  x="1996" y="1429" id="1081" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1282" >
+<cdparam x="1996" y="1459" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to action state" value="null" />
+<P1  x="1996" y="1459" id="1082" />
+<P2  x="1996" y="1488" id="1078" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1283" >
+<cdparam x="2021" y="1038" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="2237" y="966" id="443" />
+<P2  x="2218" y="1054" id="500" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1284" >
+<cdparam x="2217" y="1323" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send request to write channel" value="null" />
+<P1  x="2217" y="1323" id="1124" />
+<P2  x="2217" y="1360" id="1126" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1285" >
+<cdparam x="2218" y="1094" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to action state" value="null" />
+<P1  x="2218" y="1094" id="501" />
+<P2  x="2218" y="1131" id="1129" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1286" >
+<cdparam x="2218" y="1161" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to write channel" value="null" />
+<P1  x="2218" y="1161" id="1130" />
+<P2  x="2218" y="1193" id="1118" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1287" >
+<cdparam x="2218" y="1223" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="2218" y="1223" id="1119" />
+<P2  x="2217" y="1243" id="1132" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1288" >
+<cdparam x="2216" y="1284" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to send request" value="null" />
+<P1  x="2217" y="1273" id="1133" />
+<P2  x="2217" y="1293" id="1123" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1289" >
+<cdparam x="2217" y="1390" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to action state" value="null" />
+<P1  x="2217" y="1390" id="1127" />
+<P2  x="2217" y="1419" id="1135" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1290" >
+<cdparam x="2341" y="1060" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to write channel" value="null" />
+<P1  x="2341" y="1059" id="505" />
+<P2  x="2341" y="1117" id="1138" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1291" >
+<cdparam x="1529" y="1099" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from execI to write channel" value="null" />
+<P1  x="1529" y="1099" id="477" />
+<P2  x="1529" y="1127" id="968" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1292" >
+<cdparam x="2101" y="1433" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to action state" value="null" />
+<P1  x="2101" y="1433" id="437" />
+<P2  x="2101" y="1461" id="1073" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1293" >
+<cdparam x="2158" y="1460" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="2141" y="1393" id="436" />
+<P2  x="2178" y="1416" id="1168" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1294" >
+<cdparam x="1688" y="890" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="1688" y="890" id="491" />
+<P2  x="1607" y="996" id="482" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1295" >
+<cdparam x="1768" y="890" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="1768" y="890" id="492" />
+<P2  x="2277" y="941" id="442" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1296" >
+<cdparam x="2317" y="966" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="2317" y="966" id="444" />
+<P2  x="2341" y="1019" id="504" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1297" >
+<cdparam x="2341" y="1147" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="2341" y="1147" id="1139" />
+<P2  x="2341" y="1194" id="1163" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1298" >
+<cdparam x="2341" y="1224" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to send event" value="null" />
+<P1  x="2341" y="1224" id="1164" />
+<P2  x="2341" y="1262" id="1158" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1299" >
+<cdparam x="1731" y="1051" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to choice" value="null" />
+<P1  x="1731" y="1051" id="975" />
+<P2  x="1731" y="1081" id="1175" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1300" >
+<cdparam x="1647" y="1021" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="1647" y="1021" id="484" />
+<P2  x="1659" y="1052" id="1166" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1301" >
+<cdparam x="1826" y="1324" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to action state" value="null" />
+<P1  x="1826" y="1324" id="461" />
+<P2  x="1826" y="1344" id="1061" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1302" >
+<cdparam x="1826" y="1374" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="1826" y="1374" id="1062" />
+<P2  x="1828" y="1452" id="1064" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1303" >
+<cdparam x="1786" y="1284" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="1786" y="1284" id="459" />
+<P2  x="1740" y="1330" id="1059" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1304" >
+<cdparam x="1920" y="1436" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="1920" y="1436" id="1067" />
+<P2  x="1920" y="1476" id="1069" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1305" >
+<cdparam x="1996" y="1518" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="1996" y="1518" id="1079" />
+<P2  x="1996" y="1538" id="1071" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1306" >
+<cdparam x="2036" y="1361" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="2036" y="1361" id="452" />
+<P2  x="2101" y="1368" id="434" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1307" >
+<cdparam x="1866" y="1284" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="1866" y="1284" id="460" />
+<P2  x="1996" y="1336" id="450" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1308" >
+<cdparam x="2341" y="1292" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="2341" y="1292" id="1159" />
+<P2  x="2340" y="1319" id="1161" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1309" >
+<cdparam x="2217" y="1449" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from action state to stop state" value="null" />
+<P1  x="2217" y="1449" id="1136" />
+<P2  x="2217" y="1478" id="1121" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1310" >
+<cdparam x="2277" y="1006" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to stop state" value="null" />
+<P1  x="2277" y="1006" id="445" />
+<P2  x="2278" y="1034" id="1170" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1311" >
+<cdparam x="1642" y="1429" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to stop state" value="null" />
+<P1  x="1642" y="1429" id="1057" />
+<P2  x="1642" y="1463" id="1014" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1312" >
+<cdparam x="1529" y="1157" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="1529" y="1157" id="969" />
+<P2  x="1529" y="1187" id="1172" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1313" >
+<cdparam x="1529" y="1217" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to execI" value="null" />
+<P1  x="1529" y="1217" id="1173" />
+<P2  x="1529" y="1249" id="472" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1314" >
+<cdparam x="1691" y="1156" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to execI" value="null" />
+<P1  x="1691" y="1156" id="467" />
+<P2  x="1641" y="1230" id="496" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1315" >
+<cdparam x="1771" y="1156" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to choice" value="null" />
+<P1  x="1771" y="1156" id="468" />
+<P2  x="1826" y="1259" id="458" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1316" >
+<cdparam x="1731" y="1111" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from read channel to choice" value="null" />
+<P1  x="1731" y="1111" id="1176" />
+<P2  x="1731" y="1131" id="466" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="Timer" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1012" id="1324" >
+<cdparam x="509" y="222" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="1320" />
+<TGConnectingPoint num="1" id="1321" />
+<TGConnectingPoint num="2" id="1322" />
+<TGConnectingPoint num="3" id="1323" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="1317" >
+<father id="1324" num="0" />
+<cdparam x="464" y="232" />
+<sizeparam width="52" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ x==0 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1318" >
+<father id="1324" num="1" />
+<cdparam x="544" y="234" />
+<sizeparam width="42" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ x&gt;0 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1319" >
+<father id="1324" num="2" />
+<cdparam x="529" y="267" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1000" id="1326" >
+<cdparam x="517" y="87" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1325" />
+</COMPONENT>
+
+<COMPONENT type="1001" id="1328" >
+<cdparam x="417" y="367" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1327" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1331" >
+<cdparam x="393" y="299" />
+<sizeparam width="69" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="timeOut()" />
+<TGConnectingPoint num="0" id="1329" />
+<TGConnectingPoint num="1" id="1330" />
+<extraparam>
+<Data eventName="timeOut" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="1334" >
+<cdparam x="596" y="300" />
+<sizeparam width="52" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="stop() " />
+<TGConnectingPoint num="0" id="1332" />
+<TGConnectingPoint num="1" id="1333" />
+<extraparam>
+<Data eventName="stop" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1336" >
+<cdparam x="612" y="365" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1335" />
+</COMPONENT>
+
+<COMPONENT type="1017" id="1339" >
+<cdparam x="487" y="150" />
+<sizeparam width="75" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="notified event" value="x=?stop()" />
+<TGConnectingPoint num="0" id="1337" />
+<TGConnectingPoint num="1" id="1338" />
+<extraparam>
+<Data eventName="stop" variable="x" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="115" id="1340" >
+<cdparam x="427" y="324" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to stop state" value="null" />
+<P1  x="427" y="324" id="1330" />
+<P2  x="427" y="362" id="1327" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1341" >
+<cdparam x="622" y="325" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from wait event to stop state" value="null" />
+<P1  x="622" y="325" id="1333" />
+<P2  x="622" y="360" id="1335" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1342" >
+<cdparam x="524" y="107" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to notified event" value="null" />
+<P1  x="524" y="107" id="1325" />
+<P2  x="524" y="145" id="1337" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1343" >
+<cdparam x="524" y="175" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from notified event to choice" value="null" />
+<P1  x="524" y="175" id="1338" />
+<P2  x="524" y="212" id="1320" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1344" >
+<cdparam x="484" y="237" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to send event" value="null" />
+<P1  x="484" y="237" id="1321" />
+<P2  x="427" y="294" id="1329" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1345" >
+<cdparam x="564" y="237" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to wait event" value="null" />
+<P1  x="564" y="237" id="1322" />
+<P2  x="622" y="295" id="1332" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="Application" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1012" id="1353" >
+<cdparam x="491" y="277" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="choice" value="null" />
+<TGConnectingPoint num="0" id="1349" />
+<TGConnectingPoint num="1" id="1350" />
+<TGConnectingPoint num="2" id="1351" />
+<TGConnectingPoint num="3" id="1352" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="1346" >
+<father id="1353" num="0" />
+<cdparam x="466" y="287" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1347" >
+<father id="1353" num="1" />
+<cdparam x="526" y="287" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="1348" >
+<father id="1353" num="2" />
+<cdparam x="511" y="322" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1000" id="1355" >
+<cdparam x="501" y="91" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1354" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1358" >
+<cdparam x="482" y="129" />
+<sizeparam width="52" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="open()" />
+<TGConnectingPoint num="0" id="1356" />
+<TGConnectingPoint num="1" id="1357" />
+<extraparam>
+<Data eventName="open" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1006" id="1361" >
+<cdparam x="466" y="178" />
+<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="write channel" value="fromAtoT(1)" />
+<TGConnectingPoint num="0" id="1359" />
+<TGConnectingPoint num="1" id="1360" />
+<extraparam>
+<Data channelName="fromAtoT" nbOfSamples="1" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="1364" >
+<cdparam x="467" y="226" />
+<sizeparam width="80" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="send_TCP()" />
+<TGConnectingPoint num="0" id="1362" />
+<TGConnectingPoint num="1" id="1363" />
+<extraparam>
+<Data eventName="send_TCP" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1366" >
+<cdparam x="576" y="388" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1365" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1369" >
+<cdparam x="559" y="329" />
+<sizeparam width="54" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="abort()" />
+<TGConnectingPoint num="0" id="1367" />
+<TGConnectingPoint num="1" id="1368" />
+<extraparam>
+<Data eventName="abort" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="1372" >
+<cdparam x="406" y="337" />
+<sizeparam width="53" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<enabled value="true" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="close()" />
+<TGConnectingPoint num="0" id="1370" />
+<TGConnectingPoint num="1" id="1371" />
+<extraparam>
+<Data eventName="close" nbOfParams="5" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1374" >
+<cdparam x="422" y="386" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1373" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="1375" >
+<cdparam x="509" y="94" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from start state to send event" value="null" />
+<P1  x="508" y="111" id="1354" />
+<P2  x="508" y="124" id="1356" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1376" >
+<cdparam x="508" y="154" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to write channel" value="null" />
+<P1  x="508" y="154" id="1357" />
+<P2  x="508" y="173" id="1359" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1377" >
+<cdparam x="508" y="222" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from write channel to send event" value="null" />
+<P1  x="508" y="203" id="1360" />
+<P2  x="507" y="221" id="1362" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1378" >
+<cdparam x="586" y="354" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to stop state" value="null" />
+<P1  x="586" y="354" id="1368" />
+<P2  x="586" y="383" id="1365" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1379" >
+<cdparam x="508" y="298" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to choice" value="null" />
+<P1  x="507" y="251" id="1363" />
+<P2  x="506" y="267" id="1349" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1380" >
+<cdparam x="470" y="348" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to send event" value="null" />
+<P1  x="466" y="292" id="1350" />
+<P2  x="432" y="332" id="1370" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1381" >
+<cdparam x="432" y="362" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from send event to stop state" value="null" />
+<P1  x="432" y="362" id="1371" />
+<P2  x="432" y="381" id="1373" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1382" >
+<cdparam x="550" y="348" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from choice to send event" value="null" />
+<P1  x="546" y="292" id="1351" />
+<P2  x="586" y="324" id="1367" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML Architecture" nameTab="Mapping1" >
+<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1400" minY="10" maxY="900" attributes="0" masterClockFrequency="200" >
+<COMPONENT type="1100" id="1452" >
+<cdparam x="51" y="90" />
+<sizeparam width="459" height="321" minWidth="150" minHeight="150" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="cpu0" value="name" />
+<TGConnectingPoint num="0" id="1428" />
+<TGConnectingPoint num="1" id="1429" />
+<TGConnectingPoint num="2" id="1430" />
+<TGConnectingPoint num="3" id="1431" />
+<TGConnectingPoint num="4" id="1432" />
+<TGConnectingPoint num="5" id="1433" />
+<TGConnectingPoint num="6" id="1434" />
+<TGConnectingPoint num="7" id="1435" />
+<TGConnectingPoint num="8" id="1436" />
+<TGConnectingPoint num="9" id="1437" />
+<TGConnectingPoint num="10" id="1438" />
+<TGConnectingPoint num="11" id="1439" />
+<TGConnectingPoint num="12" id="1440" />
+<TGConnectingPoint num="13" id="1441" />
+<TGConnectingPoint num="14" id="1442" />
+<TGConnectingPoint num="15" id="1443" />
+<TGConnectingPoint num="16" id="1444" />
+<TGConnectingPoint num="17" id="1445" />
+<TGConnectingPoint num="18" id="1446" />
+<TGConnectingPoint num="19" id="1447" />
+<TGConnectingPoint num="20" id="1448" />
+<TGConnectingPoint num="21" id="1449" />
+<TGConnectingPoint num="22" id="1450" />
+<TGConnectingPoint num="23" id="1451" />
+<extraparam>
+<info stereotype="CPURRPB" nodeName="cpu0" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="1"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="99"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="1391" >
+<father id="1452" num="0" />
+<cdparam x="226" y="304" />
+<sizeparam width="109" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="350" minY="0" maxY="271" />
+<infoparam name="TGComponent" value="AppC::Timer" />
+<TGConnectingPoint num="0" id="1383" />
+<TGConnectingPoint num="1" id="1384" />
+<TGConnectingPoint num="2" id="1385" />
+<TGConnectingPoint num="3" id="1386" />
+<TGConnectingPoint num="4" id="1387" />
+<TGConnectingPoint num="5" id="1388" />
+<TGConnectingPoint num="6" id="1389" />
+<TGConnectingPoint num="7" id="1390" />
+<extraparam>
+<info value="AppC::Timer" taskName="Timer" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="1400" >
+<father id="1452" num="1" />
+<cdparam x="290" y="234" />
+<sizeparam width="144" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="315" minY="0" maxY="271" />
+<infoparam name="TGComponent" value="AppC::Application" />
+<TGConnectingPoint num="0" id="1392" />
+<TGConnectingPoint num="1" id="1393" />
+<TGConnectingPoint num="2" id="1394" />
+<TGConnectingPoint num="3" id="1395" />
+<TGConnectingPoint num="4" id="1396" />
+<TGConnectingPoint num="5" id="1397" />
+<TGConnectingPoint num="6" id="1398" />
+<TGConnectingPoint num="7" id="1399" />
+<extraparam>
+<info value="AppC::Application" taskName="Application" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="1409" >
+<father id="1452" num="2" />
+<cdparam x="96" y="246" />
+<sizeparam width="109" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="350" minY="0" maxY="271" />
+<infoparam name="TGComponent" value="AppC::TCPIP" />
+<TGConnectingPoint num="0" id="1401" />
+<TGConnectingPoint num="1" id="1402" />
+<TGConnectingPoint num="2" id="1403" />
+<TGConnectingPoint num="3" id="1404" />
+<TGConnectingPoint num="4" id="1405" />
+<TGConnectingPoint num="5" id="1406" />
+<TGConnectingPoint num="6" id="1407" />
+<TGConnectingPoint num="7" id="1408" />
+<extraparam>
+<info value="AppC::TCPIP" taskName="TCPIP" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="1418" >
+<father id="1452" num="3" />
+<cdparam x="291" y="153" />
+<sizeparam width="141" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="318" minY="0" maxY="271" />
+<infoparam name="TGComponent" value="AppC::SmartCard" />
+<TGConnectingPoint num="0" id="1410" />
+<TGConnectingPoint num="1" id="1411" />
+<TGConnectingPoint num="2" id="1412" />
+<TGConnectingPoint num="3" id="1413" />
+<TGConnectingPoint num="4" id="1414" />
+<TGConnectingPoint num="5" id="1415" />
+<TGConnectingPoint num="6" id="1416" />
+<TGConnectingPoint num="7" id="1417" />
+<extraparam>
+<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="1427" >
+<father id="1452" num="4" />
+<cdparam x="92" y="154" />
+<sizeparam width="172" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="287" minY="0" maxY="271" />
+<infoparam name="TGComponent" value="AppC::InterfaceDevice" />
+<TGConnectingPoint num="0" id="1419" />
+<TGConnectingPoint num="1" id="1420" />
+<TGConnectingPoint num="2" id="1421" />
+<TGConnectingPoint num="3" id="1422" />
+<TGConnectingPoint num="4" id="1423" />
+<TGConnectingPoint num="5" id="1424" />
+<TGConnectingPoint num="6" id="1425" />
+<TGConnectingPoint num="7" id="1426" />
+<extraparam>
+<info value="AppC::InterfaceDevice" taskName="InterfaceDevice" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+
+
+</TMLArchiDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML Architecture" nameTab="Mapping2" >
+<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1400" minY="10" maxY="900" attributes="0" masterClockFrequency="200" >
+<COMPONENT type="1105" id="1477" >
+<cdparam x="420" y="527" />
+<sizeparam width="189" height="131" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Memory0" value="name" />
+<TGConnectingPoint num="0" id="1453" />
+<TGConnectingPoint num="1" id="1454" />
+<TGConnectingPoint num="2" id="1455" />
+<TGConnectingPoint num="3" id="1456" />
+<TGConnectingPoint num="4" id="1457" />
+<TGConnectingPoint num="5" id="1458" />
+<TGConnectingPoint num="6" id="1459" />
+<TGConnectingPoint num="7" id="1460" />
+<TGConnectingPoint num="8" id="1461" />
+<TGConnectingPoint num="9" id="1462" />
+<TGConnectingPoint num="10" id="1463" />
+<TGConnectingPoint num="11" id="1464" />
+<TGConnectingPoint num="12" id="1465" />
+<TGConnectingPoint num="13" id="1466" />
+<TGConnectingPoint num="14" id="1467" />
+<TGConnectingPoint num="15" id="1468" />
+<TGConnectingPoint num="16" id="1469" />
+<TGConnectingPoint num="17" id="1470" />
+<TGConnectingPoint num="18" id="1471" />
+<TGConnectingPoint num="19" id="1472" />
+<TGConnectingPoint num="20" id="1473" />
+<TGConnectingPoint num="21" id="1474" />
+<TGConnectingPoint num="22" id="1475" />
+<TGConnectingPoint num="23" id="1476" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="Memory0" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="0" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="1502" >
+<cdparam x="389" y="438" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Bus0" value="name" />
+<TGConnectingPoint num="0" id="1478" />
+<TGConnectingPoint num="1" id="1479" />
+<TGConnectingPoint num="2" id="1480" />
+<TGConnectingPoint num="3" id="1481" />
+<TGConnectingPoint num="4" id="1482" />
+<TGConnectingPoint num="5" id="1483" />
+<TGConnectingPoint num="6" id="1484" />
+<TGConnectingPoint num="7" id="1485" />
+<TGConnectingPoint num="8" id="1486" />
+<TGConnectingPoint num="9" id="1487" />
+<TGConnectingPoint num="10" id="1488" />
+<TGConnectingPoint num="11" id="1489" />
+<TGConnectingPoint num="12" id="1490" />
+<TGConnectingPoint num="13" id="1491" />
+<TGConnectingPoint num="14" id="1492" />
+<TGConnectingPoint num="15" id="1493" />
+<TGConnectingPoint num="16" id="1494" />
+<TGConnectingPoint num="17" id="1495" />
+<TGConnectingPoint num="18" id="1496" />
+<TGConnectingPoint num="19" id="1497" />
+<TGConnectingPoint num="20" id="1498" />
+<TGConnectingPoint num="21" id="1499" />
+<TGConnectingPoint num="22" id="1500" />
+<TGConnectingPoint num="23" id="1501" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="Bus0" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="5"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="1536" >
+<cdparam x="685" y="396" />
+<sizeparam width="174" height="135" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU2" value="name" />
+<TGConnectingPoint num="0" id="1512" />
+<TGConnectingPoint num="1" id="1513" />
+<TGConnectingPoint num="2" id="1514" />
+<TGConnectingPoint num="3" id="1515" />
+<TGConnectingPoint num="4" id="1516" />
+<TGConnectingPoint num="5" id="1517" />
+<TGConnectingPoint num="6" id="1518" />
+<TGConnectingPoint num="7" id="1519" />
+<TGConnectingPoint num="8" id="1520" />
+<TGConnectingPoint num="9" id="1521" />
+<TGConnectingPoint num="10" id="1522" />
+<TGConnectingPoint num="11" id="1523" />
+<TGConnectingPoint num="12" id="1524" />
+<TGConnectingPoint num="13" id="1525" />
+<TGConnectingPoint num="14" id="1526" />
+<TGConnectingPoint num="15" id="1527" />
+<TGConnectingPoint num="16" id="1528" />
+<TGConnectingPoint num="17" id="1529" />
+<TGConnectingPoint num="18" id="1530" />
+<TGConnectingPoint num="19" id="1531" />
+<TGConnectingPoint num="20" id="1532" />
+<TGConnectingPoint num="21" id="1533" />
+<TGConnectingPoint num="22" id="1534" />
+<TGConnectingPoint num="23" id="1535" />
+<extraparam>
+<info stereotype="CPURR" nodeName="CPU2" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="4" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="1511" >
+<father id="1536" num="0" />
+<cdparam x="715" y="448" />
+<sizeparam width="109" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="65" minY="0" maxY="95" />
+<infoparam name="TGComponent" value="AppC::Timer" />
+<TGConnectingPoint num="0" id="1503" />
+<TGConnectingPoint num="1" id="1504" />
+<TGConnectingPoint num="2" id="1505" />
+<TGConnectingPoint num="3" id="1506" />
+<TGConnectingPoint num="4" id="1507" />
+<TGConnectingPoint num="5" id="1508" />
+<TGConnectingPoint num="6" id="1509" />
+<TGConnectingPoint num="7" id="1510" />
+<extraparam>
+<info value="AppC::Timer" taskName="Timer" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1100" id="1570" >
+<cdparam x="167" y="400" />
+<sizeparam width="165" height="126" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU1" value="name" />
+<TGConnectingPoint num="0" id="1546" />
+<TGConnectingPoint num="1" id="1547" />
+<TGConnectingPoint num="2" id="1548" />
+<TGConnectingPoint num="3" id="1549" />
+<TGConnectingPoint num="4" id="1550" />
+<TGConnectingPoint num="5" id="1551" />
+<TGConnectingPoint num="6" id="1552" />
+<TGConnectingPoint num="7" id="1553" />
+<TGConnectingPoint num="8" id="1554" />
+<TGConnectingPoint num="9" id="1555" />
+<TGConnectingPoint num="10" id="1556" />
+<TGConnectingPoint num="11" id="1557" />
+<TGConnectingPoint num="12" id="1558" />
+<TGConnectingPoint num="13" id="1559" />
+<TGConnectingPoint num="14" id="1560" />
+<TGConnectingPoint num="15" id="1561" />
+<TGConnectingPoint num="16" id="1562" />
+<TGConnectingPoint num="17" id="1563" />
+<TGConnectingPoint num="18" id="1564" />
+<TGConnectingPoint num="19" id="1565" />
+<TGConnectingPoint num="20" id="1566" />
+<TGConnectingPoint num="21" id="1567" />
+<TGConnectingPoint num="22" id="1568" />
+<TGConnectingPoint num="23" id="1569" />
+<extraparam>
+<info stereotype="CPURR" nodeName="CPU1" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="2" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="1545" >
+<father id="1570" num="0" />
+<cdparam x="167" y="445" />
+<sizeparam width="163" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2" minY="0" maxY="86" />
+<infoparam name="TGComponent" value="AppC::InterfaceDevice" />
+<TGConnectingPoint num="0" id="1537" />
+<TGConnectingPoint num="1" id="1538" />
+<TGConnectingPoint num="2" id="1539" />
+<TGConnectingPoint num="3" id="1540" />
+<TGConnectingPoint num="4" id="1541" />
+<TGConnectingPoint num="5" id="1542" />
+<TGConnectingPoint num="6" id="1543" />
+<TGConnectingPoint num="7" id="1544" />
+<extraparam>
+<info value="AppC::InterfaceDevice" taskName="InterfaceDevice" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1100" id="1622" >
+<cdparam x="389" y="243" />
+<sizeparam width="250" height="146" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU0" value="name" />
+<TGConnectingPoint num="0" id="1598" />
+<TGConnectingPoint num="1" id="1599" />
+<TGConnectingPoint num="2" id="1600" />
+<TGConnectingPoint num="3" id="1601" />
+<TGConnectingPoint num="4" id="1602" />
+<TGConnectingPoint num="5" id="1603" />
+<TGConnectingPoint num="6" id="1604" />
+<TGConnectingPoint num="7" id="1605" />
+<TGConnectingPoint num="8" id="1606" />
+<TGConnectingPoint num="9" id="1607" />
+<TGConnectingPoint num="10" id="1608" />
+<TGConnectingPoint num="11" id="1609" />
+<TGConnectingPoint num="12" id="1610" />
+<TGConnectingPoint num="13" id="1611" />
+<TGConnectingPoint num="14" id="1612" />
+<TGConnectingPoint num="15" id="1613" />
+<TGConnectingPoint num="16" id="1614" />
+<TGConnectingPoint num="17" id="1615" />
+<TGConnectingPoint num="18" id="1616" />
+<TGConnectingPoint num="19" id="1617" />
+<TGConnectingPoint num="20" id="1618" />
+<TGConnectingPoint num="21" id="1619" />
+<TGConnectingPoint num="22" id="1620" />
+<TGConnectingPoint num="23" id="1621" />
+<extraparam>
+<info stereotype="CPURR" nodeName="CPU0" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="18" execiTime="1" execcTime="1" clockRatio="3" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="1579" >
+<father id="1622" num="0" />
+<cdparam x="486" y="303" />
+<sizeparam width="136" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="114" minY="0" maxY="106" />
+<infoparam name="TGComponent" value="AppC::SmartCard" />
+<TGConnectingPoint num="0" id="1571" />
+<TGConnectingPoint num="1" id="1572" />
+<TGConnectingPoint num="2" id="1573" />
+<TGConnectingPoint num="3" id="1574" />
+<TGConnectingPoint num="4" id="1575" />
+<TGConnectingPoint num="5" id="1576" />
+<TGConnectingPoint num="6" id="1577" />
+<TGConnectingPoint num="7" id="1578" />
+<extraparam>
+<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="1588" >
+<father id="1622" num="1" />
+<cdparam x="415" y="349" />
+<sizeparam width="139" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="111" minY="0" maxY="106" />
+<infoparam name="TGComponent" value="AppC::Application" />
+<TGConnectingPoint num="0" id="1580" />
+<TGConnectingPoint num="1" id="1581" />
+<TGConnectingPoint num="2" id="1582" />
+<TGConnectingPoint num="3" id="1583" />
+<TGConnectingPoint num="4" id="1584" />
+<TGConnectingPoint num="5" id="1585" />
+<TGConnectingPoint num="6" id="1586" />
+<TGConnectingPoint num="7" id="1587" />
+<extraparam>
+<info value="AppC::Application" taskName="Application" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="1597" >
+<father id="1622" num="2" />
+<cdparam x="396" y="258" />
+<sizeparam width="108" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="142" minY="0" maxY="106" />
+<infoparam name="TGComponent" value="AppC::TCPIP" />
+<TGConnectingPoint num="0" id="1589" />
+<TGConnectingPoint num="1" id="1590" />
+<TGConnectingPoint num="2" id="1591" />
+<TGConnectingPoint num="3" id="1592" />
+<TGConnectingPoint num="4" id="1593" />
+<TGConnectingPoint num="5" id="1594" />
+<TGConnectingPoint num="6" id="1595" />
+<TGConnectingPoint num="7" id="1596" />
+<extraparam>
+<info value="AppC::TCPIP" taskName="TCPIP" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="125" id="1623" >
+<cdparam x="513" y="536" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from Memory0 to Bus0" value="{info}" />
+<P1  x="514" y="527" id="1454" />
+<P2  x="514" y="488" id="1484" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="1624" >
+<cdparam x="301" y="469" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from CPU1 to Bus0" value="{info}" />
+<P1  x="332" y="463" id="1550" />
+<P2  x="389" y="463" id="1481" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="1625" >
+<cdparam x="773" y="479" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from CPU2 to Bus0" value="{info}" />
+<P1  x="685" y="463" id="1515" />
+<P2  x="639" y="463" id="1482" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="1626" >
+<cdparam x="499" y="331" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector from CPU0 to Bus0" value="{info}" />
+<P1  x="514" y="389" id="1604" />
+<P2  x="514" y="438" id="1479" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+
+</TMLArchiDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="Diplodocus Methodology" nameTab="DIPLODOCUS_Methodology" >
+<DiplodocusMethodologyDiagramPanel name="DIPLODOCUS_Methodology" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" >
+<COMPONENT type="6003" id="1631" >
+<cdparam x="60" y="417" />
+<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Requirements" />
+<TGConnectingPoint num="0" id="1627" />
+<TGConnectingPoint num="1" id="1628" />
+<TGConnectingPoint num="2" id="1629" />
+<TGConnectingPoint num="3" id="1630" />
+</COMPONENT>
+
+<COMPONENT type="6006" id="1636" >
+<cdparam x="600" y="100" />
+<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Com. Patterns" />
+<TGConnectingPoint num="0" id="1632" />
+<TGConnectingPoint num="1" id="1633" />
+<TGConnectingPoint num="2" id="1634" />
+<TGConnectingPoint num="3" id="1635" />
+</COMPONENT>
+
+<COMPONENT type="6002" id="1645" >
+<cdparam x="518" y="306" />
+<sizeparam width="318" height="136" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Mapping" />
+<TGConnectingPoint num="0" id="1639" />
+<TGConnectingPoint num="1" id="1640" />
+<TGConnectingPoint num="2" id="1641" />
+<TGConnectingPoint num="3" id="1642" />
+<TGConnectingPoint num="4" id="1643" />
+<TGConnectingPoint num="5" id="1644" />
+</COMPONENT>
+<SUBCOMPONENT type="6005" id="1637" >
+<father id="1645" num="0" />
+<cdparam x="523" y="361" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="605" maxX="605" minY="355" maxY="355" />
+<infoparam name="value " value="Mapping2" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="6005" id="1638" >
+<father id="1645" num="1" />
+<cdparam x="523" y="346" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="605" maxX="605" minY="340" maxY="340" />
+<infoparam name="value " value="Mapping1" />
+</SUBCOMPONENT>
+
+<COMPONENT type="6001" id="1652" >
+<cdparam x="850" y="100" />
+<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Architecture" />
+<TGConnectingPoint num="0" id="1648" />
+<TGConnectingPoint num="1" id="1649" />
+<TGConnectingPoint num="2" id="1650" />
+<TGConnectingPoint num="3" id="1651" />
+</COMPONENT>
+<SUBCOMPONENT type="6005" id="1646" >
+<father id="1652" num="0" />
+<cdparam x="855" y="155" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="855" maxX="855" minY="155" maxY="155" />
+<infoparam name="value " value="Mapping2" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="6005" id="1647" >
+<father id="1652" num="1" />
+<cdparam x="855" y="140" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="855" maxX="855" minY="140" maxY="140" />
+<infoparam name="value " value="Mapping1" />
+</SUBCOMPONENT>
+
+<COMPONENT type="6000" id="1658" >
+<cdparam x="233" y="101" />
+<sizeparam width="334" height="161" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Application" />
+<TGConnectingPoint num="0" id="1654" />
+<TGConnectingPoint num="1" id="1655" />
+<TGConnectingPoint num="2" id="1656" />
+<TGConnectingPoint num="3" id="1657" />
+</COMPONENT>
+<SUBCOMPONENT type="6005" id="1653" >
+<father id="1658" num="0" />
+<cdparam x="238" y="141" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="355" maxX="355" minY="140" maxY="140" />
+<infoparam name="value " value="AppC" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="6004" id="1660" >
+<cdparam x="950" y="220" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="1659" />
+<P1  x="950" y="220" id="1648" />
+<P2  x="740" y="306" id="1640" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="6004" id="1662" >
+<cdparam x="700" y="220" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="1661" />
+<P1  x="700" y="220" id="1632" />
+<P2  x="677" y="306" id="1641" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="6004" id="1664" >
+<cdparam x="450" y="220" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="1663" />
+<P1  x="400" y="262" id="1654" />
+<P2  x="613" y="306" id="1639" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</DiplodocusMethodologyDiagramPanel>
+
+</Modeling>
+
+
+
+
+</TURTLEGMODELING>
\ No newline at end of file
diff --git a/ttool/src/test/resources/ui/generateccode/models/ZigBeeTutorial.xml b/ttool/src/test/resources/ui/diagram2tml/input/ZigBeeTutorial.xml
similarity index 99%
rename from ttool/src/test/resources/ui/generateccode/models/ZigBeeTutorial.xml
rename to ttool/src/test/resources/ui/diagram2tml/input/ZigBeeTutorial.xml
index ab65b34d37b0fa0253202101f22b732d2ad68a46..88b4b46794d09a5f5169b0b1669bf5bdc8ecc40d 100644
--- a/ttool/src/test/resources/ui/generateccode/models/ZigBeeTutorial.xml
+++ b/ttool/src/test/resources/ui/diagram2tml/input/ZigBeeTutorial.xml
@@ -6235,7 +6235,7 @@ POLLING
 <TGConnectingPoint num="0" id="2490" />
 </COMPONENT>
 
-<COMPONENT type="1508" id="2496" >
+<!-- Issue #69 COMPONENT type="1508" id="2496" >
 <cdparam x="360" y="163" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -6245,7 +6245,7 @@ POLLING
 <TGConnectingPoint num="1" id="2493" />
 <TGConnectingPoint num="2" id="2494" />
 <TGConnectingPoint num="3" id="2495" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="2507" >
 <cdparam x="182" y="332" />
@@ -6911,7 +6911,7 @@ POLLING
 <infoparam name="guard 3" value="[ transferTerminated == true ]" />
 </SUBCOMPONENT>
 
-<COMPONENT type="1508" id="2866" >
+<!-- Issue #69 COMPONENT type="1508" id="2866" >
 <cdparam x="279" y="127" />
 <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
 <hidden value="false" />
@@ -6921,7 +6921,7 @@ POLLING
 <TGConnectingPoint num="1" id="2863" />
 <TGConnectingPoint num="2" id="2864" />
 <TGConnectingPoint num="3" id="2865" />
-</COMPONENT>
+</COMPONENT-->
 
 <COMPONENT type="1505" id="2877" >
 <cdparam x="101" y="296" />
diff --git a/ttool/src/test/resources/ui/generateccode/input/ZigBeeTutorial.xml b/ttool/src/test/resources/ui/generateccode/input/ZigBeeTutorial.xml
new file mode 100644
index 0000000000000000000000000000000000000000..88b4b46794d09a5f5169b0b1669bf5bdc8ecc40d
--- /dev/null
+++ b/ttool/src/test/resources/ui/generateccode/input/ZigBeeTutorial.xml
@@ -0,0 +1,15816 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<TURTLEGMODELING version="0.99-beta4">
+
+<Modeling type="Diplodocus Methodology" nameTab="DIPLODOCUS_Methodology" >
+<DiplodocusMethodologyDiagramPanel name="DIPLODOCUS_Methodology" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" >
+<COMPONENT type="6003" id="5" >
+<cdparam x="63" y="99" />
+<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Requirements" />
+<TGConnectingPoint num="0" id="1" />
+<TGConnectingPoint num="1" id="2" />
+<TGConnectingPoint num="2" id="3" />
+<TGConnectingPoint num="3" id="4" />
+</COMPONENT>
+
+<COMPONENT type="6006" id="13" >
+<cdparam x="600" y="100" />
+<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Com. Patterns" />
+<TGConnectingPoint num="0" id="9" />
+<TGConnectingPoint num="1" id="10" />
+<TGConnectingPoint num="2" id="11" />
+<TGConnectingPoint num="3" id="12" />
+</COMPONENT>
+<SUBCOMPONENT type="6005" id="6" >
+<father id="13" num="0" />
+<cdparam x="605" y="140" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="605" maxX="605" minY="140" maxY="140" />
+<infoparam name="value " value="DMA_transfer" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="6005" id="7" >
+<father id="13" num="1" />
+<cdparam x="605" y="155" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="605" maxX="605" minY="155" maxY="155" />
+<infoparam name="value " value="Double_DMA_transfer" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="6005" id="8" >
+<father id="13" num="2" />
+<cdparam x="605" y="170" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="605" maxX="605" minY="170" maxY="170" />
+<infoparam name="value " value="CP_Memory_Copy" />
+</SUBCOMPONENT>
+
+<COMPONENT type="6002" id="23" >
+<cdparam x="600" y="300" />
+<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Mapping" />
+<TGConnectingPoint num="0" id="17" />
+<TGConnectingPoint num="1" id="18" />
+<TGConnectingPoint num="2" id="19" />
+<TGConnectingPoint num="3" id="20" />
+<TGConnectingPoint num="4" id="21" />
+<TGConnectingPoint num="5" id="22" />
+</COMPONENT>
+<SUBCOMPONENT type="6005" id="14" >
+<father id="23" num="0" />
+<cdparam x="605" y="340" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="605" maxX="605" minY="340" maxY="340" />
+<infoparam name="value " value="Mapping_0" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="6005" id="15" >
+<father id="23" num="1" />
+<cdparam x="605" y="355" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="605" maxX="605" minY="355" maxY="355" />
+<infoparam name="value " value="Mapping_1" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="6005" id="16" >
+<father id="23" num="2" />
+<cdparam x="605" y="370" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="605" maxX="605" minY="370" maxY="370" />
+<infoparam name="value " value="Mapping_2" />
+</SUBCOMPONENT>
+
+<COMPONENT type="6001" id="29" >
+<cdparam x="850" y="100" />
+<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Architecture" />
+<TGConnectingPoint num="0" id="25" />
+<TGConnectingPoint num="1" id="26" />
+<TGConnectingPoint num="2" id="27" />
+<TGConnectingPoint num="3" id="28" />
+</COMPONENT>
+<SUBCOMPONENT type="6005" id="24" >
+<father id="29" num="0" />
+<cdparam x="855" y="140" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="855" maxX="855" minY="140" maxY="140" />
+<infoparam name="value " value="Embb" />
+</SUBCOMPONENT>
+
+<COMPONENT type="6000" id="35" >
+<cdparam x="350" y="100" />
+<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" />
+<infoparam name="TGComponent" value="Application" />
+<TGConnectingPoint num="0" id="31" />
+<TGConnectingPoint num="1" id="32" />
+<TGConnectingPoint num="2" id="33" />
+<TGConnectingPoint num="3" id="34" />
+</COMPONENT>
+<SUBCOMPONENT type="6005" id="30" >
+<father id="35" num="0" />
+<cdparam x="355" y="140" />
+<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="355" maxX="355" minY="140" maxY="140" />
+<infoparam name="value " value="Zigbee_TX" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="6004" id="37" >
+<cdparam x="950" y="220" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="36" />
+<P1  x="950" y="220" id="25" />
+<P2  x="740" y="300" id="18" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="6004" id="39" >
+<cdparam x="700" y="220" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="38" />
+<P1  x="700" y="220" id="9" />
+<P2  x="700" y="300" id="19" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="6004" id="41" >
+<cdparam x="450" y="220" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="&lt;&lt;deriveReqt&gt;&gt;" />
+<TGConnectingPoint num="0" id="40" />
+<P1  x="450" y="220" id="31" />
+<P2  x="660" y="300" id="17" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</DiplodocusMethodologyDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML Component Design" nameTab="Zigbee_TX" >
+<TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="0" maxX="1702" minY="0" maxY="563" channels="true" events="true" requests="true" zoom="1.0000000000000007" >
+<CONNECTOR type="126" id="43" >
+<cdparam x="1409" y="343" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1397" y="380" id="772" />
+<P2  x="1446" y="258" id="125" />
+<Point x="1446" y="393" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="42" >
+<father id="43" num="0" />
+<cdparam x="1446" y="393" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="126" id="44" >
+<cdparam x="1383" y="381" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1364" y="380" id="723" />
+<P2  x="1397" y="406" id="777" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="45" >
+<cdparam x="1507" y="228" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1494" y="263" id="662" />
+<P2  x="1535" y="237" id="608" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="46" >
+<cdparam x="1462" y="247" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1463" y="250" id="120" />
+<P2  x="1494" y="237" id="657" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="47" >
+<cdparam x="1507" y="420" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1494" y="423" id="643" />
+<P2  x="1536" y="397" id="591" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="50" >
+<cdparam x="1409" y="471" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1397" y="510" id="753" />
+<P2  x="1494" y="397" id="638" />
+<Point x="1432" y="523" />
+<Point x="1432" y="410" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="48" >
+<father id="50" num="0" />
+<cdparam x="1432" y="523" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="49" >
+<father id="50" num="1" />
+<cdparam x="1432" y="410" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="126" id="51" >
+<cdparam x="1379" y="511" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1362" y="510" id="708" />
+<P2  x="1397" y="536" id="758" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="52" >
+<cdparam x="1507" y="344" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1494" y="367" id="624" />
+<P2  x="1536" y="341" id="595" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="55" >
+<cdparam x="1413" y="226" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1400" y="249" id="887" />
+<P2  x="1494" y="341" id="619" />
+<Point x="1430" y="262" />
+<Point x="1430" y="354" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="53" >
+<father id="55" num="0" />
+<cdparam x="1430" y="262" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="54" >
+<father id="55" num="1" />
+<cdparam x="1430" y="354" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="126" id="56" >
+<cdparam x="1388" y="262" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1365" y="249" id="823" />
+<P2  x="1400" y="275" id="892" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="58" >
+<cdparam x="1413" y="97" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1400" y="111" id="800" />
+<P2  x="1446" y="241" id="123" />
+<Point x="1446" y="124" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="57" >
+<father id="58" num="0" />
+<cdparam x="1446" y="124" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="126" id="59" >
+<cdparam x="1384" y="124" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1364" y="111" id="838" />
+<P2  x="1400" y="137" id="805" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="60" >
+<cdparam x="1208" y="347" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1186" y="401" id="690" />
+<P2  x="1220" y="375" id="721" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="62" >
+<cdparam x="1133" y="246" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1133" y="251" id="141" />
+<P2  x="1186" y="375" id="685" />
+<Point x="1133" y="388" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="61" >
+<father id="62" num="0" />
+<cdparam x="1133" y="388" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="126" id="63" >
+<cdparam x="1105" y="254" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1046" y="230" id="455" />
+<P2  x="1117" y="243" id="136" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="64" >
+<cdparam x="1068" y="239" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1010" y="230" id="531" />
+<P2  x="1046" y="256" id="460" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="67" >
+<cdparam x="1105" y="374" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1046" y="363" id="563" />
+<P2  x="1186" y="249" id="849" />
+<Point x="1103" y="376" />
+<Point x="1103" y="262" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="65" >
+<father id="67" num="0" />
+<cdparam x="1103" y="376" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="66" >
+<father id="67" num="1" />
+<cdparam x="1103" y="262" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="126" id="68" >
+<cdparam x="1065" y="372" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1008" y="363" id="516" />
+<P2  x="1046" y="389" id="568" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="69" >
+<cdparam x="1208" y="499" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1186" y="513" id="739" />
+<P2  x="1224" y="487" id="706" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="72" >
+<cdparam x="1105" y="408" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1046" y="395" id="544" />
+<P2  x="1186" y="487" id="734" />
+<Point x="1101" y="408" />
+<Point x="1101" y="500" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="70" >
+<father id="72" num="0" />
+<cdparam x="1101" y="408" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="71" >
+<father id="72" num="1" />
+<cdparam x="1101" y="500" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="126" id="73" >
+<cdparam x="1065" y="404" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1008" y="395" id="512" />
+<P2  x="1046" y="421" id="549" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="74" >
+<cdparam x="907" y="352" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="838" y="400" id="479" />
+<P2  x="874" y="374" id="518" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="75" >
+<cdparam x="867" y="334" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="799" y="374" id="340" />
+<P2  x="838" y="374" id="474" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="76" >
+<cdparam x="840" y="380" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="756" y="374" id="382" />
+<P2  x="799" y="400" id="345" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="77" >
+<cdparam x="915" y="228" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="838" y="274" id="498" />
+<P2  x="876" y="248" id="533" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="78" >
+<cdparam x="867" y="229" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="799" y="248" id="359" />
+<P2  x="838" y="248" id="493" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="79" >
+<cdparam x="829" y="257" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="754" y="248" id="397" />
+<P2  x="799" y="274" id="364" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="80" >
+<cdparam x="669" y="349" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="555" y="399" id="432" />
+<P2  x="597" y="373" id="380" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="81" >
+<cdparam x="586" y="350" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="516" y="373" id="312" />
+<P2  x="555" y="373" id="427" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="82" >
+<cdparam x="550" y="379" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="470" y="373" id="267" />
+<P2  x="516" y="399" id="317" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="83" >
+<cdparam x="687" y="234" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="555" y="282" id="413" />
+<P2  x="598" y="256" id="395" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="84" >
+<cdparam x="586" y="233" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="516" y="256" id="293" />
+<P2  x="555" y="256" id="408" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="85" >
+<cdparam x="549" y="263" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="473" y="256" id="282" />
+<P2  x="516" y="282" id="298" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="86" >
+<cdparam x="364" y="356" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="275" y="394" id="230" />
+<P2  x="316" y="368" id="265" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="87" >
+<cdparam x="321" y="350" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="231" y="368" id="152" />
+<P2  x="275" y="368" id="225" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="88" >
+<cdparam x="200" y="373" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="187" y="368" id="173" />
+<P2  x="231" y="394" id="157" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="89" >
+<cdparam x="356" y="223" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="275" y="271" id="249" />
+<P2  x="317" y="245" id="280" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="90" >
+<cdparam x="314" y="221" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="231" y="245" id="197" />
+<P2  x="275" y="245" id="244" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="91" >
+<cdparam x="175" y="251" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="154" y="245" id="186" />
+<P2  x="231" y="271" id="202" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="92" >
+<cdparam x="1792" y="148" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1186" y="275" id="854" />
+<P2  x="1222" y="249" id="821" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="94" >
+<cdparam x="1750" y="240" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1133" y="234" id="139" />
+<P2  x="1186" y="110" id="868" />
+<Point x="1133" y="123" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="93" >
+<father id="94" num="0" />
+<cdparam x="1133" y="123" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="3161" minY="0" maxY="1161" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="126" id="95" >
+<cdparam x="1792" y="8" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1186" y="136" id="873" />
+<P2  x="1220" y="110" id="836" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="96" >
+<cdparam x="280" y="67" />
+<sizeparam width="10" height="10" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1657" y="318" id="593" />
+<P2  x="1562" y="278" id="606" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="97" >
+<cdparam x="390" y="97" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1333" y="181" id="819" />
+<P2  x="1257" y="145" id="834" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="98" >
+<cdparam x="390" y="507" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="1335" y="458" id="704" />
+<P2  x="1249" y="424" id="719" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="99" >
+<cdparam x="1161" y="396" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="989" y="321" id="514" />
+<P2  x="912" y="285" id="529" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="100" >
+<cdparam x="1160" y="500" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="729" y="327" id="378" />
+<P2  x="639" y="286" id="393" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="101" >
+<cdparam x="755" y="498" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="442" y="319" id="263" />
+<P2  x="350" y="277" id="278" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="126" id="102" >
+<cdparam x="217" y="495" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="Connector between ports" />
+<P1  x="108" y="320" id="171" />
+<P2  x="53" y="276" id="184" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<COMPONENT type="301" id="119" >
+<cdparam x="18" y="45" />
+<sizeparam width="237" height="51" minWidth="60" minHeight="23" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="UML Note" value="In this model THE PARAMETER SIZE
+IS NOT MODIFIED according to the
+operations performed by the
+processing tasks
+" />
+<TGConnectingPoint num="0" id="103" />
+<TGConnectingPoint num="1" id="104" />
+<TGConnectingPoint num="2" id="105" />
+<TGConnectingPoint num="3" id="106" />
+<TGConnectingPoint num="4" id="107" />
+<TGConnectingPoint num="5" id="108" />
+<TGConnectingPoint num="6" id="109" />
+<TGConnectingPoint num="7" id="110" />
+<TGConnectingPoint num="8" id="111" />
+<TGConnectingPoint num="9" id="112" />
+<TGConnectingPoint num="10" id="113" />
+<TGConnectingPoint num="11" id="114" />
+<TGConnectingPoint num="12" id="115" />
+<TGConnectingPoint num="13" id="116" />
+<TGConnectingPoint num="14" id="117" />
+<TGConnectingPoint num="15" id="118" />
+<extraparam>
+<Line value="In this model THE PARAMETER SIZE" />
+<Line value="IS NOT MODIFIED according to the" />
+<Line value="operations performed by the" />
+<Line value="processing tasks" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1208" id="135" >
+<cdparam x="1441" y="239" />
+<sizeparam width="22" height="22" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="Composite port" value="J" />
+<TGConnectingPoint num="0" id="120" />
+<TGConnectingPoint num="1" id="121" />
+<TGConnectingPoint num="2" id="122" />
+<TGConnectingPoint num="3" id="123" />
+<TGConnectingPoint num="4" id="124" />
+<TGConnectingPoint num="5" id="125" />
+<TGConnectingPoint num="6" id="126" />
+<TGConnectingPoint num="7" id="127" />
+<TGConnectingPoint num="8" id="128" />
+<TGConnectingPoint num="9" id="129" />
+<TGConnectingPoint num="10" id="130" />
+<TGConnectingPoint num="11" id="131" />
+<TGConnectingPoint num="12" id="132" />
+<TGConnectingPoint num="13" id="133" />
+<TGConnectingPoint num="14" id="134" />
+</COMPONENT>
+
+<COMPONENT type="1207" id="151" >
+<cdparam x="1117" y="232" />
+<sizeparam width="22" height="22" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="Composite port" value="F" />
+<TGConnectingPoint num="0" id="136" />
+<TGConnectingPoint num="1" id="137" />
+<TGConnectingPoint num="2" id="138" />
+<TGConnectingPoint num="3" id="139" />
+<TGConnectingPoint num="4" id="140" />
+<TGConnectingPoint num="5" id="141" />
+<TGConnectingPoint num="6" id="142" />
+<TGConnectingPoint num="7" id="143" />
+<TGConnectingPoint num="8" id="144" />
+<TGConnectingPoint num="9" id="145" />
+<TGConnectingPoint num="10" id="146" />
+<TGConnectingPoint num="11" id="147" />
+<TGConnectingPoint num="12" id="148" />
+<TGConnectingPoint num="13" id="149" />
+<TGConnectingPoint num="14" id="150" />
+</COMPONENT>
+
+<COMPONENT type="1200" id="224" >
+<cdparam x="0" y="164" />
+<sizeparam width="231" height="254" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="Composite component" value="Source" />
+<TGConnectingPoint num="0" id="216" />
+<TGConnectingPoint num="1" id="217" />
+<TGConnectingPoint num="2" id="218" />
+<TGConnectingPoint num="3" id="219" />
+<TGConnectingPoint num="4" id="220" />
+<TGConnectingPoint num="5" id="221" />
+<TGConnectingPoint num="6" id="222" />
+<TGConnectingPoint num="7" id="223" />
+<extraparam>
+<info hiddeni="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1201" id="170" >
+<father id="224" num="0" />
+<cdparam x="218" y="368" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="218" minY="-13" maxY="241" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="152" />
+<TGConnectingPoint num="1" id="153" />
+<TGConnectingPoint num="2" id="154" />
+<TGConnectingPoint num="3" id="155" />
+<TGConnectingPoint num="4" id="156" />
+<TGConnectingPoint num="5" id="157" />
+<TGConnectingPoint num="6" id="158" />
+<TGConnectingPoint num="7" id="159" />
+<TGConnectingPoint num="8" id="160" />
+<TGConnectingPoint num="9" id="161" />
+<TGConnectingPoint num="10" id="162" />
+<TGConnectingPoint num="11" id="163" />
+<TGConnectingPoint num="12" id="164" />
+<TGConnectingPoint num="13" id="165" />
+<TGConnectingPoint num="14" id="166" />
+<TGConnectingPoint num="15" id="167" />
+<TGConnectingPoint num="16" id="168" />
+<TGConnectingPoint num="17" id="169" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="183" >
+<father id="224" num="1" />
+<cdparam x="2" y="333" />
+<sizeparam width="185" height="74" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="46" minY="0" maxY="180" />
+<infoparam name="Primitive component" value="F_Source" />
+<TGConnectingPoint num="0" id="175" />
+<TGConnectingPoint num="1" id="176" />
+<TGConnectingPoint num="2" id="177" />
+<TGConnectingPoint num="3" id="178" />
+<TGConnectingPoint num="4" id="179" />
+<TGConnectingPoint num="5" id="180" />
+<TGConnectingPoint num="6" id="181" />
+<TGConnectingPoint num="7" id="182" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="127" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="172" >
+<father id="183" num="0" />
+<cdparam x="95" y="320" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="172" minY="-13" maxY="61" />
+<infoparam name="Primitive port" value="Request source_req" />
+<TGConnectingPoint num="0" id="171" />
+<extraparam>
+<Prop commName="source_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="174" >
+<father id="183" num="1" />
+<cdparam x="174" y="368" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="172" minY="-13" maxY="61" />
+<infoparam name="Primitive port" value="Event Source_evt_out" />
+<TGConnectingPoint num="0" id="173" />
+<extraparam>
+<Prop commName="Source_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="196" >
+<father id="224" num="2" />
+<cdparam x="18" y="208" />
+<sizeparam width="136" height="81" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="95" minY="0" maxY="173" />
+<infoparam name="Primitive component" value="X_Source" />
+<TGConnectingPoint num="0" id="188" />
+<TGConnectingPoint num="1" id="189" />
+<TGConnectingPoint num="2" id="190" />
+<TGConnectingPoint num="3" id="191" />
+<TGConnectingPoint num="4" id="192" />
+<TGConnectingPoint num="5" id="193" />
+<TGConnectingPoint num="6" id="194" />
+<TGConnectingPoint num="7" id="195" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="185" >
+<father id="196" num="0" />
+<cdparam x="40" y="276" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="123" minY="-13" maxY="68" />
+<infoparam name="Primitive port" value="Request source_req" />
+<TGConnectingPoint num="0" id="184" />
+<extraparam>
+<Prop commName="source_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="187" >
+<father id="196" num="1" />
+<cdparam x="141" y="245" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="123" minY="-13" maxY="68" />
+<infoparam name="Primitive port" value="Channel Source_ch_out" />
+<TGConnectingPoint num="0" id="186" />
+<extraparam>
+<Prop commName="Source_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="true" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="Source_evt_out" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="215" >
+<father id="224" num="3" />
+<cdparam x="218" y="245" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="218" minY="-13" maxY="241" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="197" />
+<TGConnectingPoint num="1" id="198" />
+<TGConnectingPoint num="2" id="199" />
+<TGConnectingPoint num="3" id="200" />
+<TGConnectingPoint num="4" id="201" />
+<TGConnectingPoint num="5" id="202" />
+<TGConnectingPoint num="6" id="203" />
+<TGConnectingPoint num="7" id="204" />
+<TGConnectingPoint num="8" id="205" />
+<TGConnectingPoint num="9" id="206" />
+<TGConnectingPoint num="10" id="207" />
+<TGConnectingPoint num="11" id="208" />
+<TGConnectingPoint num="12" id="209" />
+<TGConnectingPoint num="13" id="210" />
+<TGConnectingPoint num="14" id="211" />
+<TGConnectingPoint num="15" id="212" />
+<TGConnectingPoint num="16" id="213" />
+<TGConnectingPoint num="17" id="214" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1200" id="339" >
+<cdparam x="275" y="165" />
+<sizeparam width="241" height="259" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="Composite component" value="Symbol2ChipSeq" />
+<TGConnectingPoint num="0" id="331" />
+<TGConnectingPoint num="1" id="332" />
+<TGConnectingPoint num="2" id="333" />
+<TGConnectingPoint num="3" id="334" />
+<TGConnectingPoint num="4" id="335" />
+<TGConnectingPoint num="5" id="336" />
+<TGConnectingPoint num="6" id="337" />
+<TGConnectingPoint num="7" id="338" />
+<extraparam>
+<info hiddeni="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1201" id="243" >
+<father id="339" num="0" />
+<cdparam x="262" y="368" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="228" minY="-13" maxY="246" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="225" />
+<TGConnectingPoint num="1" id="226" />
+<TGConnectingPoint num="2" id="227" />
+<TGConnectingPoint num="3" id="228" />
+<TGConnectingPoint num="4" id="229" />
+<TGConnectingPoint num="5" id="230" />
+<TGConnectingPoint num="6" id="231" />
+<TGConnectingPoint num="7" id="232" />
+<TGConnectingPoint num="8" id="233" />
+<TGConnectingPoint num="9" id="234" />
+<TGConnectingPoint num="10" id="235" />
+<TGConnectingPoint num="11" id="236" />
+<TGConnectingPoint num="12" id="237" />
+<TGConnectingPoint num="13" id="238" />
+<TGConnectingPoint num="14" id="239" />
+<TGConnectingPoint num="15" id="240" />
+<TGConnectingPoint num="16" id="241" />
+<TGConnectingPoint num="17" id="242" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="262" >
+<father id="339" num="1" />
+<cdparam x="262" y="245" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="228" minY="-13" maxY="246" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="244" />
+<TGConnectingPoint num="1" id="245" />
+<TGConnectingPoint num="2" id="246" />
+<TGConnectingPoint num="3" id="247" />
+<TGConnectingPoint num="4" id="248" />
+<TGConnectingPoint num="5" id="249" />
+<TGConnectingPoint num="6" id="250" />
+<TGConnectingPoint num="7" id="251" />
+<TGConnectingPoint num="8" id="252" />
+<TGConnectingPoint num="9" id="253" />
+<TGConnectingPoint num="10" id="254" />
+<TGConnectingPoint num="11" id="255" />
+<TGConnectingPoint num="12" id="256" />
+<TGConnectingPoint num="13" id="257" />
+<TGConnectingPoint num="14" id="258" />
+<TGConnectingPoint num="15" id="259" />
+<TGConnectingPoint num="16" id="260" />
+<TGConnectingPoint num="17" id="261" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="277" >
+<father id="339" num="2" />
+<cdparam x="316" y="332" />
+<sizeparam width="154" height="81" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="87" minY="0" maxY="178" />
+<infoparam name="Primitive component" value="F_Symbol2ChipSeq" />
+<TGConnectingPoint num="0" id="269" />
+<TGConnectingPoint num="1" id="270" />
+<TGConnectingPoint num="2" id="271" />
+<TGConnectingPoint num="3" id="272" />
+<TGConnectingPoint num="4" id="273" />
+<TGConnectingPoint num="5" id="274" />
+<TGConnectingPoint num="6" id="275" />
+<TGConnectingPoint num="7" id="276" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="264" >
+<father id="277" num="0" />
+<cdparam x="429" y="319" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="141" minY="-13" maxY="68" />
+<infoparam name="Primitive port" value="Request bit2chip_req" />
+<TGConnectingPoint num="0" id="263" />
+<extraparam>
+<Prop commName="bit2chip_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="266" >
+<father id="277" num="1" />
+<cdparam x="303" y="368" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="141" minY="-13" maxY="68" />
+<infoparam name="Primitive port" value="Event bit2symbol_evt_in" />
+<TGConnectingPoint num="0" id="265" />
+<extraparam>
+<Prop commName="bit2symbol_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="268" >
+<father id="277" num="2" />
+<cdparam x="457" y="373" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="141" minY="-13" maxY="68" />
+<infoparam name="Primitive port" value="Event bit2symbol_evt_out" />
+<TGConnectingPoint num="0" id="267" />
+<extraparam>
+<Prop commName="bit2symbol_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="292" >
+<father id="339" num="3" />
+<cdparam x="317" y="208" />
+<sizeparam width="156" height="82" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="85" minY="0" maxY="177" />
+<infoparam name="Primitive component" value="X_Symbol2ChipSeq" />
+<TGConnectingPoint num="0" id="284" />
+<TGConnectingPoint num="1" id="285" />
+<TGConnectingPoint num="2" id="286" />
+<TGConnectingPoint num="3" id="287" />
+<TGConnectingPoint num="4" id="288" />
+<TGConnectingPoint num="5" id="289" />
+<TGConnectingPoint num="6" id="290" />
+<TGConnectingPoint num="7" id="291" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="279" >
+<father id="292" num="0" />
+<cdparam x="337" y="277" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="69" />
+<infoparam name="Primitive port" value="Request bit2chip_req" />
+<TGConnectingPoint num="0" id="278" />
+<extraparam>
+<Prop commName="bit2chip_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="281" >
+<father id="292" num="1" />
+<cdparam x="304" y="245" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="69" />
+<infoparam name="Primitive port" value="Channel symbol2ChipSeq_ch_in" />
+<TGConnectingPoint num="0" id="280" />
+<extraparam>
+<Prop commName="symbol2ChipSeq_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="bit2chip_evt_in" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="283" >
+<father id="292" num="2" />
+<cdparam x="460" y="256" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="69" />
+<infoparam name="Primitive port" value="Channel symbol2ChipSeq_ch_out" />
+<TGConnectingPoint num="0" id="282" />
+<extraparam>
+<Prop commName="symbol2ChipSeq_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="bit2chip_evt_out" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="311" >
+<father id="339" num="4" />
+<cdparam x="503" y="256" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="228" minY="-13" maxY="246" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="293" />
+<TGConnectingPoint num="1" id="294" />
+<TGConnectingPoint num="2" id="295" />
+<TGConnectingPoint num="3" id="296" />
+<TGConnectingPoint num="4" id="297" />
+<TGConnectingPoint num="5" id="298" />
+<TGConnectingPoint num="6" id="299" />
+<TGConnectingPoint num="7" id="300" />
+<TGConnectingPoint num="8" id="301" />
+<TGConnectingPoint num="9" id="302" />
+<TGConnectingPoint num="10" id="303" />
+<TGConnectingPoint num="11" id="304" />
+<TGConnectingPoint num="12" id="305" />
+<TGConnectingPoint num="13" id="306" />
+<TGConnectingPoint num="14" id="307" />
+<TGConnectingPoint num="15" id="308" />
+<TGConnectingPoint num="16" id="309" />
+<TGConnectingPoint num="17" id="310" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="330" >
+<father id="339" num="5" />
+<cdparam x="503" y="373" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="228" minY="-13" maxY="246" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="312" />
+<TGConnectingPoint num="1" id="313" />
+<TGConnectingPoint num="2" id="314" />
+<TGConnectingPoint num="3" id="315" />
+<TGConnectingPoint num="4" id="316" />
+<TGConnectingPoint num="5" id="317" />
+<TGConnectingPoint num="6" id="318" />
+<TGConnectingPoint num="7" id="319" />
+<TGConnectingPoint num="8" id="320" />
+<TGConnectingPoint num="9" id="321" />
+<TGConnectingPoint num="10" id="322" />
+<TGConnectingPoint num="11" id="323" />
+<TGConnectingPoint num="12" id="324" />
+<TGConnectingPoint num="13" id="325" />
+<TGConnectingPoint num="14" id="326" />
+<TGConnectingPoint num="15" id="327" />
+<TGConnectingPoint num="16" id="328" />
+<TGConnectingPoint num="17" id="329" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1200" id="454" >
+<cdparam x="555" y="168" />
+<sizeparam width="244" height="262" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="Composite component" value="Chip2Octet" />
+<TGConnectingPoint num="0" id="446" />
+<TGConnectingPoint num="1" id="447" />
+<TGConnectingPoint num="2" id="448" />
+<TGConnectingPoint num="3" id="449" />
+<TGConnectingPoint num="4" id="450" />
+<TGConnectingPoint num="5" id="451" />
+<TGConnectingPoint num="6" id="452" />
+<TGConnectingPoint num="7" id="453" />
+<extraparam>
+<info hiddeni="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1201" id="358" >
+<father id="454" num="0" />
+<cdparam x="786" y="374" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="231" minY="-13" maxY="249" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="340" />
+<TGConnectingPoint num="1" id="341" />
+<TGConnectingPoint num="2" id="342" />
+<TGConnectingPoint num="3" id="343" />
+<TGConnectingPoint num="4" id="344" />
+<TGConnectingPoint num="5" id="345" />
+<TGConnectingPoint num="6" id="346" />
+<TGConnectingPoint num="7" id="347" />
+<TGConnectingPoint num="8" id="348" />
+<TGConnectingPoint num="9" id="349" />
+<TGConnectingPoint num="10" id="350" />
+<TGConnectingPoint num="11" id="351" />
+<TGConnectingPoint num="12" id="352" />
+<TGConnectingPoint num="13" id="353" />
+<TGConnectingPoint num="14" id="354" />
+<TGConnectingPoint num="15" id="355" />
+<TGConnectingPoint num="16" id="356" />
+<TGConnectingPoint num="17" id="357" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="377" >
+<father id="454" num="1" />
+<cdparam x="786" y="248" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="231" minY="-13" maxY="249" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="359" />
+<TGConnectingPoint num="1" id="360" />
+<TGConnectingPoint num="2" id="361" />
+<TGConnectingPoint num="3" id="362" />
+<TGConnectingPoint num="4" id="363" />
+<TGConnectingPoint num="5" id="364" />
+<TGConnectingPoint num="6" id="365" />
+<TGConnectingPoint num="7" id="366" />
+<TGConnectingPoint num="8" id="367" />
+<TGConnectingPoint num="9" id="368" />
+<TGConnectingPoint num="10" id="369" />
+<TGConnectingPoint num="11" id="370" />
+<TGConnectingPoint num="12" id="371" />
+<TGConnectingPoint num="13" id="372" />
+<TGConnectingPoint num="14" id="373" />
+<TGConnectingPoint num="15" id="374" />
+<TGConnectingPoint num="16" id="375" />
+<TGConnectingPoint num="17" id="376" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="392" >
+<father id="454" num="2" />
+<cdparam x="597" y="340" />
+<sizeparam width="159" height="73" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="85" minY="0" maxY="189" />
+<infoparam name="Primitive component" value="F_Chip2Octet" />
+<TGConnectingPoint num="0" id="384" />
+<TGConnectingPoint num="1" id="385" />
+<TGConnectingPoint num="2" id="386" />
+<TGConnectingPoint num="3" id="387" />
+<TGConnectingPoint num="4" id="388" />
+<TGConnectingPoint num="5" id="389" />
+<TGConnectingPoint num="6" id="390" />
+<TGConnectingPoint num="7" id="391" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="379" >
+<father id="392" num="0" />
+<cdparam x="716" y="327" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="146" minY="-13" maxY="60" />
+<infoparam name="Primitive port" value="Request chip2octet_req" />
+<TGConnectingPoint num="0" id="378" />
+<extraparam>
+<Prop commName="chip2octet_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="381" >
+<father id="392" num="1" />
+<cdparam x="584" y="373" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="146" minY="-13" maxY="60" />
+<infoparam name="Primitive port" value="Event chip2octet_evt_in" />
+<TGConnectingPoint num="0" id="380" />
+<extraparam>
+<Prop commName="chip2octet_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="383" >
+<father id="392" num="2" />
+<cdparam x="743" y="374" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="146" minY="-13" maxY="60" />
+<infoparam name="Primitive port" value="Event chip2octet_evt_out" />
+<TGConnectingPoint num="0" id="382" />
+<extraparam>
+<Prop commName="chip2octet_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="407" >
+<father id="454" num="3" />
+<cdparam x="598" y="214" />
+<sizeparam width="156" height="85" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="88" minY="0" maxY="177" />
+<infoparam name="Primitive component" value="X_Chip2Octet" />
+<TGConnectingPoint num="0" id="399" />
+<TGConnectingPoint num="1" id="400" />
+<TGConnectingPoint num="2" id="401" />
+<TGConnectingPoint num="3" id="402" />
+<TGConnectingPoint num="4" id="403" />
+<TGConnectingPoint num="5" id="404" />
+<TGConnectingPoint num="6" id="405" />
+<TGConnectingPoint num="7" id="406" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="394" >
+<father id="407" num="0" />
+<cdparam x="626" y="286" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="72" />
+<infoparam name="Primitive port" value="Request chip2octet_req" />
+<TGConnectingPoint num="0" id="393" />
+<extraparam>
+<Prop commName="chip2octet_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="396" >
+<father id="407" num="1" />
+<cdparam x="585" y="256" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="72" />
+<infoparam name="Primitive port" value="Channel chip2octet_ch_in" />
+<TGConnectingPoint num="0" id="395" />
+<extraparam>
+<Prop commName="chip2octet_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="chip2octet_evt_in" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="398" >
+<father id="407" num="2" />
+<cdparam x="741" y="248" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="72" />
+<infoparam name="Primitive port" value="Channel chip2octet_ch_out" />
+<TGConnectingPoint num="0" id="397" />
+<extraparam>
+<Prop commName="chip2octet_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="chip2octet_evt_out" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="426" >
+<father id="454" num="4" />
+<cdparam x="542" y="256" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="231" minY="-13" maxY="249" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="408" />
+<TGConnectingPoint num="1" id="409" />
+<TGConnectingPoint num="2" id="410" />
+<TGConnectingPoint num="3" id="411" />
+<TGConnectingPoint num="4" id="412" />
+<TGConnectingPoint num="5" id="413" />
+<TGConnectingPoint num="6" id="414" />
+<TGConnectingPoint num="7" id="415" />
+<TGConnectingPoint num="8" id="416" />
+<TGConnectingPoint num="9" id="417" />
+<TGConnectingPoint num="10" id="418" />
+<TGConnectingPoint num="11" id="419" />
+<TGConnectingPoint num="12" id="420" />
+<TGConnectingPoint num="13" id="421" />
+<TGConnectingPoint num="14" id="422" />
+<TGConnectingPoint num="15" id="423" />
+<TGConnectingPoint num="16" id="424" />
+<TGConnectingPoint num="17" id="425" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="445" >
+<father id="454" num="5" />
+<cdparam x="542" y="373" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="231" minY="-13" maxY="249" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="427" />
+<TGConnectingPoint num="1" id="428" />
+<TGConnectingPoint num="2" id="429" />
+<TGConnectingPoint num="3" id="430" />
+<TGConnectingPoint num="4" id="431" />
+<TGConnectingPoint num="5" id="432" />
+<TGConnectingPoint num="6" id="433" />
+<TGConnectingPoint num="7" id="434" />
+<TGConnectingPoint num="8" id="435" />
+<TGConnectingPoint num="9" id="436" />
+<TGConnectingPoint num="10" id="437" />
+<TGConnectingPoint num="11" id="438" />
+<TGConnectingPoint num="12" id="439" />
+<TGConnectingPoint num="13" id="440" />
+<TGConnectingPoint num="14" id="441" />
+<TGConnectingPoint num="15" id="442" />
+<TGConnectingPoint num="16" id="443" />
+<TGConnectingPoint num="17" id="444" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1200" id="590" >
+<cdparam x="838" y="154" />
+<sizeparam width="208" height="281" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="Composite component" value="CWL" />
+<TGConnectingPoint num="0" id="582" />
+<TGConnectingPoint num="1" id="583" />
+<TGConnectingPoint num="2" id="584" />
+<TGConnectingPoint num="3" id="585" />
+<TGConnectingPoint num="4" id="586" />
+<TGConnectingPoint num="5" id="587" />
+<TGConnectingPoint num="6" id="588" />
+<TGConnectingPoint num="7" id="589" />
+<extraparam>
+<info hiddeni="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1201" id="473" >
+<father id="590" num="0" />
+<cdparam x="1033" y="230" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="455" />
+<TGConnectingPoint num="1" id="456" />
+<TGConnectingPoint num="2" id="457" />
+<TGConnectingPoint num="3" id="458" />
+<TGConnectingPoint num="4" id="459" />
+<TGConnectingPoint num="5" id="460" />
+<TGConnectingPoint num="6" id="461" />
+<TGConnectingPoint num="7" id="462" />
+<TGConnectingPoint num="8" id="463" />
+<TGConnectingPoint num="9" id="464" />
+<TGConnectingPoint num="10" id="465" />
+<TGConnectingPoint num="11" id="466" />
+<TGConnectingPoint num="12" id="467" />
+<TGConnectingPoint num="13" id="468" />
+<TGConnectingPoint num="14" id="469" />
+<TGConnectingPoint num="15" id="470" />
+<TGConnectingPoint num="16" id="471" />
+<TGConnectingPoint num="17" id="472" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="492" >
+<father id="590" num="1" />
+<cdparam x="825" y="374" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="474" />
+<TGConnectingPoint num="1" id="475" />
+<TGConnectingPoint num="2" id="476" />
+<TGConnectingPoint num="3" id="477" />
+<TGConnectingPoint num="4" id="478" />
+<TGConnectingPoint num="5" id="479" />
+<TGConnectingPoint num="6" id="480" />
+<TGConnectingPoint num="7" id="481" />
+<TGConnectingPoint num="8" id="482" />
+<TGConnectingPoint num="9" id="483" />
+<TGConnectingPoint num="10" id="484" />
+<TGConnectingPoint num="11" id="485" />
+<TGConnectingPoint num="12" id="486" />
+<TGConnectingPoint num="13" id="487" />
+<TGConnectingPoint num="14" id="488" />
+<TGConnectingPoint num="15" id="489" />
+<TGConnectingPoint num="16" id="490" />
+<TGConnectingPoint num="17" id="491" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="511" >
+<father id="590" num="2" />
+<cdparam x="825" y="248" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="493" />
+<TGConnectingPoint num="1" id="494" />
+<TGConnectingPoint num="2" id="495" />
+<TGConnectingPoint num="3" id="496" />
+<TGConnectingPoint num="4" id="497" />
+<TGConnectingPoint num="5" id="498" />
+<TGConnectingPoint num="6" id="499" />
+<TGConnectingPoint num="7" id="500" />
+<TGConnectingPoint num="8" id="501" />
+<TGConnectingPoint num="9" id="502" />
+<TGConnectingPoint num="10" id="503" />
+<TGConnectingPoint num="11" id="504" />
+<TGConnectingPoint num="12" id="505" />
+<TGConnectingPoint num="13" id="506" />
+<TGConnectingPoint num="14" id="507" />
+<TGConnectingPoint num="15" id="508" />
+<TGConnectingPoint num="16" id="509" />
+<TGConnectingPoint num="17" id="510" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="528" >
+<father id="590" num="3" />
+<cdparam x="874" y="334" />
+<sizeparam width="134" height="92" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="74" minY="0" maxY="189" />
+<infoparam name="Primitive component" value="F_CWL" />
+<TGConnectingPoint num="0" id="520" />
+<TGConnectingPoint num="1" id="521" />
+<TGConnectingPoint num="2" id="522" />
+<TGConnectingPoint num="3" id="523" />
+<TGConnectingPoint num="4" id="524" />
+<TGConnectingPoint num="5" id="525" />
+<TGConnectingPoint num="6" id="526" />
+<TGConnectingPoint num="7" id="527" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="513" >
+<father id="528" num="0" />
+<cdparam x="995" y="395" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="79" />
+<infoparam name="Primitive port" value="Event cwl_evt_out_1" />
+<TGConnectingPoint num="0" id="512" />
+<extraparam>
+<Prop commName="cwl_evt_out_1" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="515" >
+<father id="528" num="1" />
+<cdparam x="976" y="321" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="79" />
+<infoparam name="Primitive port" value="Request cwl_req" />
+<TGConnectingPoint num="0" id="514" />
+<extraparam>
+<Prop commName="cwl_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="517" >
+<father id="528" num="2" />
+<cdparam x="995" y="363" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="79" />
+<infoparam name="Primitive port" value="Event cwl_evt_out" />
+<TGConnectingPoint num="0" id="516" />
+<extraparam>
+<Prop commName="cwl_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="519" >
+<father id="528" num="3" />
+<cdparam x="861" y="374" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="79" />
+<infoparam name="Primitive port" value="Event cwl_evt_in" />
+<TGConnectingPoint num="0" id="518" />
+<extraparam>
+<Prop commName="cwl_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="543" >
+<father id="590" num="4" />
+<cdparam x="876" y="202" />
+<sizeparam width="134" height="96" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="74" minY="0" maxY="185" />
+<infoparam name="Primitive component" value="X_CWL" />
+<TGConnectingPoint num="0" id="535" />
+<TGConnectingPoint num="1" id="536" />
+<TGConnectingPoint num="2" id="537" />
+<TGConnectingPoint num="3" id="538" />
+<TGConnectingPoint num="4" id="539" />
+<TGConnectingPoint num="5" id="540" />
+<TGConnectingPoint num="6" id="541" />
+<TGConnectingPoint num="7" id="542" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="530" >
+<father id="543" num="0" />
+<cdparam x="899" y="285" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="83" />
+<infoparam name="Primitive port" value="Request cwl_req" />
+<TGConnectingPoint num="0" id="529" />
+<extraparam>
+<Prop commName="cwl_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="532" >
+<father id="543" num="1" />
+<cdparam x="997" y="230" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="83" />
+<infoparam name="Primitive port" value="Channel cwl_ch_out" />
+<TGConnectingPoint num="0" id="531" />
+<extraparam>
+<Prop commName="cwl_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="cwl_evt_out" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="534" >
+<father id="543" num="2" />
+<cdparam x="863" y="248" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="83" />
+<infoparam name="Primitive port" value="Channel cwl_ch_in" />
+<TGConnectingPoint num="0" id="533" />
+<extraparam>
+<Prop commName="cwl_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="cwl_evt_in" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="562" >
+<father id="590" num="5" />
+<cdparam x="1033" y="395" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="544" />
+<TGConnectingPoint num="1" id="545" />
+<TGConnectingPoint num="2" id="546" />
+<TGConnectingPoint num="3" id="547" />
+<TGConnectingPoint num="4" id="548" />
+<TGConnectingPoint num="5" id="549" />
+<TGConnectingPoint num="6" id="550" />
+<TGConnectingPoint num="7" id="551" />
+<TGConnectingPoint num="8" id="552" />
+<TGConnectingPoint num="9" id="553" />
+<TGConnectingPoint num="10" id="554" />
+<TGConnectingPoint num="11" id="555" />
+<TGConnectingPoint num="12" id="556" />
+<TGConnectingPoint num="13" id="557" />
+<TGConnectingPoint num="14" id="558" />
+<TGConnectingPoint num="15" id="559" />
+<TGConnectingPoint num="16" id="560" />
+<TGConnectingPoint num="17" id="561" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="581" >
+<father id="590" num="6" />
+<cdparam x="1033" y="363" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="563" />
+<TGConnectingPoint num="1" id="564" />
+<TGConnectingPoint num="2" id="565" />
+<TGConnectingPoint num="3" id="566" />
+<TGConnectingPoint num="4" id="567" />
+<TGConnectingPoint num="5" id="568" />
+<TGConnectingPoint num="6" id="569" />
+<TGConnectingPoint num="7" id="570" />
+<TGConnectingPoint num="8" id="571" />
+<TGConnectingPoint num="9" id="572" />
+<TGConnectingPoint num="10" id="573" />
+<TGConnectingPoint num="11" id="574" />
+<TGConnectingPoint num="12" id="575" />
+<TGConnectingPoint num="13" id="576" />
+<TGConnectingPoint num="14" id="577" />
+<TGConnectingPoint num="15" id="578" />
+<TGConnectingPoint num="16" id="579" />
+<TGConnectingPoint num="17" id="580" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1200" id="684" >
+<cdparam x="1494" y="155" />
+<sizeparam width="208" height="282" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="Composite component" value="Sink" />
+<TGConnectingPoint num="0" id="676" />
+<TGConnectingPoint num="1" id="677" />
+<TGConnectingPoint num="2" id="678" />
+<TGConnectingPoint num="3" id="679" />
+<TGConnectingPoint num="4" id="680" />
+<TGConnectingPoint num="5" id="681" />
+<TGConnectingPoint num="6" id="682" />
+<TGConnectingPoint num="7" id="683" />
+<extraparam>
+<info hiddeni="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1202" id="605" >
+<father id="684" num="0" />
+<cdparam x="1536" y="331" />
+<sizeparam width="153" height="94" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="55" minY="0" maxY="188" />
+<infoparam name="Primitive component" value="F_Sink" />
+<TGConnectingPoint num="0" id="597" />
+<TGConnectingPoint num="1" id="598" />
+<TGConnectingPoint num="2" id="599" />
+<TGConnectingPoint num="3" id="600" />
+<TGConnectingPoint num="4" id="601" />
+<TGConnectingPoint num="5" id="602" />
+<TGConnectingPoint num="6" id="603" />
+<TGConnectingPoint num="7" id="604" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+<Attribute access="2" id="size_1" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="592" >
+<father id="605" num="0" />
+<cdparam x="1523" y="397" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="140" minY="-13" maxY="81" />
+<infoparam name="Primitive port" value="Event sink_evt_in_1" />
+<TGConnectingPoint num="0" id="591" />
+<extraparam>
+<Prop commName="sink_evt_in_1" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="594" >
+<father id="605" num="1" />
+<cdparam x="1644" y="318" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="140" minY="-13" maxY="81" />
+<infoparam name="Primitive port" value="Request sink_req" />
+<TGConnectingPoint num="0" id="593" />
+<extraparam>
+<Prop commName="sink_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="596" >
+<father id="605" num="2" />
+<cdparam x="1523" y="341" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="140" minY="-13" maxY="81" />
+<infoparam name="Primitive port" value="Event sink_evt_in" />
+<TGConnectingPoint num="0" id="595" />
+<extraparam>
+<Prop commName="sink_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="618" >
+<father id="684" num="1" />
+<cdparam x="1535" y="205" />
+<sizeparam width="148" height="86" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="60" minY="0" maxY="196" />
+<infoparam name="Primitive component" value="X_Sink" />
+<TGConnectingPoint num="0" id="610" />
+<TGConnectingPoint num="1" id="611" />
+<TGConnectingPoint num="2" id="612" />
+<TGConnectingPoint num="3" id="613" />
+<TGConnectingPoint num="4" id="614" />
+<TGConnectingPoint num="5" id="615" />
+<TGConnectingPoint num="6" id="616" />
+<TGConnectingPoint num="7" id="617" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="607" >
+<father id="618" num="0" />
+<cdparam x="1549" y="278" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="135" minY="-13" maxY="73" />
+<infoparam name="Primitive port" value="Request sink_req" />
+<TGConnectingPoint num="0" id="606" />
+<extraparam>
+<Prop commName="sink_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="609" >
+<father id="618" num="1" />
+<cdparam x="1522" y="237" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="135" minY="-13" maxY="73" />
+<infoparam name="Primitive port" value="Channel sink_ch_in" />
+<TGConnectingPoint num="0" id="608" />
+<extraparam>
+<Prop commName="sink_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="true" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="sink_evt_in" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="637" >
+<father id="684" num="2" />
+<cdparam x="1481" y="341" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="269" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="619" />
+<TGConnectingPoint num="1" id="620" />
+<TGConnectingPoint num="2" id="621" />
+<TGConnectingPoint num="3" id="622" />
+<TGConnectingPoint num="4" id="623" />
+<TGConnectingPoint num="5" id="624" />
+<TGConnectingPoint num="6" id="625" />
+<TGConnectingPoint num="7" id="626" />
+<TGConnectingPoint num="8" id="627" />
+<TGConnectingPoint num="9" id="628" />
+<TGConnectingPoint num="10" id="629" />
+<TGConnectingPoint num="11" id="630" />
+<TGConnectingPoint num="12" id="631" />
+<TGConnectingPoint num="13" id="632" />
+<TGConnectingPoint num="14" id="633" />
+<TGConnectingPoint num="15" id="634" />
+<TGConnectingPoint num="16" id="635" />
+<TGConnectingPoint num="17" id="636" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="656" >
+<father id="684" num="3" />
+<cdparam x="1481" y="397" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="269" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="638" />
+<TGConnectingPoint num="1" id="639" />
+<TGConnectingPoint num="2" id="640" />
+<TGConnectingPoint num="3" id="641" />
+<TGConnectingPoint num="4" id="642" />
+<TGConnectingPoint num="5" id="643" />
+<TGConnectingPoint num="6" id="644" />
+<TGConnectingPoint num="7" id="645" />
+<TGConnectingPoint num="8" id="646" />
+<TGConnectingPoint num="9" id="647" />
+<TGConnectingPoint num="10" id="648" />
+<TGConnectingPoint num="11" id="649" />
+<TGConnectingPoint num="12" id="650" />
+<TGConnectingPoint num="13" id="651" />
+<TGConnectingPoint num="14" id="652" />
+<TGConnectingPoint num="15" id="653" />
+<TGConnectingPoint num="16" id="654" />
+<TGConnectingPoint num="17" id="655" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="675" >
+<father id="684" num="4" />
+<cdparam x="1481" y="237" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="269" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="657" />
+<TGConnectingPoint num="1" id="658" />
+<TGConnectingPoint num="2" id="659" />
+<TGConnectingPoint num="3" id="660" />
+<TGConnectingPoint num="4" id="661" />
+<TGConnectingPoint num="5" id="662" />
+<TGConnectingPoint num="6" id="663" />
+<TGConnectingPoint num="7" id="664" />
+<TGConnectingPoint num="8" id="665" />
+<TGConnectingPoint num="9" id="666" />
+<TGConnectingPoint num="10" id="667" />
+<TGConnectingPoint num="11" id="668" />
+<TGConnectingPoint num="12" id="669" />
+<TGConnectingPoint num="13" id="670" />
+<TGConnectingPoint num="14" id="671" />
+<TGConnectingPoint num="15" id="672" />
+<TGConnectingPoint num="16" id="673" />
+<TGConnectingPoint num="17" id="674" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1200" id="799" >
+<cdparam x="1186" y="309" />
+<sizeparam width="211" height="254" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="Composite component" value="CWP_Q" />
+<TGConnectingPoint num="0" id="791" />
+<TGConnectingPoint num="1" id="792" />
+<TGConnectingPoint num="2" id="793" />
+<TGConnectingPoint num="3" id="794" />
+<TGConnectingPoint num="4" id="795" />
+<TGConnectingPoint num="5" id="796" />
+<TGConnectingPoint num="6" id="797" />
+<TGConnectingPoint num="7" id="798" />
+<extraparam>
+<info hiddeni="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1201" id="703" >
+<father id="799" num="0" />
+<cdparam x="1173" y="375" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="198" minY="-13" maxY="241" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="685" />
+<TGConnectingPoint num="1" id="686" />
+<TGConnectingPoint num="2" id="687" />
+<TGConnectingPoint num="3" id="688" />
+<TGConnectingPoint num="4" id="689" />
+<TGConnectingPoint num="5" id="690" />
+<TGConnectingPoint num="6" id="691" />
+<TGConnectingPoint num="7" id="692" />
+<TGConnectingPoint num="8" id="693" />
+<TGConnectingPoint num="9" id="694" />
+<TGConnectingPoint num="10" id="695" />
+<TGConnectingPoint num="11" id="696" />
+<TGConnectingPoint num="12" id="697" />
+<TGConnectingPoint num="13" id="698" />
+<TGConnectingPoint num="14" id="699" />
+<TGConnectingPoint num="15" id="700" />
+<TGConnectingPoint num="16" id="701" />
+<TGConnectingPoint num="17" id="702" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="718" >
+<father id="799" num="1" />
+<cdparam x="1224" y="471" />
+<sizeparam width="138" height="82" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="73" minY="0" maxY="172" />
+<infoparam name="Primitive component" value="F_CWP_Q" />
+<TGConnectingPoint num="0" id="710" />
+<TGConnectingPoint num="1" id="711" />
+<TGConnectingPoint num="2" id="712" />
+<TGConnectingPoint num="3" id="713" />
+<TGConnectingPoint num="4" id="714" />
+<TGConnectingPoint num="5" id="715" />
+<TGConnectingPoint num="6" id="716" />
+<TGConnectingPoint num="7" id="717" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="705" >
+<father id="718" num="0" />
+<cdparam x="1322" y="458" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="125" minY="-13" maxY="69" />
+<infoparam name="Primitive port" value="Request cwpQ_req" />
+<TGConnectingPoint num="0" id="704" />
+<extraparam>
+<Prop commName="cwpQ_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="707" >
+<father id="718" num="1" />
+<cdparam x="1211" y="487" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="125" minY="-13" maxY="69" />
+<infoparam name="Primitive port" value="Event cwpQ_evt_in" />
+<TGConnectingPoint num="0" id="706" />
+<extraparam>
+<Prop commName="cwpQ_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="709" >
+<father id="718" num="2" />
+<cdparam x="1349" y="510" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="125" minY="-13" maxY="69" />
+<infoparam name="Primitive port" value="Event cwpQ_evt_out" />
+<TGConnectingPoint num="0" id="708" />
+<extraparam>
+<Prop commName="cwpQ_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="733" >
+<father id="799" num="2" />
+<cdparam x="1220" y="353" />
+<sizeparam width="144" height="84" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="67" minY="0" maxY="170" />
+<infoparam name="Primitive component" value="X_CWP_Q" />
+<TGConnectingPoint num="0" id="725" />
+<TGConnectingPoint num="1" id="726" />
+<TGConnectingPoint num="2" id="727" />
+<TGConnectingPoint num="3" id="728" />
+<TGConnectingPoint num="4" id="729" />
+<TGConnectingPoint num="5" id="730" />
+<TGConnectingPoint num="6" id="731" />
+<TGConnectingPoint num="7" id="732" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="720" >
+<father id="733" num="0" />
+<cdparam x="1236" y="424" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="71" />
+<infoparam name="Primitive port" value="Request cwpQ_req" />
+<TGConnectingPoint num="0" id="719" />
+<extraparam>
+<Prop commName="cwpQ_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="722" >
+<father id="733" num="1" />
+<cdparam x="1207" y="375" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="71" />
+<infoparam name="Primitive port" value="Channel cwpQ_ch_in" />
+<TGConnectingPoint num="0" id="721" />
+<extraparam>
+<Prop commName="cwpQ_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="724" >
+<father id="733" num="2" />
+<cdparam x="1351" y="380" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="71" />
+<infoparam name="Primitive port" value="Channel cwpQ_ch_out" />
+<TGConnectingPoint num="0" id="723" />
+<extraparam>
+<Prop commName="cwpQ_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="752" >
+<father id="799" num="3" />
+<cdparam x="1173" y="487" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="198" minY="-13" maxY="241" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="734" />
+<TGConnectingPoint num="1" id="735" />
+<TGConnectingPoint num="2" id="736" />
+<TGConnectingPoint num="3" id="737" />
+<TGConnectingPoint num="4" id="738" />
+<TGConnectingPoint num="5" id="739" />
+<TGConnectingPoint num="6" id="740" />
+<TGConnectingPoint num="7" id="741" />
+<TGConnectingPoint num="8" id="742" />
+<TGConnectingPoint num="9" id="743" />
+<TGConnectingPoint num="10" id="744" />
+<TGConnectingPoint num="11" id="745" />
+<TGConnectingPoint num="12" id="746" />
+<TGConnectingPoint num="13" id="747" />
+<TGConnectingPoint num="14" id="748" />
+<TGConnectingPoint num="15" id="749" />
+<TGConnectingPoint num="16" id="750" />
+<TGConnectingPoint num="17" id="751" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="771" >
+<father id="799" num="4" />
+<cdparam x="1384" y="510" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="198" minY="-13" maxY="241" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="753" />
+<TGConnectingPoint num="1" id="754" />
+<TGConnectingPoint num="2" id="755" />
+<TGConnectingPoint num="3" id="756" />
+<TGConnectingPoint num="4" id="757" />
+<TGConnectingPoint num="5" id="758" />
+<TGConnectingPoint num="6" id="759" />
+<TGConnectingPoint num="7" id="760" />
+<TGConnectingPoint num="8" id="761" />
+<TGConnectingPoint num="9" id="762" />
+<TGConnectingPoint num="10" id="763" />
+<TGConnectingPoint num="11" id="764" />
+<TGConnectingPoint num="12" id="765" />
+<TGConnectingPoint num="13" id="766" />
+<TGConnectingPoint num="14" id="767" />
+<TGConnectingPoint num="15" id="768" />
+<TGConnectingPoint num="16" id="769" />
+<TGConnectingPoint num="17" id="770" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="790" >
+<father id="799" num="5" />
+<cdparam x="1384" y="380" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="198" minY="-13" maxY="241" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="772" />
+<TGConnectingPoint num="1" id="773" />
+<TGConnectingPoint num="2" id="774" />
+<TGConnectingPoint num="3" id="775" />
+<TGConnectingPoint num="4" id="776" />
+<TGConnectingPoint num="5" id="777" />
+<TGConnectingPoint num="6" id="778" />
+<TGConnectingPoint num="7" id="779" />
+<TGConnectingPoint num="8" id="780" />
+<TGConnectingPoint num="9" id="781" />
+<TGConnectingPoint num="10" id="782" />
+<TGConnectingPoint num="11" id="783" />
+<TGConnectingPoint num="12" id="784" />
+<TGConnectingPoint num="13" id="785" />
+<TGConnectingPoint num="14" id="786" />
+<TGConnectingPoint num="15" id="787" />
+<TGConnectingPoint num="16" id="788" />
+<TGConnectingPoint num="17" id="789" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1200" id="914" >
+<cdparam x="1186" y="17" />
+<sizeparam width="214" height="280" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" />
+<infoparam name="Composite component" value="CWP_I" />
+<TGConnectingPoint num="0" id="906" />
+<TGConnectingPoint num="1" id="907" />
+<TGConnectingPoint num="2" id="908" />
+<TGConnectingPoint num="3" id="909" />
+<TGConnectingPoint num="4" id="910" />
+<TGConnectingPoint num="5" id="911" />
+<TGConnectingPoint num="6" id="912" />
+<TGConnectingPoint num="7" id="913" />
+<extraparam>
+<info hiddeni="false" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1201" id="818" >
+<father id="914" num="0" />
+<cdparam x="1387" y="111" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="201" minY="-13" maxY="267" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="800" />
+<TGConnectingPoint num="1" id="801" />
+<TGConnectingPoint num="2" id="802" />
+<TGConnectingPoint num="3" id="803" />
+<TGConnectingPoint num="4" id="804" />
+<TGConnectingPoint num="5" id="805" />
+<TGConnectingPoint num="6" id="806" />
+<TGConnectingPoint num="7" id="807" />
+<TGConnectingPoint num="8" id="808" />
+<TGConnectingPoint num="9" id="809" />
+<TGConnectingPoint num="10" id="810" />
+<TGConnectingPoint num="11" id="811" />
+<TGConnectingPoint num="12" id="812" />
+<TGConnectingPoint num="13" id="813" />
+<TGConnectingPoint num="14" id="814" />
+<TGConnectingPoint num="15" id="815" />
+<TGConnectingPoint num="16" id="816" />
+<TGConnectingPoint num="17" id="817" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="833" >
+<father id="914" num="1" />
+<cdparam x="1222" y="194" />
+<sizeparam width="143" height="86" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="71" minY="0" maxY="194" />
+<infoparam name="Primitive component" value="F_CWP_I" />
+<TGConnectingPoint num="0" id="825" />
+<TGConnectingPoint num="1" id="826" />
+<TGConnectingPoint num="2" id="827" />
+<TGConnectingPoint num="3" id="828" />
+<TGConnectingPoint num="4" id="829" />
+<TGConnectingPoint num="5" id="830" />
+<TGConnectingPoint num="6" id="831" />
+<TGConnectingPoint num="7" id="832" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="820" >
+<father id="833" num="0" />
+<cdparam x="1320" y="181" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="130" minY="-13" maxY="73" />
+<infoparam name="Primitive port" value="Request cwpI_req" />
+<TGConnectingPoint num="0" id="819" />
+<extraparam>
+<Prop commName="cwpI_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="822" >
+<father id="833" num="1" />
+<cdparam x="1209" y="249" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="130" minY="-13" maxY="73" />
+<infoparam name="Primitive port" value="Event cwpI_evt_in" />
+<TGConnectingPoint num="0" id="821" />
+<extraparam>
+<Prop commName="cwpI_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="824" >
+<father id="833" num="2" />
+<cdparam x="1352" y="249" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="130" minY="-13" maxY="73" />
+<infoparam name="Primitive port" value="Event cwpI_evt_out" />
+<TGConnectingPoint num="0" id="823" />
+<extraparam>
+<Prop commName="cwpI_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1202" id="848" >
+<father id="914" num="2" />
+<cdparam x="1220" y="62" />
+<sizeparam width="144" height="96" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="70" minY="0" maxY="184" />
+<infoparam name="Primitive component" value="X_CWP_I" />
+<TGConnectingPoint num="0" id="840" />
+<TGConnectingPoint num="1" id="841" />
+<TGConnectingPoint num="2" id="842" />
+<TGConnectingPoint num="3" id="843" />
+<TGConnectingPoint num="4" id="844" />
+<TGConnectingPoint num="5" id="845" />
+<TGConnectingPoint num="6" id="846" />
+<TGConnectingPoint num="7" id="847" />
+<extraparam>
+<Data isAttacker="No" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="835" >
+<father id="848" num="0" />
+<cdparam x="1244" y="145" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="83" />
+<infoparam name="Primitive port" value="Request cwpI_req" />
+<TGConnectingPoint num="0" id="834" />
+<extraparam>
+<Prop commName="cwpI_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="1" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="837" >
+<father id="848" num="1" />
+<cdparam x="1207" y="110" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="83" />
+<infoparam name="Primitive port" value="Channel cwpI_ch_in" />
+<TGConnectingPoint num="0" id="836" />
+<extraparam>
+<Prop commName="cwpI_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1203" id="839" >
+<father id="848" num="2" />
+<cdparam x="1351" y="111" />
+<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="83" />
+<infoparam name="Primitive port" value="Channel cwpI_ch_out" />
+<TGConnectingPoint num="0" id="838" />
+<extraparam>
+<Prop commName="cwpI_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+<Type type="0" typeOther="" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="867" >
+<father id="914" num="3" />
+<cdparam x="1173" y="249" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="201" minY="-13" maxY="267" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="849" />
+<TGConnectingPoint num="1" id="850" />
+<TGConnectingPoint num="2" id="851" />
+<TGConnectingPoint num="3" id="852" />
+<TGConnectingPoint num="4" id="853" />
+<TGConnectingPoint num="5" id="854" />
+<TGConnectingPoint num="6" id="855" />
+<TGConnectingPoint num="7" id="856" />
+<TGConnectingPoint num="8" id="857" />
+<TGConnectingPoint num="9" id="858" />
+<TGConnectingPoint num="10" id="859" />
+<TGConnectingPoint num="11" id="860" />
+<TGConnectingPoint num="12" id="861" />
+<TGConnectingPoint num="13" id="862" />
+<TGConnectingPoint num="14" id="863" />
+<TGConnectingPoint num="15" id="864" />
+<TGConnectingPoint num="16" id="865" />
+<TGConnectingPoint num="17" id="866" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="886" >
+<father id="914" num="4" />
+<cdparam x="1173" y="110" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="201" minY="-13" maxY="267" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="868" />
+<TGConnectingPoint num="1" id="869" />
+<TGConnectingPoint num="2" id="870" />
+<TGConnectingPoint num="3" id="871" />
+<TGConnectingPoint num="4" id="872" />
+<TGConnectingPoint num="5" id="873" />
+<TGConnectingPoint num="6" id="874" />
+<TGConnectingPoint num="7" id="875" />
+<TGConnectingPoint num="8" id="876" />
+<TGConnectingPoint num="9" id="877" />
+<TGConnectingPoint num="10" id="878" />
+<TGConnectingPoint num="11" id="879" />
+<TGConnectingPoint num="12" id="880" />
+<TGConnectingPoint num="13" id="881" />
+<TGConnectingPoint num="14" id="882" />
+<TGConnectingPoint num="15" id="883" />
+<TGConnectingPoint num="16" id="884" />
+<TGConnectingPoint num="17" id="885" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1201" id="905" >
+<father id="914" num="5" />
+<cdparam x="1387" y="249" />
+<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-13" maxX="201" minY="-13" maxY="267" />
+<infoparam name="Composite port" value="" />
+<TGConnectingPoint num="0" id="887" />
+<TGConnectingPoint num="1" id="888" />
+<TGConnectingPoint num="2" id="889" />
+<TGConnectingPoint num="3" id="890" />
+<TGConnectingPoint num="4" id="891" />
+<TGConnectingPoint num="5" id="892" />
+<TGConnectingPoint num="6" id="893" />
+<TGConnectingPoint num="7" id="894" />
+<TGConnectingPoint num="8" id="895" />
+<TGConnectingPoint num="9" id="896" />
+<TGConnectingPoint num="10" id="897" />
+<TGConnectingPoint num="11" id="898" />
+<TGConnectingPoint num="12" id="899" />
+<TGConnectingPoint num="13" id="900" />
+<TGConnectingPoint num="14" id="901" />
+<TGConnectingPoint num="15" id="902" />
+<TGConnectingPoint num="16" id="903" />
+<TGConnectingPoint num="17" id="904" />
+</SUBCOMPONENT>
+
+
+</TMLComponentTaskDiagramPanel>
+
+<TMLActivityDiagramPanel name="X_Source" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1013" id="918" >
+<cdparam x="402" y="189" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="916" />
+<TGConnectingPoint num="1" id="917" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="915" >
+<father id="918" num="0" />
+<cdparam x="417" y="209" />
+<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="size" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1001" id="920" >
+<cdparam x="397" y="342" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="919" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="923" >
+<cdparam x="340" y="270" />
+<sizeparam width="135" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="write channel" value="Source_ch_out(size)" />
+<TGConnectingPoint num="0" id="921" />
+<TGConnectingPoint num="1" id="922" />
+<accessibility />
+<extraparam>
+<Data channelName="Source_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1034" id="926" >
+<cdparam x="351" y="113" />
+<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read args" value="getReqArg (size)" />
+<TGConnectingPoint num="0" id="924" />
+<TGConnectingPoint num="1" id="925" />
+<extraparam>
+<Data nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="928" >
+<cdparam x="400" y="50" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="927" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="929" >
+<cdparam x="462" y="222" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="224" id="917" />
+<P2  x="407" y="265" id="921" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="930" >
+<cdparam x="407" y="70" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="70" id="927" />
+<P2  x="407" y="108" id="924" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="931" >
+<cdparam x="402" y="256" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="295" id="922" />
+<P2  x="407" y="337" id="919" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="932" >
+<cdparam x="407" y="155" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="138" id="925" />
+<P2  x="407" y="184" id="916" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="F_Source" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1001" id="934" >
+<cdparam x="397" y="338" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="933" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="937" >
+<cdparam x="338" y="262" />
+<sizeparam width="139" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="Source_evt_out(size)" />
+<TGConnectingPoint num="0" id="935" />
+<TGConnectingPoint num="1" id="936" />
+<extraparam>
+<Data eventName="Source_evt_out" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1007" id="940" >
+<cdparam x="351" y="188" />
+<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="source_req(size)" />
+<TGConnectingPoint num="0" id="938" />
+<TGConnectingPoint num="1" id="939" />
+<extraparam>
+<Data requestName="source_req" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1011" id="943" >
+<cdparam x="370" y="116" />
+<sizeparam width="75" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="action state" value="size = 127" />
+<TGConnectingPoint num="0" id="941" />
+<TGConnectingPoint num="1" id="942" />
+</COMPONENT>
+
+<COMPONENT type="1000" id="945" >
+<cdparam x="400" y="50" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="944" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="946" >
+<cdparam x="407" y="70" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="70" id="944" />
+<P2  x="407" y="111" id="941" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="947" >
+<cdparam x="407" y="141" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="141" id="942" />
+<P2  x="407" y="183" id="938" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="948" >
+<cdparam x="407" y="213" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="213" id="939" />
+<P2  x="407" y="257" id="935" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="949" >
+<cdparam x="407" y="287" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="287" id="936" />
+<P2  x="407" y="333" id="933" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="X_Symbol2ChipSeq" minX="10" maxX="495" minY="10" maxY="467" >
+<COMPONENT type="1021" id="953" >
+<cdparam x="393" y="289" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" />
+<infoparam name="execC" value="null" />
+<TGConnectingPoint num="0" id="951" />
+<TGConnectingPoint num="1" id="952" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="950" >
+<father id="953" num="0" />
+<cdparam x="408" y="309" />
+<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="size" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1009" id="956" >
+<cdparam x="305" y="213" />
+<sizeparam width="187" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" />
+<infoparam name="read channel" value="symbol2ChipSeq_ch_in(size) " />
+<TGConnectingPoint num="0" id="954" />
+<TGConnectingPoint num="1" id="955" />
+<extraparam>
+<Data channelName="symbol2ChipSeq_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="958" >
+<cdparam x="388" y="447" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="957" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="961" >
+<cdparam x="302" y="375" />
+<sizeparam width="193" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" />
+<infoparam name="write channel" value="symbol2ChipSeq_ch_out(size)" />
+<TGConnectingPoint num="0" id="959" />
+<TGConnectingPoint num="1" id="960" />
+<extraparam>
+<Data channelName="symbol2ChipSeq_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1034" id="964" >
+<cdparam x="342" y="137" />
+<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" />
+<infoparam name="read args" value="getReqArg (size)" />
+<TGConnectingPoint num="0" id="962" />
+<TGConnectingPoint num="1" id="963" />
+<extraparam>
+<Data nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="966" >
+<cdparam x="391" y="74" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="965" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="967" >
+<cdparam x="541" y="169" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="398" y="238" id="955" />
+<P2  x="398" y="284" id="951" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="968" >
+<cdparam x="453" y="327" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="398" y="324" id="952" />
+<P2  x="398" y="370" id="959" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="969" >
+<cdparam x="398" y="94" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="398" y="94" id="965" />
+<P2  x="398" y="132" id="962" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="970" >
+<cdparam x="393" y="361" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="398" y="400" id="960" />
+<P2  x="398" y="442" id="957" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="971" >
+<cdparam x="398" y="179" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="398" y="162" id="963" />
+<P2  x="398" y="208" id="954" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="F_Symbol2ChipSeq" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1010" id="974" >
+<cdparam x="317" y="132" />
+<sizeparam width="156" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="bit2symbol_evt_in(size) " />
+<TGConnectingPoint num="0" id="972" />
+<TGConnectingPoint num="1" id="973" />
+<extraparam>
+<Data eventName="bit2symbol_evt_in" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="976" >
+<cdparam x="385" y="354" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="975" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="979" >
+<cdparam x="314" y="278" />
+<sizeparam width="162" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="bit2symbol_evt_out(size)" />
+<TGConnectingPoint num="0" id="977" />
+<TGConnectingPoint num="1" id="978" />
+<accessibility />
+<extraparam>
+<Data eventName="bit2symbol_evt_out" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1007" id="982" >
+<cdparam x="335" y="204" />
+<sizeparam width="120" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="bit2chip_req(size)" />
+<TGConnectingPoint num="0" id="980" />
+<TGConnectingPoint num="1" id="981" />
+<extraparam>
+<Data requestName="bit2chip_req" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="984" >
+<cdparam x="388" y="66" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="983" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="985" >
+<cdparam x="395" y="229" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="395" y="229" id="981" />
+<P2  x="395" y="273" id="977" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="986" >
+<cdparam x="395" y="303" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="395" y="303" id="978" />
+<P2  x="395" y="349" id="975" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="987" >
+<cdparam x="395" y="86" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="395" y="86" id="983" />
+<P2  x="395" y="127" id="972" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="988" >
+<cdparam x="435" y="149" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="395" y="157" id="973" />
+<P2  x="395" y="199" id="980" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="X_Chip2Octet" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1021" id="992" >
+<cdparam x="377" y="300" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="execC" value="null" />
+<TGConnectingPoint num="0" id="990" />
+<TGConnectingPoint num="1" id="991" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="989" >
+<father id="992" num="0" />
+<cdparam x="392" y="320" />
+<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="size" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1009" id="995" >
+<cdparam x="306" y="215" />
+<sizeparam width="152" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read channel" value="chip2octet_ch_in(size) " />
+<TGConnectingPoint num="0" id="993" />
+<TGConnectingPoint num="1" id="994" />
+<extraparam>
+<Data channelName="chip2octet_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="997" >
+<cdparam x="372" y="449" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="996" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="1000" >
+<cdparam x="303" y="377" />
+<sizeparam width="158" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="write channel" value="chip2octet_ch_out(size)" />
+<TGConnectingPoint num="0" id="998" />
+<TGConnectingPoint num="1" id="999" />
+<extraparam>
+<Data channelName="chip2octet_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1034" id="1003" >
+<cdparam x="326" y="139" />
+<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read args" value="getReqArg (size)" />
+<TGConnectingPoint num="0" id="1001" />
+<TGConnectingPoint num="1" id="1002" />
+<extraparam>
+<Data nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1005" >
+<cdparam x="375" y="76" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1004" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="1006" >
+<cdparam x="525" y="171" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="382" y="240" id="994" />
+<P2  x="382" y="295" id="990" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1007" >
+<cdparam x="437" y="329" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="382" y="335" id="991" />
+<P2  x="382" y="372" id="998" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1008" >
+<cdparam x="382" y="96" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="382" y="96" id="1004" />
+<P2  x="382" y="134" id="1001" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1009" >
+<cdparam x="377" y="363" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="382" y="402" id="999" />
+<P2  x="382" y="444" id="996" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1010" >
+<cdparam x="382" y="181" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="382" y="164" id="1002" />
+<P2  x="382" y="210" id="993" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="F_Chip2Octet" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1010" id="1013" >
+<cdparam x="333" y="128" />
+<sizeparam width="156" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="chip2octet_evt_in(size) " />
+<TGConnectingPoint num="0" id="1011" />
+<TGConnectingPoint num="1" id="1012" />
+<extraparam>
+<Data eventName="chip2octet_evt_in" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1015" >
+<cdparam x="401" y="350" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1014" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1018" >
+<cdparam x="330" y="274" />
+<sizeparam width="162" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="chip2octet_evt_out(size)" />
+<TGConnectingPoint num="0" id="1016" />
+<TGConnectingPoint num="1" id="1017" />
+<extraparam>
+<Data eventName="chip2octet_evt_out" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1007" id="1021" >
+<cdparam x="343" y="200" />
+<sizeparam width="137" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="chip2octet_req(size)" />
+<TGConnectingPoint num="0" id="1019" />
+<TGConnectingPoint num="1" id="1020" />
+<extraparam>
+<Data requestName="chip2octet_req" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1023" >
+<cdparam x="404" y="62" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1022" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="1024" >
+<cdparam x="411" y="225" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="411" y="225" id="1020" />
+<P2  x="411" y="269" id="1016" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1025" >
+<cdparam x="411" y="299" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="411" y="299" id="1017" />
+<P2  x="411" y="345" id="1014" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1026" >
+<cdparam x="411" y="82" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="411" y="82" id="1022" />
+<P2  x="411" y="123" id="1011" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1027" >
+<cdparam x="451" y="145" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="411" y="153" id="1012" />
+<P2  x="411" y="195" id="1019" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="X_CWL" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1013" id="1031" >
+<cdparam x="402" y="277" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="1029" />
+<TGConnectingPoint num="1" id="1030" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="1028" >
+<father id="1031" num="0" />
+<cdparam x="417" y="297" />
+<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="size" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1009" id="1034" >
+<cdparam x="355" y="196" />
+<sizeparam width="104" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read channel" value="cwl_ch_in(size) " />
+<TGConnectingPoint num="0" id="1032" />
+<TGConnectingPoint num="1" id="1033" />
+<extraparam>
+<Data channelName="cwl_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1036" >
+<cdparam x="397" y="430" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1035" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="1039" >
+<cdparam x="352" y="358" />
+<sizeparam width="110" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="write channel" value="cwl_ch_out(size)" />
+<TGConnectingPoint num="0" id="1037" />
+<TGConnectingPoint num="1" id="1038" />
+<extraparam>
+<Data channelName="cwl_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1034" id="1042" >
+<cdparam x="351" y="120" />
+<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read args" value="getReqArg (size)" />
+<TGConnectingPoint num="0" id="1040" />
+<TGConnectingPoint num="1" id="1041" />
+<extraparam>
+<Data nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1044" >
+<cdparam x="400" y="57" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1043" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="1045" >
+<cdparam x="550" y="152" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="221" id="1033" />
+<P2  x="407" y="272" id="1029" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1046" >
+<cdparam x="462" y="310" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="312" id="1030" />
+<P2  x="407" y="353" id="1037" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1047" >
+<cdparam x="407" y="77" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="77" id="1043" />
+<P2  x="407" y="115" id="1040" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1048" >
+<cdparam x="402" y="344" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="383" id="1038" />
+<P2  x="407" y="425" id="1035" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1049" >
+<cdparam x="407" y="162" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="145" id="1041" />
+<P2  x="407" y="191" id="1032" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="F_CWL" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1010" id="1052" >
+<cdparam x="360" y="134" />
+<sizeparam width="108" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="cwl_evt_in(size) " />
+<TGConnectingPoint num="0" id="1050" />
+<TGConnectingPoint num="1" id="1051" />
+<extraparam>
+<Data eventName="cwl_evt_in" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1054" >
+<cdparam x="407" y="397" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1053" />
+</COMPONENT>
+
+<COMPONENT type="1007" id="1057" >
+<cdparam x="370" y="206" />
+<sizeparam width="89" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="cwl_req(size)" />
+<TGConnectingPoint num="0" id="1055" />
+<TGConnectingPoint num="1" id="1056" />
+<extraparam>
+<Data requestName="cwl_req" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1059" >
+<cdparam x="407" y="68" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1058" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1062" >
+<cdparam x="352" y="333" />
+<sizeparam width="128" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="cwl_evt_out_1(size)" />
+<TGConnectingPoint num="0" id="1060" />
+<TGConnectingPoint num="1" id="1061" />
+<extraparam>
+<Data eventName="cwl_evt_out_1" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1008" id="1065" >
+<cdparam x="357" y="280" />
+<sizeparam width="114" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="cwl_evt_out(size)" />
+<TGConnectingPoint num="0" id="1063" />
+<TGConnectingPoint num="1" id="1064" />
+<extraparam>
+<Data eventName="cwl_evt_out" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="115" id="1066" >
+<cdparam x="416" y="358" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="416" y="358" id="1061" />
+<P2  x="417" y="392" id="1053" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1067" >
+<cdparam x="414" y="231" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="414" y="231" id="1056" />
+<P2  x="414" y="275" id="1063" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1068" >
+<cdparam x="414" y="305" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="414" y="305" id="1064" />
+<P2  x="416" y="328" id="1060" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1069" >
+<cdparam x="414" y="88" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="414" y="88" id="1058" />
+<P2  x="414" y="129" id="1050" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1070" >
+<cdparam x="454" y="151" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="414" y="159" id="1051" />
+<P2  x="414" y="201" id="1055" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="X_Sink" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1013" id="1074" >
+<cdparam x="445" y="298" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="1072" />
+<TGConnectingPoint num="1" id="1073" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="1071" >
+<father id="1074" num="0" />
+<cdparam x="460" y="318" />
+<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="size" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1009" id="1077" >
+<cdparam x="395" y="217" />
+<sizeparam width="110" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read channel" value="sink_ch_in(size) " />
+<TGConnectingPoint num="0" id="1075" />
+<TGConnectingPoint num="1" id="1076" />
+<extraparam>
+<Data channelName="sink_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1079" >
+<cdparam x="440" y="384" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1078" />
+</COMPONENT>
+
+<COMPONENT type="1034" id="1082" >
+<cdparam x="394" y="141" />
+<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read args" value="getReqArg (size)" />
+<TGConnectingPoint num="0" id="1080" />
+<TGConnectingPoint num="1" id="1081" />
+<extraparam>
+<Data nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1084" >
+<cdparam x="443" y="78" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1083" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="1085" >
+<cdparam x="450" y="333" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="450" y="333" id="1073" />
+<P2  x="450" y="379" id="1078" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1086" >
+<cdparam x="593" y="173" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="450" y="242" id="1076" />
+<P2  x="450" y="293" id="1072" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1087" >
+<cdparam x="450" y="98" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="450" y="98" id="1083" />
+<P2  x="450" y="136" id="1080" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1088" >
+<cdparam x="450" y="183" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="450" y="166" id="1081" />
+<P2  x="450" y="212" id="1075" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="F_Sink" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1001" id="1090" >
+<cdparam x="396" y="355" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1089" />
+</COMPONENT>
+
+<COMPONENT type="1007" id="1093" >
+<cdparam x="331" y="265" />
+<sizeparam width="150" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="sink_req(size + size_1)" />
+<TGConnectingPoint num="0" id="1091" />
+<TGConnectingPoint num="1" id="1092" />
+<extraparam>
+<Data requestName="sink_req" nbOfParams="5" />
+<Param index="0" value="size + size_1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1095" >
+<cdparam x="400" y="73" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1094" />
+</COMPONENT>
+
+<COMPONENT type="1010" id="1098" >
+<cdparam x="336" y="187" />
+<sizeparam width="142" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="sink_evt_in_1(size_1) " />
+<TGConnectingPoint num="0" id="1096" />
+<TGConnectingPoint num="1" id="1097" />
+<extraparam>
+<Data eventName="sink_evt_in_1" nbOfParams="5" />
+<Param index="0" value="size_1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1010" id="1101" >
+<cdparam x="350" y="139" />
+<sizeparam width="114" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="sink_evt_in(size) " />
+<TGConnectingPoint num="0" id="1099" />
+<TGConnectingPoint num="1" id="1100" />
+<extraparam>
+<Data eventName="sink_evt_in" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="115" id="1102" >
+<cdparam x="407" y="212" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="212" id="1097" />
+<P2  x="406" y="260" id="1091" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1103" >
+<cdparam x="406" y="290" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="406" y="290" id="1092" />
+<P2  x="406" y="350" id="1089" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1104" >
+<cdparam x="407" y="93" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="93" id="1094" />
+<P2  x="407" y="134" id="1099" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1105" >
+<cdparam x="447" y="156" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="407" y="164" id="1100" />
+<P2  x="407" y="182" id="1096" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="X_CWP_Q" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1013" id="1109" >
+<cdparam x="365" y="275" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="1107" />
+<TGConnectingPoint num="1" id="1108" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="1106" >
+<father id="1109" num="0" />
+<cdparam x="380" y="295" />
+<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="size" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1009" id="1112" >
+<cdparam x="311" y="194" />
+<sizeparam width="118" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read channel" value="cwpQ_ch_in(size) " />
+<TGConnectingPoint num="0" id="1110" />
+<TGConnectingPoint num="1" id="1111" />
+<extraparam>
+<Data channelName="cwpQ_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1114" >
+<cdparam x="360" y="428" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1113" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="1117" >
+<cdparam x="308" y="356" />
+<sizeparam width="124" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="write channel" value="cwpQ_ch_out(size)" />
+<TGConnectingPoint num="0" id="1115" />
+<TGConnectingPoint num="1" id="1116" />
+<extraparam>
+<Data channelName="cwpQ_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1034" id="1120" >
+<cdparam x="314" y="118" />
+<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read args" value="getReqArg (size)" />
+<TGConnectingPoint num="0" id="1118" />
+<TGConnectingPoint num="1" id="1119" />
+<extraparam>
+<Data nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1122" >
+<cdparam x="363" y="55" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1121" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="1123" >
+<cdparam x="513" y="150" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="370" y="219" id="1111" />
+<P2  x="370" y="270" id="1107" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1124" >
+<cdparam x="425" y="308" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="370" y="310" id="1108" />
+<P2  x="370" y="351" id="1115" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1125" >
+<cdparam x="370" y="75" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="370" y="75" id="1121" />
+<P2  x="370" y="113" id="1118" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1126" >
+<cdparam x="365" y="342" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="370" y="381" id="1116" />
+<P2  x="370" y="423" id="1113" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1127" >
+<cdparam x="370" y="160" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="370" y="143" id="1119" />
+<P2  x="370" y="189" id="1110" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="F_CWP_Q" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1010" id="1130" >
+<cdparam x="342" y="117" />
+<sizeparam width="122" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="cwpQ_evt_in(size) " />
+<TGConnectingPoint num="0" id="1128" />
+<TGConnectingPoint num="1" id="1129" />
+<extraparam>
+<Data eventName="cwpQ_evt_in" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1132" >
+<cdparam x="393" y="339" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1131" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1135" >
+<cdparam x="339" y="263" />
+<sizeparam width="128" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="cwpQ_evt_out(size)" />
+<TGConnectingPoint num="0" id="1133" />
+<TGConnectingPoint num="1" id="1134" />
+<extraparam>
+<Data eventName="cwpQ_evt_out" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1007" id="1138" >
+<cdparam x="352" y="189" />
+<sizeparam width="103" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="cwpQ_req(size)" />
+<TGConnectingPoint num="0" id="1136" />
+<TGConnectingPoint num="1" id="1137" />
+<extraparam>
+<Data requestName="cwpQ_req" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1140" >
+<cdparam x="396" y="51" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1139" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="1141" >
+<cdparam x="403" y="214" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="403" y="214" id="1137" />
+<P2  x="403" y="258" id="1133" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1142" >
+<cdparam x="403" y="288" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="403" y="288" id="1134" />
+<P2  x="403" y="334" id="1131" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1143" >
+<cdparam x="403" y="71" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="403" y="71" id="1139" />
+<P2  x="403" y="112" id="1128" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1144" >
+<cdparam x="443" y="134" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="403" y="142" id="1129" />
+<P2  x="403" y="184" id="1136" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="X_CWP_I" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1013" id="1148" >
+<cdparam x="369" y="290" />
+<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="execI" value="null" />
+<TGConnectingPoint num="0" id="1146" />
+<TGConnectingPoint num="1" id="1147" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="1145" >
+<father id="1148" num="0" />
+<cdparam x="384" y="310" />
+<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" />
+<infoparam name="value of the delay" value="size" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1009" id="1151" >
+<cdparam x="318" y="209" />
+<sizeparam width="112" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read channel" value="cwpI_ch_in(size) " />
+<TGConnectingPoint num="0" id="1149" />
+<TGConnectingPoint num="1" id="1150" />
+<extraparam>
+<Data channelName="cwpI_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1153" >
+<cdparam x="364" y="443" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1152" />
+</COMPONENT>
+
+<COMPONENT type="1006" id="1156" >
+<cdparam x="315" y="371" />
+<sizeparam width="118" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="write channel" value="cwpI_ch_out(size)" />
+<TGConnectingPoint num="0" id="1154" />
+<TGConnectingPoint num="1" id="1155" />
+<extraparam>
+<Data channelName="cwpI_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1034" id="1159" >
+<cdparam x="318" y="133" />
+<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="read args" value="getReqArg (size)" />
+<TGConnectingPoint num="0" id="1157" />
+<TGConnectingPoint num="1" id="1158" />
+<extraparam>
+<Data nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1161" >
+<cdparam x="367" y="70" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1160" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="1162" >
+<cdparam x="517" y="165" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="374" y="234" id="1150" />
+<P2  x="374" y="285" id="1146" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1163" >
+<cdparam x="429" y="323" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="374" y="325" id="1147" />
+<P2  x="374" y="366" id="1154" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1164" >
+<cdparam x="374" y="90" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="374" y="90" id="1160" />
+<P2  x="374" y="128" id="1157" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1165" >
+<cdparam x="369" y="357" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="374" y="396" id="1155" />
+<P2  x="374" y="438" id="1152" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1166" >
+<cdparam x="374" y="175" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="374" y="158" id="1158" />
+<P2  x="374" y="204" id="1149" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+<TMLActivityDiagramPanel name="F_CWP_I" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1010" id="1169" >
+<cdparam x="321" y="132" />
+<sizeparam width="116" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="wait event" value="cwpI_evt_in(size) " />
+<TGConnectingPoint num="0" id="1167" />
+<TGConnectingPoint num="1" id="1168" />
+<extraparam>
+<Data eventName="cwpI_evt_in" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1001" id="1171" >
+<cdparam x="369" y="354" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1170" />
+</COMPONENT>
+
+<COMPONENT type="1008" id="1174" >
+<cdparam x="318" y="278" />
+<sizeparam width="122" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send event" value="cwpI_evt_out(size)" />
+<TGConnectingPoint num="0" id="1172" />
+<TGConnectingPoint num="1" id="1173" />
+<extraparam>
+<Data eventName="cwpI_evt_out" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1007" id="1177" >
+<cdparam x="331" y="204" />
+<sizeparam width="97" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="send request" value="cwpI_req(size)" />
+<TGConnectingPoint num="0" id="1175" />
+<TGConnectingPoint num="1" id="1176" />
+<extraparam>
+<Data requestName="cwpI_req" nbOfParams="5" />
+<Param index="0" value="size" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1000" id="1179" >
+<cdparam x="372" y="66" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1178" />
+</COMPONENT>
+
+<CONNECTOR type="115" id="1180" >
+<cdparam x="379" y="229" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="379" y="229" id="1176" />
+<P2  x="379" y="273" id="1172" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1181" >
+<cdparam x="379" y="303" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="379" y="303" id="1173" />
+<P2  x="379" y="349" id="1170" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1182" >
+<cdparam x="379" y="86" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="379" y="86" id="1178" />
+<P2  x="379" y="127" id="1167" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="115" id="1183" >
+<cdparam x="419" y="149" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="379" y="157" id="1168" />
+<P2  x="379" y="199" id="1175" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</TMLActivityDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML CP" nameTab="CP_Memory_Copy" >
+<CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1507" id="1185" >
+<cdparam x="390" y="343" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1184" />
+</COMPONENT>
+
+<COMPONENT type="1510" id="1189" >
+<cdparam x="141" y="185" />
+<sizeparam width="164" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="for loop" value="for(i=counter;i&gt;0;i = i-1)" />
+<TGConnectingPoint num="0" id="1186" />
+<TGConnectingPoint num="1" id="1187" />
+<TGConnectingPoint num="2" id="1188" />
+<extraparam>
+<Data init="i=counter" condition="i&gt;0" increment="i = i-1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="1206" >
+<cdparam x="559" y="109" />
+<sizeparam width="354" height="39" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="Some parameters are mapping dependent:
+- samplesToLoad (depends on the application model)
+- the source and destination addresses
+" />
+<TGConnectingPoint num="0" id="1190" />
+<TGConnectingPoint num="1" id="1191" />
+<TGConnectingPoint num="2" id="1192" />
+<TGConnectingPoint num="3" id="1193" />
+<TGConnectingPoint num="4" id="1194" />
+<TGConnectingPoint num="5" id="1195" />
+<TGConnectingPoint num="6" id="1196" />
+<TGConnectingPoint num="7" id="1197" />
+<TGConnectingPoint num="8" id="1198" />
+<TGConnectingPoint num="9" id="1199" />
+<TGConnectingPoint num="10" id="1200" />
+<TGConnectingPoint num="11" id="1201" />
+<TGConnectingPoint num="12" id="1202" />
+<TGConnectingPoint num="13" id="1203" />
+<TGConnectingPoint num="14" id="1204" />
+<TGConnectingPoint num="15" id="1205" />
+<extraparam>
+<Line value="Some parameters are mapping dependent:" />
+<Line value="- samplesToLoad (depends on the application model)" />
+<Line value="- the source and destination addresses" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1505" id="1217" >
+<cdparam x="161" y="108" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Configure" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="1207" />
+<TGConnectingPoint num="1" id="1208" />
+<TGConnectingPoint num="2" id="1209" />
+<TGConnectingPoint num="3" id="1210" />
+<TGConnectingPoint num="4" id="1211" />
+<TGConnectingPoint num="5" id="1212" />
+<TGConnectingPoint num="6" id="1213" />
+<TGConnectingPoint num="7" id="1214" />
+<TGConnectingPoint num="8" id="1215" />
+<TGConnectingPoint num="9" id="1216" />
+</COMPONENT>
+
+<COMPONENT type="1507" id="1219" >
+<cdparam x="213" y="280" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1218" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="1230" >
+<cdparam x="338" y="245" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TransferCycle" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="1220" />
+<TGConnectingPoint num="1" id="1221" />
+<TGConnectingPoint num="2" id="1222" />
+<TGConnectingPoint num="3" id="1223" />
+<TGConnectingPoint num="4" id="1224" />
+<TGConnectingPoint num="5" id="1225" />
+<TGConnectingPoint num="6" id="1226" />
+<TGConnectingPoint num="7" id="1227" />
+<TGConnectingPoint num="8" id="1228" />
+<TGConnectingPoint num="9" id="1229" />
+</COMPONENT>
+
+<COMPONENT type="1506" id="1232" >
+<cdparam x="216" y="37" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1231" />
+</COMPONENT>
+
+<CONNECTOR type="1501" id="1234" >
+<cdparam x="78" y="272" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="305" y="199" id="1187" />
+<P2  x="400" y="240" id="1220" />
+<Point x="400" y="199" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1233" >
+<father id="1234" num="0" />
+<cdparam x="400" y="199" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1501" id="1235" >
+<cdparam x="13" y="363" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="400" y="285" id="1221" />
+<P2  x="400" y="338" id="1184" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="1236" >
+<cdparam x="118" y="312" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="223" y="210" id="1188" />
+<P2  x="223" y="275" id="1218" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="1237" >
+<cdparam x="221" y="23" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="223" y="57" id="1231" />
+<P2  x="223" y="103" id="1207" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="1238" >
+<cdparam x="118" y="129" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="223" y="148" id="1208" />
+<P2  x="223" y="180" id="1186" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</CommunicationPatternDiagramPanel>
+
+<TMLSDPanel name="Configure" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1522" id="1313" >
+<cdparam x="220" y="55" />
+<sizeparam width="10" height="750" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU_Controller" value="Controller instance name" />
+<TGConnectingPoint num="0" id="1239" />
+<TGConnectingPoint num="1" id="1240" />
+<TGConnectingPoint num="2" id="1241" />
+<TGConnectingPoint num="3" id="1242" />
+<TGConnectingPoint num="4" id="1243" />
+<TGConnectingPoint num="5" id="1244" />
+<TGConnectingPoint num="6" id="1245" />
+<TGConnectingPoint num="7" id="1246" />
+<TGConnectingPoint num="8" id="1247" />
+<TGConnectingPoint num="9" id="1248" />
+<TGConnectingPoint num="10" id="1249" />
+<TGConnectingPoint num="11" id="1250" />
+<TGConnectingPoint num="12" id="1251" />
+<TGConnectingPoint num="13" id="1252" />
+<TGConnectingPoint num="14" id="1253" />
+<TGConnectingPoint num="15" id="1254" />
+<TGConnectingPoint num="16" id="1255" />
+<TGConnectingPoint num="17" id="1256" />
+<TGConnectingPoint num="18" id="1257" />
+<TGConnectingPoint num="19" id="1258" />
+<TGConnectingPoint num="20" id="1259" />
+<TGConnectingPoint num="21" id="1260" />
+<TGConnectingPoint num="22" id="1261" />
+<TGConnectingPoint num="23" id="1262" />
+<TGConnectingPoint num="24" id="1263" />
+<TGConnectingPoint num="25" id="1264" />
+<TGConnectingPoint num="26" id="1265" />
+<TGConnectingPoint num="27" id="1266" />
+<TGConnectingPoint num="28" id="1267" />
+<TGConnectingPoint num="29" id="1268" />
+<TGConnectingPoint num="30" id="1269" />
+<TGConnectingPoint num="31" id="1270" />
+<TGConnectingPoint num="32" id="1271" />
+<TGConnectingPoint num="33" id="1272" />
+<TGConnectingPoint num="34" id="1273" />
+<TGConnectingPoint num="35" id="1274" />
+<TGConnectingPoint num="36" id="1275" />
+<TGConnectingPoint num="37" id="1276" />
+<TGConnectingPoint num="38" id="1277" />
+<TGConnectingPoint num="39" id="1278" />
+<TGConnectingPoint num="40" id="1279" />
+<TGConnectingPoint num="41" id="1280" />
+<TGConnectingPoint num="42" id="1281" />
+<TGConnectingPoint num="43" id="1282" />
+<TGConnectingPoint num="44" id="1283" />
+<TGConnectingPoint num="45" id="1284" />
+<TGConnectingPoint num="46" id="1285" />
+<TGConnectingPoint num="47" id="1286" />
+<TGConnectingPoint num="48" id="1287" />
+<TGConnectingPoint num="49" id="1288" />
+<TGConnectingPoint num="50" id="1289" />
+<TGConnectingPoint num="51" id="1290" />
+<TGConnectingPoint num="52" id="1291" />
+<TGConnectingPoint num="53" id="1292" />
+<TGConnectingPoint num="54" id="1293" />
+<TGConnectingPoint num="55" id="1294" />
+<TGConnectingPoint num="56" id="1295" />
+<TGConnectingPoint num="57" id="1296" />
+<TGConnectingPoint num="58" id="1297" />
+<TGConnectingPoint num="59" id="1298" />
+<TGConnectingPoint num="60" id="1299" />
+<TGConnectingPoint num="61" id="1300" />
+<TGConnectingPoint num="62" id="1301" />
+<TGConnectingPoint num="63" id="1302" />
+<TGConnectingPoint num="64" id="1303" />
+<TGConnectingPoint num="65" id="1304" />
+<TGConnectingPoint num="66" id="1305" />
+<TGConnectingPoint num="67" id="1306" />
+<TGConnectingPoint num="68" id="1307" />
+<TGConnectingPoint num="69" id="1308" />
+<TGConnectingPoint num="70" id="1309" />
+<TGConnectingPoint num="71" id="1310" />
+<TGConnectingPoint num="72" id="1311" />
+<TGConnectingPoint num="73" id="1312" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+
+</TMLSDPanel>
+
+<TMLSDPanel name="TransferCycle" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1520" id="1363" >
+<cdparam x="1079" y="58" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Dst_Storage_Instance" value="Storage instance name" />
+<TGConnectingPoint num="0" id="1314" />
+<TGConnectingPoint num="1" id="1315" />
+<TGConnectingPoint num="2" id="1316" />
+<TGConnectingPoint num="3" id="1317" />
+<TGConnectingPoint num="4" id="1318" />
+<TGConnectingPoint num="5" id="1319" />
+<TGConnectingPoint num="6" id="1320" />
+<TGConnectingPoint num="7" id="1321" />
+<TGConnectingPoint num="8" id="1322" />
+<TGConnectingPoint num="9" id="1323" />
+<TGConnectingPoint num="10" id="1324" />
+<TGConnectingPoint num="11" id="1325" />
+<TGConnectingPoint num="12" id="1326" />
+<TGConnectingPoint num="13" id="1327" />
+<TGConnectingPoint num="14" id="1328" />
+<TGConnectingPoint num="15" id="1329" />
+<TGConnectingPoint num="16" id="1330" />
+<TGConnectingPoint num="17" id="1331" />
+<TGConnectingPoint num="18" id="1332" />
+<TGConnectingPoint num="19" id="1333" />
+<TGConnectingPoint num="20" id="1334" />
+<TGConnectingPoint num="21" id="1335" />
+<TGConnectingPoint num="22" id="1336" />
+<TGConnectingPoint num="23" id="1337" />
+<TGConnectingPoint num="24" id="1338" />
+<TGConnectingPoint num="25" id="1339" />
+<TGConnectingPoint num="26" id="1340" />
+<TGConnectingPoint num="27" id="1341" />
+<TGConnectingPoint num="28" id="1342" />
+<TGConnectingPoint num="29" id="1343" />
+<TGConnectingPoint num="30" id="1344" />
+<TGConnectingPoint num="31" id="1345" />
+<TGConnectingPoint num="32" id="1346" />
+<TGConnectingPoint num="33" id="1347" />
+<TGConnectingPoint num="34" id="1348" />
+<TGConnectingPoint num="35" id="1349" />
+<TGConnectingPoint num="36" id="1350" />
+<TGConnectingPoint num="37" id="1351" />
+<TGConnectingPoint num="38" id="1352" />
+<TGConnectingPoint num="39" id="1353" />
+<TGConnectingPoint num="40" id="1354" />
+<TGConnectingPoint num="41" id="1355" />
+<TGConnectingPoint num="42" id="1356" />
+<TGConnectingPoint num="43" id="1357" />
+<TGConnectingPoint num="44" id="1358" />
+<TGConnectingPoint num="45" id="1359" />
+<TGConnectingPoint num="46" id="1360" />
+<TGConnectingPoint num="47" id="1361" />
+<TGConnectingPoint num="48" id="1362" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="numData" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="1413" >
+<cdparam x="832" y="58" />
+<sizeparam width="10" height="501" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance2" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="1364" />
+<TGConnectingPoint num="1" id="1365" />
+<TGConnectingPoint num="2" id="1366" />
+<TGConnectingPoint num="3" id="1367" />
+<TGConnectingPoint num="4" id="1368" />
+<TGConnectingPoint num="5" id="1369" />
+<TGConnectingPoint num="6" id="1370" />
+<TGConnectingPoint num="7" id="1371" />
+<TGConnectingPoint num="8" id="1372" />
+<TGConnectingPoint num="9" id="1373" />
+<TGConnectingPoint num="10" id="1374" />
+<TGConnectingPoint num="11" id="1375" />
+<TGConnectingPoint num="12" id="1376" />
+<TGConnectingPoint num="13" id="1377" />
+<TGConnectingPoint num="14" id="1378" />
+<TGConnectingPoint num="15" id="1379" />
+<TGConnectingPoint num="16" id="1380" />
+<TGConnectingPoint num="17" id="1381" />
+<TGConnectingPoint num="18" id="1382" />
+<TGConnectingPoint num="19" id="1383" />
+<TGConnectingPoint num="20" id="1384" />
+<TGConnectingPoint num="21" id="1385" />
+<TGConnectingPoint num="22" id="1386" />
+<TGConnectingPoint num="23" id="1387" />
+<TGConnectingPoint num="24" id="1388" />
+<TGConnectingPoint num="25" id="1389" />
+<TGConnectingPoint num="26" id="1390" />
+<TGConnectingPoint num="27" id="1391" />
+<TGConnectingPoint num="28" id="1392" />
+<TGConnectingPoint num="29" id="1393" />
+<TGConnectingPoint num="30" id="1394" />
+<TGConnectingPoint num="31" id="1395" />
+<TGConnectingPoint num="32" id="1396" />
+<TGConnectingPoint num="33" id="1397" />
+<TGConnectingPoint num="34" id="1398" />
+<TGConnectingPoint num="35" id="1399" />
+<TGConnectingPoint num="36" id="1400" />
+<TGConnectingPoint num="37" id="1401" />
+<TGConnectingPoint num="38" id="1402" />
+<TGConnectingPoint num="39" id="1403" />
+<TGConnectingPoint num="40" id="1404" />
+<TGConnectingPoint num="41" id="1405" />
+<TGConnectingPoint num="42" id="1406" />
+<TGConnectingPoint num="43" id="1407" />
+<TGConnectingPoint num="44" id="1408" />
+<TGConnectingPoint num="45" id="1409" />
+<TGConnectingPoint num="46" id="1410" />
+<TGConnectingPoint num="47" id="1411" />
+<TGConnectingPoint num="48" id="1412" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="numData" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="1463" >
+<cdparam x="367" y="58" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_1" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="1414" />
+<TGConnectingPoint num="1" id="1415" />
+<TGConnectingPoint num="2" id="1416" />
+<TGConnectingPoint num="3" id="1417" />
+<TGConnectingPoint num="4" id="1418" />
+<TGConnectingPoint num="5" id="1419" />
+<TGConnectingPoint num="6" id="1420" />
+<TGConnectingPoint num="7" id="1421" />
+<TGConnectingPoint num="8" id="1422" />
+<TGConnectingPoint num="9" id="1423" />
+<TGConnectingPoint num="10" id="1424" />
+<TGConnectingPoint num="11" id="1425" />
+<TGConnectingPoint num="12" id="1426" />
+<TGConnectingPoint num="13" id="1427" />
+<TGConnectingPoint num="14" id="1428" />
+<TGConnectingPoint num="15" id="1429" />
+<TGConnectingPoint num="16" id="1430" />
+<TGConnectingPoint num="17" id="1431" />
+<TGConnectingPoint num="18" id="1432" />
+<TGConnectingPoint num="19" id="1433" />
+<TGConnectingPoint num="20" id="1434" />
+<TGConnectingPoint num="21" id="1435" />
+<TGConnectingPoint num="22" id="1436" />
+<TGConnectingPoint num="23" id="1437" />
+<TGConnectingPoint num="24" id="1438" />
+<TGConnectingPoint num="25" id="1439" />
+<TGConnectingPoint num="26" id="1440" />
+<TGConnectingPoint num="27" id="1441" />
+<TGConnectingPoint num="28" id="1442" />
+<TGConnectingPoint num="29" id="1443" />
+<TGConnectingPoint num="30" id="1444" />
+<TGConnectingPoint num="31" id="1445" />
+<TGConnectingPoint num="32" id="1446" />
+<TGConnectingPoint num="33" id="1447" />
+<TGConnectingPoint num="34" id="1448" />
+<TGConnectingPoint num="35" id="1449" />
+<TGConnectingPoint num="36" id="1450" />
+<TGConnectingPoint num="37" id="1451" />
+<TGConnectingPoint num="38" id="1452" />
+<TGConnectingPoint num="39" id="1453" />
+<TGConnectingPoint num="40" id="1454" />
+<TGConnectingPoint num="41" id="1455" />
+<TGConnectingPoint num="42" id="1456" />
+<TGConnectingPoint num="43" id="1457" />
+<TGConnectingPoint num="44" id="1458" />
+<TGConnectingPoint num="45" id="1459" />
+<TGConnectingPoint num="46" id="1460" />
+<TGConnectingPoint num="47" id="1461" />
+<TGConnectingPoint num="48" id="1462" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="numData" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1520" id="1513" >
+<cdparam x="608" y="58" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Src_Storage_Instance" value="Storage instance name" />
+<TGConnectingPoint num="0" id="1464" />
+<TGConnectingPoint num="1" id="1465" />
+<TGConnectingPoint num="2" id="1466" />
+<TGConnectingPoint num="3" id="1467" />
+<TGConnectingPoint num="4" id="1468" />
+<TGConnectingPoint num="5" id="1469" />
+<TGConnectingPoint num="6" id="1470" />
+<TGConnectingPoint num="7" id="1471" />
+<TGConnectingPoint num="8" id="1472" />
+<TGConnectingPoint num="9" id="1473" />
+<TGConnectingPoint num="10" id="1474" />
+<TGConnectingPoint num="11" id="1475" />
+<TGConnectingPoint num="12" id="1476" />
+<TGConnectingPoint num="13" id="1477" />
+<TGConnectingPoint num="14" id="1478" />
+<TGConnectingPoint num="15" id="1479" />
+<TGConnectingPoint num="16" id="1480" />
+<TGConnectingPoint num="17" id="1481" />
+<TGConnectingPoint num="18" id="1482" />
+<TGConnectingPoint num="19" id="1483" />
+<TGConnectingPoint num="20" id="1484" />
+<TGConnectingPoint num="21" id="1485" />
+<TGConnectingPoint num="22" id="1486" />
+<TGConnectingPoint num="23" id="1487" />
+<TGConnectingPoint num="24" id="1488" />
+<TGConnectingPoint num="25" id="1489" />
+<TGConnectingPoint num="26" id="1490" />
+<TGConnectingPoint num="27" id="1491" />
+<TGConnectingPoint num="28" id="1492" />
+<TGConnectingPoint num="29" id="1493" />
+<TGConnectingPoint num="30" id="1494" />
+<TGConnectingPoint num="31" id="1495" />
+<TGConnectingPoint num="32" id="1496" />
+<TGConnectingPoint num="33" id="1497" />
+<TGConnectingPoint num="34" id="1498" />
+<TGConnectingPoint num="35" id="1499" />
+<TGConnectingPoint num="36" id="1500" />
+<TGConnectingPoint num="37" id="1501" />
+<TGConnectingPoint num="38" id="1502" />
+<TGConnectingPoint num="39" id="1503" />
+<TGConnectingPoint num="40" id="1504" />
+<TGConnectingPoint num="41" id="1505" />
+<TGConnectingPoint num="42" id="1506" />
+<TGConnectingPoint num="43" id="1507" />
+<TGConnectingPoint num="44" id="1508" />
+<TGConnectingPoint num="45" id="1509" />
+<TGConnectingPoint num="46" id="1510" />
+<TGConnectingPoint num="47" id="1511" />
+<TGConnectingPoint num="48" id="1512" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="numData" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="1563" >
+<cdparam x="136" y="58" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU_Controller" value="Controller instance name" />
+<TGConnectingPoint num="0" id="1514" />
+<TGConnectingPoint num="1" id="1515" />
+<TGConnectingPoint num="2" id="1516" />
+<TGConnectingPoint num="3" id="1517" />
+<TGConnectingPoint num="4" id="1518" />
+<TGConnectingPoint num="5" id="1519" />
+<TGConnectingPoint num="6" id="1520" />
+<TGConnectingPoint num="7" id="1521" />
+<TGConnectingPoint num="8" id="1522" />
+<TGConnectingPoint num="9" id="1523" />
+<TGConnectingPoint num="10" id="1524" />
+<TGConnectingPoint num="11" id="1525" />
+<TGConnectingPoint num="12" id="1526" />
+<TGConnectingPoint num="13" id="1527" />
+<TGConnectingPoint num="14" id="1528" />
+<TGConnectingPoint num="15" id="1529" />
+<TGConnectingPoint num="16" id="1530" />
+<TGConnectingPoint num="17" id="1531" />
+<TGConnectingPoint num="18" id="1532" />
+<TGConnectingPoint num="19" id="1533" />
+<TGConnectingPoint num="20" id="1534" />
+<TGConnectingPoint num="21" id="1535" />
+<TGConnectingPoint num="22" id="1536" />
+<TGConnectingPoint num="23" id="1537" />
+<TGConnectingPoint num="24" id="1538" />
+<TGConnectingPoint num="25" id="1539" />
+<TGConnectingPoint num="26" id="1540" />
+<TGConnectingPoint num="27" id="1541" />
+<TGConnectingPoint num="28" id="1542" />
+<TGConnectingPoint num="29" id="1543" />
+<TGConnectingPoint num="30" id="1544" />
+<TGConnectingPoint num="31" id="1545" />
+<TGConnectingPoint num="32" id="1546" />
+<TGConnectingPoint num="33" id="1547" />
+<TGConnectingPoint num="34" id="1548" />
+<TGConnectingPoint num="35" id="1549" />
+<TGConnectingPoint num="36" id="1550" />
+<TGConnectingPoint num="37" id="1551" />
+<TGConnectingPoint num="38" id="1552" />
+<TGConnectingPoint num="39" id="1553" />
+<TGConnectingPoint num="40" id="1554" />
+<TGConnectingPoint num="41" id="1555" />
+<TGConnectingPoint num="42" id="1556" />
+<TGConnectingPoint num="43" id="1557" />
+<TGConnectingPoint num="44" id="1558" />
+<TGConnectingPoint num="45" id="1559" />
+<TGConnectingPoint num="46" id="1560" />
+<TGConnectingPoint num="47" id="1561" />
+<TGConnectingPoint num="48" id="1562" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="numData" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="1523" id="1564" >
+<cdparam x="846" y="309" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress, numData)" />
+<P1  x="837" y="208" id="1378" />
+<P2  x="1084" y="208" id="1328" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress" />
+<Param index="1" id="numData" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="1565" >
+<cdparam x="141" y="278" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress, numData)" />
+<P1  x="141" y="178" id="1525" />
+<P2  x="837" y="178" id="1375" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress" />
+<Param index="1" id="numData" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="1566" >
+<cdparam x="372" y="118" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress, numData)" />
+<P1  x="372" y="148" id="1422" />
+<P2  x="613" y="148" id="1472" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress" />
+<Param index="1" id="numData" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="1567" >
+<cdparam x="158" y="87" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress, numData)" />
+<P1  x="141" y="118" id="1519" />
+<P2  x="372" y="118" id="1419" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress" />
+<Param index="1" id="numData" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML CP" nameTab="DMA_transfer" >
+<CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="583" minY="10" maxY="412" >
+<COMPONENT type="1507" id="1569" >
+<cdparam x="381" y="392" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1568" />
+</COMPONENT>
+
+<COMPONENT type="1510" id="1573" >
+<cdparam x="107" y="220" />
+<sizeparam width="164" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" />
+<infoparam name="for loop" value="for(i=counter;i&gt;0;i = i-1)" />
+<TGConnectingPoint num="0" id="1570" />
+<TGConnectingPoint num="1" id="1571" />
+<TGConnectingPoint num="2" id="1572" />
+<extraparam>
+<Data init="i=counter" condition="i&gt;0" increment="i = i-1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="301" id="1590" >
+<cdparam x="270" y="67" />
+<sizeparam width="313" height="75" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" />
+<infoparam name="UML Note" value="Some parameters are mapping dependent:
+- counter (depends on the application)
+- the source and destination addresses
+
+This model supposes that the DMA informs the
+CPU via interrupts (no polling messages)
+" />
+<TGConnectingPoint num="0" id="1574" />
+<TGConnectingPoint num="1" id="1575" />
+<TGConnectingPoint num="2" id="1576" />
+<TGConnectingPoint num="3" id="1577" />
+<TGConnectingPoint num="4" id="1578" />
+<TGConnectingPoint num="5" id="1579" />
+<TGConnectingPoint num="6" id="1580" />
+<TGConnectingPoint num="7" id="1581" />
+<TGConnectingPoint num="8" id="1582" />
+<TGConnectingPoint num="9" id="1583" />
+<TGConnectingPoint num="10" id="1584" />
+<TGConnectingPoint num="11" id="1585" />
+<TGConnectingPoint num="12" id="1586" />
+<TGConnectingPoint num="13" id="1587" />
+<TGConnectingPoint num="14" id="1588" />
+<TGConnectingPoint num="15" id="1589" />
+<extraparam>
+<Line value="Some parameters are mapping dependent:" />
+<Line value="- counter (depends on the application)" />
+<Line value="- the source and destination addresses" />
+<Line value="" />
+<Line value="This model supposes that the DMA informs the" />
+<Line value="CPU via interrupts (no polling messages)" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1507" id="1592" >
+<cdparam x="179" y="374" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="1591" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="1603" >
+<cdparam x="329" y="300" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" />
+<infoparam name="DMACycle_SD" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="1593" />
+<TGConnectingPoint num="1" id="1594" />
+<TGConnectingPoint num="2" id="1595" />
+<TGConnectingPoint num="3" id="1596" />
+<TGConnectingPoint num="4" id="1597" />
+<TGConnectingPoint num="5" id="1598" />
+<TGConnectingPoint num="6" id="1599" />
+<TGConnectingPoint num="7" id="1600" />
+<TGConnectingPoint num="8" id="1601" />
+<TGConnectingPoint num="9" id="1602" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="1614" >
+<cdparam x="127" y="299" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" />
+<infoparam name="TerminateDMA_SD" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="1604" />
+<TGConnectingPoint num="1" id="1605" />
+<TGConnectingPoint num="2" id="1606" />
+<TGConnectingPoint num="3" id="1607" />
+<TGConnectingPoint num="4" id="1608" />
+<TGConnectingPoint num="5" id="1609" />
+<TGConnectingPoint num="6" id="1610" />
+<TGConnectingPoint num="7" id="1611" />
+<TGConnectingPoint num="8" id="1612" />
+<TGConnectingPoint num="9" id="1613" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="1625" >
+<cdparam x="127" y="129" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" />
+<infoparam name="ConfigureDMA_SD" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="1615" />
+<TGConnectingPoint num="1" id="1616" />
+<TGConnectingPoint num="2" id="1617" />
+<TGConnectingPoint num="3" id="1618" />
+<TGConnectingPoint num="4" id="1619" />
+<TGConnectingPoint num="5" id="1620" />
+<TGConnectingPoint num="6" id="1621" />
+<TGConnectingPoint num="7" id="1622" />
+<TGConnectingPoint num="8" id="1623" />
+<TGConnectingPoint num="9" id="1624" />
+</COMPONENT>
+
+<COMPONENT type="1506" id="1627" >
+<cdparam x="182" y="65" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="1626" />
+</COMPONENT>
+
+<CONNECTOR type="1501" id="1628" >
+<cdparam x="189" y="339" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="189" y="339" id="1605" />
+<P2  x="189" y="369" id="1591" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="1629" >
+<cdparam x="10" y="379" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="391" y="340" id="1594" />
+<P2  x="391" y="387" id="1568" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="1631" >
+<cdparam x="10" y="293" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="271" y="234" id="1571" />
+<P2  x="391" y="295" id="1593" />
+<Point x="391" y="234" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="1630" >
+<father id="1631" num="0" />
+<cdparam x="391" y="234" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1501" id="1632" >
+<cdparam x="37" y="293" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="189" y="245" id="1572" />
+<P2  x="189" y="294" id="1604" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="1633" >
+<cdparam x="10" y="124" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="189" y="169" id="1616" />
+<P2  x="189" y="215" id="1570" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="1634" >
+<cdparam x="187" y="61" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="189" y="85" id="1626" />
+<P2  x="189" y="124" id="1615" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</CommunicationPatternDiagramPanel>
+
+<TMLSDPanel name="ConfigureDMA_SD" minX="10" maxX="926" minY="10" maxY="556" >
+<COMPONENT type="1521" id="1684" >
+<cdparam x="466" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="926" minY="10" maxY="556" />
+<infoparam name="Transfer_Instance_1" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="1635" />
+<TGConnectingPoint num="1" id="1636" />
+<TGConnectingPoint num="2" id="1637" />
+<TGConnectingPoint num="3" id="1638" />
+<TGConnectingPoint num="4" id="1639" />
+<TGConnectingPoint num="5" id="1640" />
+<TGConnectingPoint num="6" id="1641" />
+<TGConnectingPoint num="7" id="1642" />
+<TGConnectingPoint num="8" id="1643" />
+<TGConnectingPoint num="9" id="1644" />
+<TGConnectingPoint num="10" id="1645" />
+<TGConnectingPoint num="11" id="1646" />
+<TGConnectingPoint num="12" id="1647" />
+<TGConnectingPoint num="13" id="1648" />
+<TGConnectingPoint num="14" id="1649" />
+<TGConnectingPoint num="15" id="1650" />
+<TGConnectingPoint num="16" id="1651" />
+<TGConnectingPoint num="17" id="1652" />
+<TGConnectingPoint num="18" id="1653" />
+<TGConnectingPoint num="19" id="1654" />
+<TGConnectingPoint num="20" id="1655" />
+<TGConnectingPoint num="21" id="1656" />
+<TGConnectingPoint num="22" id="1657" />
+<TGConnectingPoint num="23" id="1658" />
+<TGConnectingPoint num="24" id="1659" />
+<TGConnectingPoint num="25" id="1660" />
+<TGConnectingPoint num="26" id="1661" />
+<TGConnectingPoint num="27" id="1662" />
+<TGConnectingPoint num="28" id="1663" />
+<TGConnectingPoint num="29" id="1664" />
+<TGConnectingPoint num="30" id="1665" />
+<TGConnectingPoint num="31" id="1666" />
+<TGConnectingPoint num="32" id="1667" />
+<TGConnectingPoint num="33" id="1668" />
+<TGConnectingPoint num="34" id="1669" />
+<TGConnectingPoint num="35" id="1670" />
+<TGConnectingPoint num="36" id="1671" />
+<TGConnectingPoint num="37" id="1672" />
+<TGConnectingPoint num="38" id="1673" />
+<TGConnectingPoint num="39" id="1674" />
+<TGConnectingPoint num="40" id="1675" />
+<TGConnectingPoint num="41" id="1676" />
+<TGConnectingPoint num="42" id="1677" />
+<TGConnectingPoint num="43" id="1678" />
+<TGConnectingPoint num="44" id="1679" />
+<TGConnectingPoint num="45" id="1680" />
+<TGConnectingPoint num="46" id="1681" />
+<TGConnectingPoint num="47" id="1682" />
+<TGConnectingPoint num="48" id="1683" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="1734" >
+<cdparam x="867" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="926" minY="10" maxY="556" />
+<infoparam name="DMA_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="1685" />
+<TGConnectingPoint num="1" id="1686" />
+<TGConnectingPoint num="2" id="1687" />
+<TGConnectingPoint num="3" id="1688" />
+<TGConnectingPoint num="4" id="1689" />
+<TGConnectingPoint num="5" id="1690" />
+<TGConnectingPoint num="6" id="1691" />
+<TGConnectingPoint num="7" id="1692" />
+<TGConnectingPoint num="8" id="1693" />
+<TGConnectingPoint num="9" id="1694" />
+<TGConnectingPoint num="10" id="1695" />
+<TGConnectingPoint num="11" id="1696" />
+<TGConnectingPoint num="12" id="1697" />
+<TGConnectingPoint num="13" id="1698" />
+<TGConnectingPoint num="14" id="1699" />
+<TGConnectingPoint num="15" id="1700" />
+<TGConnectingPoint num="16" id="1701" />
+<TGConnectingPoint num="17" id="1702" />
+<TGConnectingPoint num="18" id="1703" />
+<TGConnectingPoint num="19" id="1704" />
+<TGConnectingPoint num="20" id="1705" />
+<TGConnectingPoint num="21" id="1706" />
+<TGConnectingPoint num="22" id="1707" />
+<TGConnectingPoint num="23" id="1708" />
+<TGConnectingPoint num="24" id="1709" />
+<TGConnectingPoint num="25" id="1710" />
+<TGConnectingPoint num="26" id="1711" />
+<TGConnectingPoint num="27" id="1712" />
+<TGConnectingPoint num="28" id="1713" />
+<TGConnectingPoint num="29" id="1714" />
+<TGConnectingPoint num="30" id="1715" />
+<TGConnectingPoint num="31" id="1716" />
+<TGConnectingPoint num="32" id="1717" />
+<TGConnectingPoint num="33" id="1718" />
+<TGConnectingPoint num="34" id="1719" />
+<TGConnectingPoint num="35" id="1720" />
+<TGConnectingPoint num="36" id="1721" />
+<TGConnectingPoint num="37" id="1722" />
+<TGConnectingPoint num="38" id="1723" />
+<TGConnectingPoint num="39" id="1724" />
+<TGConnectingPoint num="40" id="1725" />
+<TGConnectingPoint num="41" id="1726" />
+<TGConnectingPoint num="42" id="1727" />
+<TGConnectingPoint num="43" id="1728" />
+<TGConnectingPoint num="44" id="1729" />
+<TGConnectingPoint num="45" id="1730" />
+<TGConnectingPoint num="46" id="1731" />
+<TGConnectingPoint num="47" id="1732" />
+<TGConnectingPoint num="48" id="1733" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="1784" >
+<cdparam x="58" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="926" minY="10" maxY="556" />
+<infoparam name="CPU_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="1735" />
+<TGConnectingPoint num="1" id="1736" />
+<TGConnectingPoint num="2" id="1737" />
+<TGConnectingPoint num="3" id="1738" />
+<TGConnectingPoint num="4" id="1739" />
+<TGConnectingPoint num="5" id="1740" />
+<TGConnectingPoint num="6" id="1741" />
+<TGConnectingPoint num="7" id="1742" />
+<TGConnectingPoint num="8" id="1743" />
+<TGConnectingPoint num="9" id="1744" />
+<TGConnectingPoint num="10" id="1745" />
+<TGConnectingPoint num="11" id="1746" />
+<TGConnectingPoint num="12" id="1747" />
+<TGConnectingPoint num="13" id="1748" />
+<TGConnectingPoint num="14" id="1749" />
+<TGConnectingPoint num="15" id="1750" />
+<TGConnectingPoint num="16" id="1751" />
+<TGConnectingPoint num="17" id="1752" />
+<TGConnectingPoint num="18" id="1753" />
+<TGConnectingPoint num="19" id="1754" />
+<TGConnectingPoint num="20" id="1755" />
+<TGConnectingPoint num="21" id="1756" />
+<TGConnectingPoint num="22" id="1757" />
+<TGConnectingPoint num="23" id="1758" />
+<TGConnectingPoint num="24" id="1759" />
+<TGConnectingPoint num="25" id="1760" />
+<TGConnectingPoint num="26" id="1761" />
+<TGConnectingPoint num="27" id="1762" />
+<TGConnectingPoint num="28" id="1763" />
+<TGConnectingPoint num="29" id="1764" />
+<TGConnectingPoint num="30" id="1765" />
+<TGConnectingPoint num="31" id="1766" />
+<TGConnectingPoint num="32" id="1767" />
+<TGConnectingPoint num="33" id="1768" />
+<TGConnectingPoint num="34" id="1769" />
+<TGConnectingPoint num="35" id="1770" />
+<TGConnectingPoint num="36" id="1771" />
+<TGConnectingPoint num="37" id="1772" />
+<TGConnectingPoint num="38" id="1773" />
+<TGConnectingPoint num="39" id="1774" />
+<TGConnectingPoint num="40" id="1775" />
+<TGConnectingPoint num="41" id="1776" />
+<TGConnectingPoint num="42" id="1777" />
+<TGConnectingPoint num="43" id="1778" />
+<TGConnectingPoint num="44" id="1779" />
+<TGConnectingPoint num="45" id="1780" />
+<TGConnectingPoint num="46" id="1781" />
+<TGConnectingPoint num="47" id="1782" />
+<TGConnectingPoint num="48" id="1783" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="1523" id="1785" >
+<cdparam x="391" y="166" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferRequest" value="TransferRequest(counter, sourceAddress, destinationAddress)" />
+<P1  x="471" y="126" id="1641" />
+<P2  x="872" y="126" id="1691" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="counter" />
+<Param index="1" id="sourceAddress" />
+<Param index="2" id="destinationAddress" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="1786" >
+<cdparam x="172" y="136" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferRequest" value="TransferRequest(counter, sourceAddress, destinationAddress)" />
+<P1  x="63" y="96" id="1738" />
+<P2  x="471" y="96" id="1638" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="counter" />
+<Param index="1" id="sourceAddress" />
+<Param index="2" id="destinationAddress" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+<TMLSDPanel name="DMACycle_SD" minX="10" maxX="912" minY="10" maxY="540" >
+<COMPONENT type="1520" id="1836" >
+<cdparam x="832" y="39" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" />
+<infoparam name="Dst_Storage_Instance_1" value="Storage instance name" />
+<TGConnectingPoint num="0" id="1787" />
+<TGConnectingPoint num="1" id="1788" />
+<TGConnectingPoint num="2" id="1789" />
+<TGConnectingPoint num="3" id="1790" />
+<TGConnectingPoint num="4" id="1791" />
+<TGConnectingPoint num="5" id="1792" />
+<TGConnectingPoint num="6" id="1793" />
+<TGConnectingPoint num="7" id="1794" />
+<TGConnectingPoint num="8" id="1795" />
+<TGConnectingPoint num="9" id="1796" />
+<TGConnectingPoint num="10" id="1797" />
+<TGConnectingPoint num="11" id="1798" />
+<TGConnectingPoint num="12" id="1799" />
+<TGConnectingPoint num="13" id="1800" />
+<TGConnectingPoint num="14" id="1801" />
+<TGConnectingPoint num="15" id="1802" />
+<TGConnectingPoint num="16" id="1803" />
+<TGConnectingPoint num="17" id="1804" />
+<TGConnectingPoint num="18" id="1805" />
+<TGConnectingPoint num="19" id="1806" />
+<TGConnectingPoint num="20" id="1807" />
+<TGConnectingPoint num="21" id="1808" />
+<TGConnectingPoint num="22" id="1809" />
+<TGConnectingPoint num="23" id="1810" />
+<TGConnectingPoint num="24" id="1811" />
+<TGConnectingPoint num="25" id="1812" />
+<TGConnectingPoint num="26" id="1813" />
+<TGConnectingPoint num="27" id="1814" />
+<TGConnectingPoint num="28" id="1815" />
+<TGConnectingPoint num="29" id="1816" />
+<TGConnectingPoint num="30" id="1817" />
+<TGConnectingPoint num="31" id="1818" />
+<TGConnectingPoint num="32" id="1819" />
+<TGConnectingPoint num="33" id="1820" />
+<TGConnectingPoint num="34" id="1821" />
+<TGConnectingPoint num="35" id="1822" />
+<TGConnectingPoint num="36" id="1823" />
+<TGConnectingPoint num="37" id="1824" />
+<TGConnectingPoint num="38" id="1825" />
+<TGConnectingPoint num="39" id="1826" />
+<TGConnectingPoint num="40" id="1827" />
+<TGConnectingPoint num="41" id="1828" />
+<TGConnectingPoint num="42" id="1829" />
+<TGConnectingPoint num="43" id="1830" />
+<TGConnectingPoint num="44" id="1831" />
+<TGConnectingPoint num="45" id="1832" />
+<TGConnectingPoint num="46" id="1833" />
+<TGConnectingPoint num="47" id="1834" />
+<TGConnectingPoint num="48" id="1835" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="1886" >
+<cdparam x="624" y="39" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" />
+<infoparam name="Transfer_Instance_3" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="1837" />
+<TGConnectingPoint num="1" id="1838" />
+<TGConnectingPoint num="2" id="1839" />
+<TGConnectingPoint num="3" id="1840" />
+<TGConnectingPoint num="4" id="1841" />
+<TGConnectingPoint num="5" id="1842" />
+<TGConnectingPoint num="6" id="1843" />
+<TGConnectingPoint num="7" id="1844" />
+<TGConnectingPoint num="8" id="1845" />
+<TGConnectingPoint num="9" id="1846" />
+<TGConnectingPoint num="10" id="1847" />
+<TGConnectingPoint num="11" id="1848" />
+<TGConnectingPoint num="12" id="1849" />
+<TGConnectingPoint num="13" id="1850" />
+<TGConnectingPoint num="14" id="1851" />
+<TGConnectingPoint num="15" id="1852" />
+<TGConnectingPoint num="16" id="1853" />
+<TGConnectingPoint num="17" id="1854" />
+<TGConnectingPoint num="18" id="1855" />
+<TGConnectingPoint num="19" id="1856" />
+<TGConnectingPoint num="20" id="1857" />
+<TGConnectingPoint num="21" id="1858" />
+<TGConnectingPoint num="22" id="1859" />
+<TGConnectingPoint num="23" id="1860" />
+<TGConnectingPoint num="24" id="1861" />
+<TGConnectingPoint num="25" id="1862" />
+<TGConnectingPoint num="26" id="1863" />
+<TGConnectingPoint num="27" id="1864" />
+<TGConnectingPoint num="28" id="1865" />
+<TGConnectingPoint num="29" id="1866" />
+<TGConnectingPoint num="30" id="1867" />
+<TGConnectingPoint num="31" id="1868" />
+<TGConnectingPoint num="32" id="1869" />
+<TGConnectingPoint num="33" id="1870" />
+<TGConnectingPoint num="34" id="1871" />
+<TGConnectingPoint num="35" id="1872" />
+<TGConnectingPoint num="36" id="1873" />
+<TGConnectingPoint num="37" id="1874" />
+<TGConnectingPoint num="38" id="1875" />
+<TGConnectingPoint num="39" id="1876" />
+<TGConnectingPoint num="40" id="1877" />
+<TGConnectingPoint num="41" id="1878" />
+<TGConnectingPoint num="42" id="1879" />
+<TGConnectingPoint num="43" id="1880" />
+<TGConnectingPoint num="44" id="1881" />
+<TGConnectingPoint num="45" id="1882" />
+<TGConnectingPoint num="46" id="1883" />
+<TGConnectingPoint num="47" id="1884" />
+<TGConnectingPoint num="48" id="1885" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="1936" >
+<cdparam x="249" y="39" />
+<sizeparam width="10" height="501" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" />
+<infoparam name="Transfer_Instance_2" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="1887" />
+<TGConnectingPoint num="1" id="1888" />
+<TGConnectingPoint num="2" id="1889" />
+<TGConnectingPoint num="3" id="1890" />
+<TGConnectingPoint num="4" id="1891" />
+<TGConnectingPoint num="5" id="1892" />
+<TGConnectingPoint num="6" id="1893" />
+<TGConnectingPoint num="7" id="1894" />
+<TGConnectingPoint num="8" id="1895" />
+<TGConnectingPoint num="9" id="1896" />
+<TGConnectingPoint num="10" id="1897" />
+<TGConnectingPoint num="11" id="1898" />
+<TGConnectingPoint num="12" id="1899" />
+<TGConnectingPoint num="13" id="1900" />
+<TGConnectingPoint num="14" id="1901" />
+<TGConnectingPoint num="15" id="1902" />
+<TGConnectingPoint num="16" id="1903" />
+<TGConnectingPoint num="17" id="1904" />
+<TGConnectingPoint num="18" id="1905" />
+<TGConnectingPoint num="19" id="1906" />
+<TGConnectingPoint num="20" id="1907" />
+<TGConnectingPoint num="21" id="1908" />
+<TGConnectingPoint num="22" id="1909" />
+<TGConnectingPoint num="23" id="1910" />
+<TGConnectingPoint num="24" id="1911" />
+<TGConnectingPoint num="25" id="1912" />
+<TGConnectingPoint num="26" id="1913" />
+<TGConnectingPoint num="27" id="1914" />
+<TGConnectingPoint num="28" id="1915" />
+<TGConnectingPoint num="29" id="1916" />
+<TGConnectingPoint num="30" id="1917" />
+<TGConnectingPoint num="31" id="1918" />
+<TGConnectingPoint num="32" id="1919" />
+<TGConnectingPoint num="33" id="1920" />
+<TGConnectingPoint num="34" id="1921" />
+<TGConnectingPoint num="35" id="1922" />
+<TGConnectingPoint num="36" id="1923" />
+<TGConnectingPoint num="37" id="1924" />
+<TGConnectingPoint num="38" id="1925" />
+<TGConnectingPoint num="39" id="1926" />
+<TGConnectingPoint num="40" id="1927" />
+<TGConnectingPoint num="41" id="1928" />
+<TGConnectingPoint num="42" id="1929" />
+<TGConnectingPoint num="43" id="1930" />
+<TGConnectingPoint num="44" id="1931" />
+<TGConnectingPoint num="45" id="1932" />
+<TGConnectingPoint num="46" id="1933" />
+<TGConnectingPoint num="47" id="1934" />
+<TGConnectingPoint num="48" id="1935" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1520" id="1986" >
+<cdparam x="454" y="39" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" />
+<infoparam name="Src_Storage_Instance_1" value="Storage instance name" />
+<TGConnectingPoint num="0" id="1937" />
+<TGConnectingPoint num="1" id="1938" />
+<TGConnectingPoint num="2" id="1939" />
+<TGConnectingPoint num="3" id="1940" />
+<TGConnectingPoint num="4" id="1941" />
+<TGConnectingPoint num="5" id="1942" />
+<TGConnectingPoint num="6" id="1943" />
+<TGConnectingPoint num="7" id="1944" />
+<TGConnectingPoint num="8" id="1945" />
+<TGConnectingPoint num="9" id="1946" />
+<TGConnectingPoint num="10" id="1947" />
+<TGConnectingPoint num="11" id="1948" />
+<TGConnectingPoint num="12" id="1949" />
+<TGConnectingPoint num="13" id="1950" />
+<TGConnectingPoint num="14" id="1951" />
+<TGConnectingPoint num="15" id="1952" />
+<TGConnectingPoint num="16" id="1953" />
+<TGConnectingPoint num="17" id="1954" />
+<TGConnectingPoint num="18" id="1955" />
+<TGConnectingPoint num="19" id="1956" />
+<TGConnectingPoint num="20" id="1957" />
+<TGConnectingPoint num="21" id="1958" />
+<TGConnectingPoint num="22" id="1959" />
+<TGConnectingPoint num="23" id="1960" />
+<TGConnectingPoint num="24" id="1961" />
+<TGConnectingPoint num="25" id="1962" />
+<TGConnectingPoint num="26" id="1963" />
+<TGConnectingPoint num="27" id="1964" />
+<TGConnectingPoint num="28" id="1965" />
+<TGConnectingPoint num="29" id="1966" />
+<TGConnectingPoint num="30" id="1967" />
+<TGConnectingPoint num="31" id="1968" />
+<TGConnectingPoint num="32" id="1969" />
+<TGConnectingPoint num="33" id="1970" />
+<TGConnectingPoint num="34" id="1971" />
+<TGConnectingPoint num="35" id="1972" />
+<TGConnectingPoint num="36" id="1973" />
+<TGConnectingPoint num="37" id="1974" />
+<TGConnectingPoint num="38" id="1975" />
+<TGConnectingPoint num="39" id="1976" />
+<TGConnectingPoint num="40" id="1977" />
+<TGConnectingPoint num="41" id="1978" />
+<TGConnectingPoint num="42" id="1979" />
+<TGConnectingPoint num="43" id="1980" />
+<TGConnectingPoint num="44" id="1981" />
+<TGConnectingPoint num="45" id="1982" />
+<TGConnectingPoint num="46" id="1983" />
+<TGConnectingPoint num="47" id="1984" />
+<TGConnectingPoint num="48" id="1985" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="2045" >
+<cdparam x="79" y="39" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" />
+<infoparam name="DMA_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="1996" />
+<TGConnectingPoint num="1" id="1997" />
+<TGConnectingPoint num="2" id="1998" />
+<TGConnectingPoint num="3" id="1999" />
+<TGConnectingPoint num="4" id="2000" />
+<TGConnectingPoint num="5" id="2001" />
+<TGConnectingPoint num="6" id="2002" />
+<TGConnectingPoint num="7" id="2003" />
+<TGConnectingPoint num="8" id="2004" />
+<TGConnectingPoint num="9" id="2005" />
+<TGConnectingPoint num="10" id="2006" />
+<TGConnectingPoint num="11" id="2007" />
+<TGConnectingPoint num="12" id="2008" />
+<TGConnectingPoint num="13" id="2009" />
+<TGConnectingPoint num="14" id="2010" />
+<TGConnectingPoint num="15" id="2011" />
+<TGConnectingPoint num="16" id="2012" />
+<TGConnectingPoint num="17" id="2013" />
+<TGConnectingPoint num="18" id="2014" />
+<TGConnectingPoint num="19" id="2015" />
+<TGConnectingPoint num="20" id="2016" />
+<TGConnectingPoint num="21" id="2017" />
+<TGConnectingPoint num="22" id="2018" />
+<TGConnectingPoint num="23" id="2019" />
+<TGConnectingPoint num="24" id="2020" />
+<TGConnectingPoint num="25" id="2021" />
+<TGConnectingPoint num="26" id="2022" />
+<TGConnectingPoint num="27" id="2023" />
+<TGConnectingPoint num="28" id="2024" />
+<TGConnectingPoint num="29" id="2025" />
+<TGConnectingPoint num="30" id="2026" />
+<TGConnectingPoint num="31" id="2027" />
+<TGConnectingPoint num="32" id="2028" />
+<TGConnectingPoint num="33" id="2029" />
+<TGConnectingPoint num="34" id="2030" />
+<TGConnectingPoint num="35" id="2031" />
+<TGConnectingPoint num="36" id="2032" />
+<TGConnectingPoint num="37" id="2033" />
+<TGConnectingPoint num="38" id="2034" />
+<TGConnectingPoint num="39" id="2035" />
+<TGConnectingPoint num="40" id="2036" />
+<TGConnectingPoint num="41" id="2037" />
+<TGConnectingPoint num="42" id="2038" />
+<TGConnectingPoint num="43" id="2039" />
+<TGConnectingPoint num="44" id="2040" />
+<TGConnectingPoint num="45" id="2041" />
+<TGConnectingPoint num="46" id="2042" />
+<TGConnectingPoint num="47" id="2043" />
+<TGConnectingPoint num="48" id="2044" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1524" id="1995" >
+<father id="2045" num="0" />
+<cdparam x="84" y="180" />
+<sizeparam width="146" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" />
+<infoparam name="action state" value="counter = counter - 1" />
+<TGConnectingPoint num="0" id="1987" />
+<TGConnectingPoint num="1" id="1988" />
+<TGConnectingPoint num="2" id="1989" />
+<TGConnectingPoint num="3" id="1990" />
+<TGConnectingPoint num="4" id="1991" />
+<TGConnectingPoint num="5" id="1992" />
+<TGConnectingPoint num="6" id="1993" />
+<TGConnectingPoint num="7" id="1994" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1523" id="2046" >
+<cdparam x="784" y="229" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress, size)" />
+<P1  x="629" y="189" id="1851" />
+<P2  x="837" y="189" id="1801" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress" />
+<Param index="1" id="size" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2047" >
+<cdparam x="84" y="199" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress, size)" />
+<P1  x="84" y="159" id="2007" />
+<P2  x="629" y="159" id="1848" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress" />
+<Param index="1" id="size" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2048" >
+<cdparam x="315" y="109" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress, size)" />
+<P1  x="254" y="129" id="1895" />
+<P2  x="459" y="129" id="1945" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress" />
+<Param index="1" id="size" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2049" >
+<cdparam x="101" y="78" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress, size)" />
+<P1  x="84" y="99" id="2001" />
+<P2  x="254" y="99" id="1892" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress" />
+<Param index="1" id="size" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+<TMLSDPanel name="TerminateDMA_SD" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1521" id="2099" >
+<cdparam x="332" y="52" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_4" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="2050" />
+<TGConnectingPoint num="1" id="2051" />
+<TGConnectingPoint num="2" id="2052" />
+<TGConnectingPoint num="3" id="2053" />
+<TGConnectingPoint num="4" id="2054" />
+<TGConnectingPoint num="5" id="2055" />
+<TGConnectingPoint num="6" id="2056" />
+<TGConnectingPoint num="7" id="2057" />
+<TGConnectingPoint num="8" id="2058" />
+<TGConnectingPoint num="9" id="2059" />
+<TGConnectingPoint num="10" id="2060" />
+<TGConnectingPoint num="11" id="2061" />
+<TGConnectingPoint num="12" id="2062" />
+<TGConnectingPoint num="13" id="2063" />
+<TGConnectingPoint num="14" id="2064" />
+<TGConnectingPoint num="15" id="2065" />
+<TGConnectingPoint num="16" id="2066" />
+<TGConnectingPoint num="17" id="2067" />
+<TGConnectingPoint num="18" id="2068" />
+<TGConnectingPoint num="19" id="2069" />
+<TGConnectingPoint num="20" id="2070" />
+<TGConnectingPoint num="21" id="2071" />
+<TGConnectingPoint num="22" id="2072" />
+<TGConnectingPoint num="23" id="2073" />
+<TGConnectingPoint num="24" id="2074" />
+<TGConnectingPoint num="25" id="2075" />
+<TGConnectingPoint num="26" id="2076" />
+<TGConnectingPoint num="27" id="2077" />
+<TGConnectingPoint num="28" id="2078" />
+<TGConnectingPoint num="29" id="2079" />
+<TGConnectingPoint num="30" id="2080" />
+<TGConnectingPoint num="31" id="2081" />
+<TGConnectingPoint num="32" id="2082" />
+<TGConnectingPoint num="33" id="2083" />
+<TGConnectingPoint num="34" id="2084" />
+<TGConnectingPoint num="35" id="2085" />
+<TGConnectingPoint num="36" id="2086" />
+<TGConnectingPoint num="37" id="2087" />
+<TGConnectingPoint num="38" id="2088" />
+<TGConnectingPoint num="39" id="2089" />
+<TGConnectingPoint num="40" id="2090" />
+<TGConnectingPoint num="41" id="2091" />
+<TGConnectingPoint num="42" id="2092" />
+<TGConnectingPoint num="43" id="2093" />
+<TGConnectingPoint num="44" id="2094" />
+<TGConnectingPoint num="45" id="2095" />
+<TGConnectingPoint num="46" id="2096" />
+<TGConnectingPoint num="47" id="2097" />
+<TGConnectingPoint num="48" id="2098" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="2149" >
+<cdparam x="557" y="52" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMA_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="2100" />
+<TGConnectingPoint num="1" id="2101" />
+<TGConnectingPoint num="2" id="2102" />
+<TGConnectingPoint num="3" id="2103" />
+<TGConnectingPoint num="4" id="2104" />
+<TGConnectingPoint num="5" id="2105" />
+<TGConnectingPoint num="6" id="2106" />
+<TGConnectingPoint num="7" id="2107" />
+<TGConnectingPoint num="8" id="2108" />
+<TGConnectingPoint num="9" id="2109" />
+<TGConnectingPoint num="10" id="2110" />
+<TGConnectingPoint num="11" id="2111" />
+<TGConnectingPoint num="12" id="2112" />
+<TGConnectingPoint num="13" id="2113" />
+<TGConnectingPoint num="14" id="2114" />
+<TGConnectingPoint num="15" id="2115" />
+<TGConnectingPoint num="16" id="2116" />
+<TGConnectingPoint num="17" id="2117" />
+<TGConnectingPoint num="18" id="2118" />
+<TGConnectingPoint num="19" id="2119" />
+<TGConnectingPoint num="20" id="2120" />
+<TGConnectingPoint num="21" id="2121" />
+<TGConnectingPoint num="22" id="2122" />
+<TGConnectingPoint num="23" id="2123" />
+<TGConnectingPoint num="24" id="2124" />
+<TGConnectingPoint num="25" id="2125" />
+<TGConnectingPoint num="26" id="2126" />
+<TGConnectingPoint num="27" id="2127" />
+<TGConnectingPoint num="28" id="2128" />
+<TGConnectingPoint num="29" id="2129" />
+<TGConnectingPoint num="30" id="2130" />
+<TGConnectingPoint num="31" id="2131" />
+<TGConnectingPoint num="32" id="2132" />
+<TGConnectingPoint num="33" id="2133" />
+<TGConnectingPoint num="34" id="2134" />
+<TGConnectingPoint num="35" id="2135" />
+<TGConnectingPoint num="36" id="2136" />
+<TGConnectingPoint num="37" id="2137" />
+<TGConnectingPoint num="38" id="2138" />
+<TGConnectingPoint num="39" id="2139" />
+<TGConnectingPoint num="40" id="2140" />
+<TGConnectingPoint num="41" id="2141" />
+<TGConnectingPoint num="42" id="2142" />
+<TGConnectingPoint num="43" id="2143" />
+<TGConnectingPoint num="44" id="2144" />
+<TGConnectingPoint num="45" id="2145" />
+<TGConnectingPoint num="46" id="2146" />
+<TGConnectingPoint num="47" id="2147" />
+<TGConnectingPoint num="48" id="2148" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="counter" value="" type="10" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="2199" >
+<cdparam x="113" y="52" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="2150" />
+<TGConnectingPoint num="1" id="2151" />
+<TGConnectingPoint num="2" id="2152" />
+<TGConnectingPoint num="3" id="2153" />
+<TGConnectingPoint num="4" id="2154" />
+<TGConnectingPoint num="5" id="2155" />
+<TGConnectingPoint num="6" id="2156" />
+<TGConnectingPoint num="7" id="2157" />
+<TGConnectingPoint num="8" id="2158" />
+<TGConnectingPoint num="9" id="2159" />
+<TGConnectingPoint num="10" id="2160" />
+<TGConnectingPoint num="11" id="2161" />
+<TGConnectingPoint num="12" id="2162" />
+<TGConnectingPoint num="13" id="2163" />
+<TGConnectingPoint num="14" id="2164" />
+<TGConnectingPoint num="15" id="2165" />
+<TGConnectingPoint num="16" id="2166" />
+<TGConnectingPoint num="17" id="2167" />
+<TGConnectingPoint num="18" id="2168" />
+<TGConnectingPoint num="19" id="2169" />
+<TGConnectingPoint num="20" id="2170" />
+<TGConnectingPoint num="21" id="2171" />
+<TGConnectingPoint num="22" id="2172" />
+<TGConnectingPoint num="23" id="2173" />
+<TGConnectingPoint num="24" id="2174" />
+<TGConnectingPoint num="25" id="2175" />
+<TGConnectingPoint num="26" id="2176" />
+<TGConnectingPoint num="27" id="2177" />
+<TGConnectingPoint num="28" id="2178" />
+<TGConnectingPoint num="29" id="2179" />
+<TGConnectingPoint num="30" id="2180" />
+<TGConnectingPoint num="31" id="2181" />
+<TGConnectingPoint num="32" id="2182" />
+<TGConnectingPoint num="33" id="2183" />
+<TGConnectingPoint num="34" id="2184" />
+<TGConnectingPoint num="35" id="2185" />
+<TGConnectingPoint num="36" id="2186" />
+<TGConnectingPoint num="37" id="2187" />
+<TGConnectingPoint num="38" id="2188" />
+<TGConnectingPoint num="39" id="2189" />
+<TGConnectingPoint num="40" id="2190" />
+<TGConnectingPoint num="41" id="2191" />
+<TGConnectingPoint num="42" id="2192" />
+<TGConnectingPoint num="43" id="2193" />
+<TGConnectingPoint num="44" id="2194" />
+<TGConnectingPoint num="45" id="2195" />
+<TGConnectingPoint num="46" id="2196" />
+<TGConnectingPoint num="47" id="2197" />
+<TGConnectingPoint num="48" id="2198" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="1523" id="2200" >
+<cdparam x="337" y="112" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferTerminated" value="TransferTerminated()" />
+<P1  x="337" y="112" id="2055" />
+<P2  x="118" y="112" id="2155" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2201" >
+<cdparam x="562" y="82" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferTerminated" value="TransferTerminated()" />
+<P1  x="562" y="82" id="2102" />
+<P2  x="337" y="82" id="2052" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML CP" nameTab="DMATransferPolling" >
+<CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1504" id="2212" >
+<cdparam x="86" y="250" />
+<sizeparam width="123" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TransferCycleAD" value="Reference to a CP" />
+<TGConnectingPoint num="0" id="2202" />
+<TGConnectingPoint num="1" id="2203" />
+<TGConnectingPoint num="2" id="2204" />
+<TGConnectingPoint num="3" id="2205" />
+<TGConnectingPoint num="4" id="2206" />
+<TGConnectingPoint num="5" id="2207" />
+<TGConnectingPoint num="6" id="2208" />
+<TGConnectingPoint num="7" id="2209" />
+<TGConnectingPoint num="8" id="2210" />
+<TGConnectingPoint num="9" id="2211" />
+</COMPONENT>
+
+<COMPONENT type="1504" id="2223" >
+<cdparam x="319" y="250" />
+<sizeparam width="123" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="PollingCycleAD" value="Reference to a CP" />
+<TGConnectingPoint num="0" id="2213" />
+<TGConnectingPoint num="1" id="2214" />
+<TGConnectingPoint num="2" id="2215" />
+<TGConnectingPoint num="3" id="2216" />
+<TGConnectingPoint num="4" id="2217" />
+<TGConnectingPoint num="5" id="2218" />
+<TGConnectingPoint num="6" id="2219" />
+<TGConnectingPoint num="7" id="2220" />
+<TGConnectingPoint num="8" id="2221" />
+<TGConnectingPoint num="9" id="2222" />
+</COMPONENT>
+
+<COMPONENT type="1503" id="2238" >
+<cdparam x="181" y="347" />
+<sizeparam width="150" height="5" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="join2" value="null" />
+<TGConnectingPoint num="0" id="2224" />
+<TGConnectingPoint num="1" id="2225" />
+<TGConnectingPoint num="2" id="2226" />
+<TGConnectingPoint num="3" id="2227" />
+<TGConnectingPoint num="4" id="2228" />
+<TGConnectingPoint num="5" id="2229" />
+<TGConnectingPoint num="6" id="2230" />
+<TGConnectingPoint num="7" id="2231" />
+<TGConnectingPoint num="8" id="2232" />
+<TGConnectingPoint num="9" id="2233" />
+<TGConnectingPoint num="10" id="2234" />
+<TGConnectingPoint num="11" id="2235" />
+<TGConnectingPoint num="12" id="2236" />
+<TGConnectingPoint num="13" id="2237" />
+</COMPONENT>
+
+<COMPONENT type="1502" id="2253" >
+<cdparam x="177" y="186" />
+<sizeparam width="150" height="5" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="fork2" value="null" />
+<TGConnectingPoint num="0" id="2239" />
+<TGConnectingPoint num="1" id="2240" />
+<TGConnectingPoint num="2" id="2241" />
+<TGConnectingPoint num="3" id="2242" />
+<TGConnectingPoint num="4" id="2243" />
+<TGConnectingPoint num="5" id="2244" />
+<TGConnectingPoint num="6" id="2245" />
+<TGConnectingPoint num="7" id="2246" />
+<TGConnectingPoint num="8" id="2247" />
+<TGConnectingPoint num="9" id="2248" />
+<TGConnectingPoint num="10" id="2249" />
+<TGConnectingPoint num="11" id="2250" />
+<TGConnectingPoint num="12" id="2251" />
+<TGConnectingPoint num="13" id="2252" />
+</COMPONENT>
+
+<COMPONENT type="301" id="2270" >
+<cdparam x="339" y="69" />
+<sizeparam width="305" height="75" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="Some parameters are mapping dependent:
+- size in ExecuteTransfer 
+- the source and destination addresses
+
+This model supposes that the DMA replies via
+POLLING
+" />
+<TGConnectingPoint num="0" id="2254" />
+<TGConnectingPoint num="1" id="2255" />
+<TGConnectingPoint num="2" id="2256" />
+<TGConnectingPoint num="3" id="2257" />
+<TGConnectingPoint num="4" id="2258" />
+<TGConnectingPoint num="5" id="2259" />
+<TGConnectingPoint num="6" id="2260" />
+<TGConnectingPoint num="7" id="2261" />
+<TGConnectingPoint num="8" id="2262" />
+<TGConnectingPoint num="9" id="2263" />
+<TGConnectingPoint num="10" id="2264" />
+<TGConnectingPoint num="11" id="2265" />
+<TGConnectingPoint num="12" id="2266" />
+<TGConnectingPoint num="13" id="2267" />
+<TGConnectingPoint num="14" id="2268" />
+<TGConnectingPoint num="15" id="2269" />
+<extraparam>
+<Line value="Some parameters are mapping dependent:" />
+<Line value="- size in ExecuteTransfer " />
+<Line value="- the source and destination addresses" />
+<Line value="" />
+<Line value="This model supposes that the DMA replies via" />
+<Line value="POLLING" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1507" id="2272" >
+<cdparam x="246" y="399" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="2271" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="2283" >
+<cdparam x="190" y="105" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="ConfigureTransfer" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="2273" />
+<TGConnectingPoint num="1" id="2274" />
+<TGConnectingPoint num="2" id="2275" />
+<TGConnectingPoint num="3" id="2276" />
+<TGConnectingPoint num="4" id="2277" />
+<TGConnectingPoint num="5" id="2278" />
+<TGConnectingPoint num="6" id="2279" />
+<TGConnectingPoint num="7" id="2280" />
+<TGConnectingPoint num="8" id="2281" />
+<TGConnectingPoint num="9" id="2282" />
+</COMPONENT>
+
+<COMPONENT type="1506" id="2285" >
+<cdparam x="245" y="42" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="2284" />
+</COMPONENT>
+
+<CONNECTOR type="1501" id="2286" >
+<cdparam x="256" y="352" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="256" y="352" id="2229" />
+<P2  x="256" y="394" id="2271" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2287" >
+<cdparam x="145" y="291" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="147" y="290" id="2203" />
+<P2  x="206" y="347" id="2224" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2288" >
+<cdparam x="301" y="191" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="301" y="191" id="2243" />
+<P2  x="380" y="245" id="2213" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2289" >
+<cdparam x="202" y="191" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="202" y="191" id="2239" />
+<P2  x="147" y="245" id="2202" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2290" >
+<cdparam x="252" y="62" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="252" y="62" id="2284" />
+<P2  x="252" y="100" id="2273" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2291" >
+<cdparam x="252" y="145" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="252" y="145" id="2274" />
+<P2  x="252" y="186" id="2244" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2292" >
+<cdparam x="381" y="290" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="380" y="290" id="2214" />
+<P2  x="305" y="347" id="2228" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</CommunicationPatternDiagramPanel>
+
+<TMLSDPanel name="ConfigureTransfer" minX="10" maxX="1259" minY="10" maxY="543" >
+<COMPONENT type="1521" id="2342" >
+<cdparam x="600" y="43" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1259" minY="10" maxY="543" />
+<infoparam name="TransferInstance_1" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="2293" />
+<TGConnectingPoint num="1" id="2294" />
+<TGConnectingPoint num="2" id="2295" />
+<TGConnectingPoint num="3" id="2296" />
+<TGConnectingPoint num="4" id="2297" />
+<TGConnectingPoint num="5" id="2298" />
+<TGConnectingPoint num="6" id="2299" />
+<TGConnectingPoint num="7" id="2300" />
+<TGConnectingPoint num="8" id="2301" />
+<TGConnectingPoint num="9" id="2302" />
+<TGConnectingPoint num="10" id="2303" />
+<TGConnectingPoint num="11" id="2304" />
+<TGConnectingPoint num="12" id="2305" />
+<TGConnectingPoint num="13" id="2306" />
+<TGConnectingPoint num="14" id="2307" />
+<TGConnectingPoint num="15" id="2308" />
+<TGConnectingPoint num="16" id="2309" />
+<TGConnectingPoint num="17" id="2310" />
+<TGConnectingPoint num="18" id="2311" />
+<TGConnectingPoint num="19" id="2312" />
+<TGConnectingPoint num="20" id="2313" />
+<TGConnectingPoint num="21" id="2314" />
+<TGConnectingPoint num="22" id="2315" />
+<TGConnectingPoint num="23" id="2316" />
+<TGConnectingPoint num="24" id="2317" />
+<TGConnectingPoint num="25" id="2318" />
+<TGConnectingPoint num="26" id="2319" />
+<TGConnectingPoint num="27" id="2320" />
+<TGConnectingPoint num="28" id="2321" />
+<TGConnectingPoint num="29" id="2322" />
+<TGConnectingPoint num="30" id="2323" />
+<TGConnectingPoint num="31" id="2324" />
+<TGConnectingPoint num="32" id="2325" />
+<TGConnectingPoint num="33" id="2326" />
+<TGConnectingPoint num="34" id="2327" />
+<TGConnectingPoint num="35" id="2328" />
+<TGConnectingPoint num="36" id="2329" />
+<TGConnectingPoint num="37" id="2330" />
+<TGConnectingPoint num="38" id="2331" />
+<TGConnectingPoint num="39" id="2332" />
+<TGConnectingPoint num="40" id="2333" />
+<TGConnectingPoint num="41" id="2334" />
+<TGConnectingPoint num="42" id="2335" />
+<TGConnectingPoint num="43" id="2336" />
+<TGConnectingPoint num="44" id="2337" />
+<TGConnectingPoint num="45" id="2338" />
+<TGConnectingPoint num="46" id="2339" />
+<TGConnectingPoint num="47" id="2340" />
+<TGConnectingPoint num="48" id="2341" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="ID" value="" type="0" typeOther="" />
+<Attribute access="2" id="bytesToTransfer" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="2401" >
+<cdparam x="1076" y="43" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1259" minY="10" maxY="543" />
+<infoparam name="DMA_Controller" value="Controller instance name" />
+<TGConnectingPoint num="0" id="2352" />
+<TGConnectingPoint num="1" id="2353" />
+<TGConnectingPoint num="2" id="2354" />
+<TGConnectingPoint num="3" id="2355" />
+<TGConnectingPoint num="4" id="2356" />
+<TGConnectingPoint num="5" id="2357" />
+<TGConnectingPoint num="6" id="2358" />
+<TGConnectingPoint num="7" id="2359" />
+<TGConnectingPoint num="8" id="2360" />
+<TGConnectingPoint num="9" id="2361" />
+<TGConnectingPoint num="10" id="2362" />
+<TGConnectingPoint num="11" id="2363" />
+<TGConnectingPoint num="12" id="2364" />
+<TGConnectingPoint num="13" id="2365" />
+<TGConnectingPoint num="14" id="2366" />
+<TGConnectingPoint num="15" id="2367" />
+<TGConnectingPoint num="16" id="2368" />
+<TGConnectingPoint num="17" id="2369" />
+<TGConnectingPoint num="18" id="2370" />
+<TGConnectingPoint num="19" id="2371" />
+<TGConnectingPoint num="20" id="2372" />
+<TGConnectingPoint num="21" id="2373" />
+<TGConnectingPoint num="22" id="2374" />
+<TGConnectingPoint num="23" id="2375" />
+<TGConnectingPoint num="24" id="2376" />
+<TGConnectingPoint num="25" id="2377" />
+<TGConnectingPoint num="26" id="2378" />
+<TGConnectingPoint num="27" id="2379" />
+<TGConnectingPoint num="28" id="2380" />
+<TGConnectingPoint num="29" id="2381" />
+<TGConnectingPoint num="30" id="2382" />
+<TGConnectingPoint num="31" id="2383" />
+<TGConnectingPoint num="32" id="2384" />
+<TGConnectingPoint num="33" id="2385" />
+<TGConnectingPoint num="34" id="2386" />
+<TGConnectingPoint num="35" id="2387" />
+<TGConnectingPoint num="36" id="2388" />
+<TGConnectingPoint num="37" id="2389" />
+<TGConnectingPoint num="38" id="2390" />
+<TGConnectingPoint num="39" id="2391" />
+<TGConnectingPoint num="40" id="2392" />
+<TGConnectingPoint num="41" id="2393" />
+<TGConnectingPoint num="42" id="2394" />
+<TGConnectingPoint num="43" id="2395" />
+<TGConnectingPoint num="44" id="2396" />
+<TGConnectingPoint num="45" id="2397" />
+<TGConnectingPoint num="46" id="2398" />
+<TGConnectingPoint num="47" id="2399" />
+<TGConnectingPoint num="48" id="2400" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="ID" value="" type="0" typeOther="" />
+<Attribute access="2" id="transferTerminated" value="false" type="4" typeOther="" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+<Attribute access="2" id="bytesToTransfer" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1524" id="2351" >
+<father id="2401" num="0" />
+<cdparam x="1081" y="150" />
+<sizeparam width="178" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" />
+<infoparam name="action state" value="counter = bytesToTransfer" />
+<TGConnectingPoint num="0" id="2343" />
+<TGConnectingPoint num="1" id="2344" />
+<TGConnectingPoint num="2" id="2345" />
+<TGConnectingPoint num="3" id="2346" />
+<TGConnectingPoint num="4" id="2347" />
+<TGConnectingPoint num="5" id="2348" />
+<TGConnectingPoint num="6" id="2349" />
+<TGConnectingPoint num="7" id="2350" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1522" id="2460" >
+<cdparam x="129" y="43" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1259" minY="10" maxY="543" />
+<infoparam name="CPU_Controller" value="Controller instance name" />
+<TGConnectingPoint num="0" id="2411" />
+<TGConnectingPoint num="1" id="2412" />
+<TGConnectingPoint num="2" id="2413" />
+<TGConnectingPoint num="3" id="2414" />
+<TGConnectingPoint num="4" id="2415" />
+<TGConnectingPoint num="5" id="2416" />
+<TGConnectingPoint num="6" id="2417" />
+<TGConnectingPoint num="7" id="2418" />
+<TGConnectingPoint num="8" id="2419" />
+<TGConnectingPoint num="9" id="2420" />
+<TGConnectingPoint num="10" id="2421" />
+<TGConnectingPoint num="11" id="2422" />
+<TGConnectingPoint num="12" id="2423" />
+<TGConnectingPoint num="13" id="2424" />
+<TGConnectingPoint num="14" id="2425" />
+<TGConnectingPoint num="15" id="2426" />
+<TGConnectingPoint num="16" id="2427" />
+<TGConnectingPoint num="17" id="2428" />
+<TGConnectingPoint num="18" id="2429" />
+<TGConnectingPoint num="19" id="2430" />
+<TGConnectingPoint num="20" id="2431" />
+<TGConnectingPoint num="21" id="2432" />
+<TGConnectingPoint num="22" id="2433" />
+<TGConnectingPoint num="23" id="2434" />
+<TGConnectingPoint num="24" id="2435" />
+<TGConnectingPoint num="25" id="2436" />
+<TGConnectingPoint num="26" id="2437" />
+<TGConnectingPoint num="27" id="2438" />
+<TGConnectingPoint num="28" id="2439" />
+<TGConnectingPoint num="29" id="2440" />
+<TGConnectingPoint num="30" id="2441" />
+<TGConnectingPoint num="31" id="2442" />
+<TGConnectingPoint num="32" id="2443" />
+<TGConnectingPoint num="33" id="2444" />
+<TGConnectingPoint num="34" id="2445" />
+<TGConnectingPoint num="35" id="2446" />
+<TGConnectingPoint num="36" id="2447" />
+<TGConnectingPoint num="37" id="2448" />
+<TGConnectingPoint num="38" id="2449" />
+<TGConnectingPoint num="39" id="2450" />
+<TGConnectingPoint num="40" id="2451" />
+<TGConnectingPoint num="41" id="2452" />
+<TGConnectingPoint num="42" id="2453" />
+<TGConnectingPoint num="43" id="2454" />
+<TGConnectingPoint num="44" id="2455" />
+<TGConnectingPoint num="45" id="2456" />
+<TGConnectingPoint num="46" id="2457" />
+<TGConnectingPoint num="47" id="2458" />
+<TGConnectingPoint num="48" id="2459" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="bytesToTransfer" value="" type="0" typeOther="" />
+<Attribute access="2" id="transferTrerminated" value="" type="4" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="ID" value="" type="0" typeOther="" />
+<Attribute access="2" id="transferTerminated" value="" type="4" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1524" id="2410" >
+<father id="2460" num="0" />
+<cdparam x="134" y="139" />
+<sizeparam width="179" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" />
+<infoparam name="action state" value="transferTerminated = false" />
+<TGConnectingPoint num="0" id="2402" />
+<TGConnectingPoint num="1" id="2403" />
+<TGConnectingPoint num="2" id="2404" />
+<TGConnectingPoint num="3" id="2405" />
+<TGConnectingPoint num="4" id="2406" />
+<TGConnectingPoint num="5" id="2407" />
+<TGConnectingPoint num="6" id="2408" />
+<TGConnectingPoint num="7" id="2409" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1523" id="2461" >
+<cdparam x="358" y="151" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferRequest" value="TransferRequest(bytesToTransfer, sourceAddress, destinationAddress, ID)" />
+<P1  x="605" y="123" id="2300" />
+<P2  x="1081" y="123" id="2359" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="bytesToTransfer" />
+<Param index="1" id="sourceAddress" />
+<Param index="2" id="destinationAddress" />
+<Param index="3" id="ID" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2462" >
+<cdparam x="139" y="121" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferRequest" value="TransferRequest(bytesToTransfer, sourceAddress, destinationAddress, ID)" />
+<P1  x="134" y="83" id="2414" />
+<P2  x="605" y="83" id="2296" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="bytesToTransfer" />
+<Param index="1" id="sourceAddress" />
+<Param index="2" id="destinationAddress" />
+<Param index="3" id="ID" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+<CommunicationPatternDiagramPanel name="TransferCycleAD" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1505" id="2473" >
+<cdparam x="313" y="391" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="EnableFlag" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="2463" />
+<TGConnectingPoint num="1" id="2464" />
+<TGConnectingPoint num="2" id="2465" />
+<TGConnectingPoint num="3" id="2466" />
+<TGConnectingPoint num="4" id="2467" />
+<TGConnectingPoint num="5" id="2468" />
+<TGConnectingPoint num="6" id="2469" />
+<TGConnectingPoint num="7" id="2470" />
+<TGConnectingPoint num="8" id="2471" />
+<TGConnectingPoint num="9" id="2472" />
+</COMPONENT>
+
+<COMPONENT type="1500" id="2489" >
+<cdparam x="360" y="259" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="choice6" value="null" />
+<TGConnectingPoint num="0" id="2477" />
+<TGConnectingPoint num="1" id="2478" />
+<TGConnectingPoint num="2" id="2479" />
+<TGConnectingPoint num="3" id="2480" />
+<TGConnectingPoint num="4" id="2481" />
+<TGConnectingPoint num="5" id="2482" />
+<TGConnectingPoint num="6" id="2483" />
+<TGConnectingPoint num="7" id="2484" />
+<TGConnectingPoint num="8" id="2485" />
+<TGConnectingPoint num="9" id="2486" />
+<TGConnectingPoint num="10" id="2487" />
+<TGConnectingPoint num="11" id="2488" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="2474" >
+<father id="2489" num="0" />
+<cdparam x="285" y="269" />
+<sizeparam width="93" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ counter &gt; 0 ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2475" >
+<father id="2489" num="1" />
+<cdparam x="395" y="269" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2476" >
+<father id="2489" num="2" />
+<cdparam x="380" y="304" />
+<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ else ]" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1507" id="2491" >
+<cdparam x="365" y="470" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="2490" />
+</COMPONENT>
+
+<!-- Issue #69 COMPONENT type="1508" id="2496" >
+<cdparam x="360" y="163" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="junction6" value="" />
+<TGConnectingPoint num="0" id="2492" />
+<TGConnectingPoint num="1" id="2493" />
+<TGConnectingPoint num="2" id="2494" />
+<TGConnectingPoint num="3" id="2495" />
+</COMPONENT-->
+
+<COMPONENT type="1505" id="2507" >
+<cdparam x="182" y="332" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TransferCycleSD" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="2497" />
+<TGConnectingPoint num="1" id="2498" />
+<TGConnectingPoint num="2" id="2499" />
+<TGConnectingPoint num="3" id="2500" />
+<TGConnectingPoint num="4" id="2501" />
+<TGConnectingPoint num="5" id="2502" />
+<TGConnectingPoint num="6" id="2503" />
+<TGConnectingPoint num="7" id="2504" />
+<TGConnectingPoint num="8" id="2505" />
+<TGConnectingPoint num="9" id="2506" />
+</COMPONENT>
+
+<COMPONENT type="1506" id="2509" >
+<cdparam x="368" y="95" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="2508" />
+</COMPONENT>
+
+<CONNECTOR type="1501" id="2510" >
+<cdparam x="375" y="431" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="375" y="431" id="2464" />
+<P2  x="375" y="465" id="2490" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2512" >
+<cdparam x="335" y="274" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="335" y="274" id="2478" />
+<P2  x="244" y="327" id="2497" />
+<Point x="244" y="274" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2511" >
+<father id="2512" num="0" />
+<cdparam x="244" y="274" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1501" id="2516" >
+<cdparam x="244" y="372" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="244" y="372" id="2498" />
+<P2  x="360" y="178" id="2493" />
+<Point x="244" y="425" />
+<Point x="136" y="425" />
+<Point x="136" y="178" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2513" >
+<father id="2516" num="0" />
+<cdparam x="244" y="425" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2514" >
+<father id="2516" num="1" />
+<cdparam x="136" y="425" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2515" >
+<father id="2516" num="2" />
+<cdparam x="136" y="178" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1501" id="2517" >
+<cdparam x="375" y="314" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="375" y="314" id="2480" />
+<P2  x="375" y="386" id="2463" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2518" >
+<cdparam x="375" y="193" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="375" y="193" id="2495" />
+<P2  x="375" y="249" id="2477" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2519" >
+<cdparam x="375" y="115" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="375" y="115" id="2508" />
+<P2  x="375" y="163" id="2492" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</CommunicationPatternDiagramPanel>
+
+<TMLSDPanel name="TransferCycleSD" minX="10" maxX="1102" minY="10" maxY="556" >
+<COMPONENT type="1520" id="2569" >
+<cdparam x="1029" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" />
+<infoparam name="DESTINATION_Storage" value="Storage instance name" />
+<TGConnectingPoint num="0" id="2520" />
+<TGConnectingPoint num="1" id="2521" />
+<TGConnectingPoint num="2" id="2522" />
+<TGConnectingPoint num="3" id="2523" />
+<TGConnectingPoint num="4" id="2524" />
+<TGConnectingPoint num="5" id="2525" />
+<TGConnectingPoint num="6" id="2526" />
+<TGConnectingPoint num="7" id="2527" />
+<TGConnectingPoint num="8" id="2528" />
+<TGConnectingPoint num="9" id="2529" />
+<TGConnectingPoint num="10" id="2530" />
+<TGConnectingPoint num="11" id="2531" />
+<TGConnectingPoint num="12" id="2532" />
+<TGConnectingPoint num="13" id="2533" />
+<TGConnectingPoint num="14" id="2534" />
+<TGConnectingPoint num="15" id="2535" />
+<TGConnectingPoint num="16" id="2536" />
+<TGConnectingPoint num="17" id="2537" />
+<TGConnectingPoint num="18" id="2538" />
+<TGConnectingPoint num="19" id="2539" />
+<TGConnectingPoint num="20" id="2540" />
+<TGConnectingPoint num="21" id="2541" />
+<TGConnectingPoint num="22" id="2542" />
+<TGConnectingPoint num="23" id="2543" />
+<TGConnectingPoint num="24" id="2544" />
+<TGConnectingPoint num="25" id="2545" />
+<TGConnectingPoint num="26" id="2546" />
+<TGConnectingPoint num="27" id="2547" />
+<TGConnectingPoint num="28" id="2548" />
+<TGConnectingPoint num="29" id="2549" />
+<TGConnectingPoint num="30" id="2550" />
+<TGConnectingPoint num="31" id="2551" />
+<TGConnectingPoint num="32" id="2552" />
+<TGConnectingPoint num="33" id="2553" />
+<TGConnectingPoint num="34" id="2554" />
+<TGConnectingPoint num="35" id="2555" />
+<TGConnectingPoint num="36" id="2556" />
+<TGConnectingPoint num="37" id="2557" />
+<TGConnectingPoint num="38" id="2558" />
+<TGConnectingPoint num="39" id="2559" />
+<TGConnectingPoint num="40" id="2560" />
+<TGConnectingPoint num="41" id="2561" />
+<TGConnectingPoint num="42" id="2562" />
+<TGConnectingPoint num="43" id="2563" />
+<TGConnectingPoint num="44" id="2564" />
+<TGConnectingPoint num="45" id="2565" />
+<TGConnectingPoint num="46" id="2566" />
+<TGConnectingPoint num="47" id="2567" />
+<TGConnectingPoint num="48" id="2568" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="2619" >
+<cdparam x="818" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" />
+<infoparam name="TransferInstance_3" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="2570" />
+<TGConnectingPoint num="1" id="2571" />
+<TGConnectingPoint num="2" id="2572" />
+<TGConnectingPoint num="3" id="2573" />
+<TGConnectingPoint num="4" id="2574" />
+<TGConnectingPoint num="5" id="2575" />
+<TGConnectingPoint num="6" id="2576" />
+<TGConnectingPoint num="7" id="2577" />
+<TGConnectingPoint num="8" id="2578" />
+<TGConnectingPoint num="9" id="2579" />
+<TGConnectingPoint num="10" id="2580" />
+<TGConnectingPoint num="11" id="2581" />
+<TGConnectingPoint num="12" id="2582" />
+<TGConnectingPoint num="13" id="2583" />
+<TGConnectingPoint num="14" id="2584" />
+<TGConnectingPoint num="15" id="2585" />
+<TGConnectingPoint num="16" id="2586" />
+<TGConnectingPoint num="17" id="2587" />
+<TGConnectingPoint num="18" id="2588" />
+<TGConnectingPoint num="19" id="2589" />
+<TGConnectingPoint num="20" id="2590" />
+<TGConnectingPoint num="21" id="2591" />
+<TGConnectingPoint num="22" id="2592" />
+<TGConnectingPoint num="23" id="2593" />
+<TGConnectingPoint num="24" id="2594" />
+<TGConnectingPoint num="25" id="2595" />
+<TGConnectingPoint num="26" id="2596" />
+<TGConnectingPoint num="27" id="2597" />
+<TGConnectingPoint num="28" id="2598" />
+<TGConnectingPoint num="29" id="2599" />
+<TGConnectingPoint num="30" id="2600" />
+<TGConnectingPoint num="31" id="2601" />
+<TGConnectingPoint num="32" id="2602" />
+<TGConnectingPoint num="33" id="2603" />
+<TGConnectingPoint num="34" id="2604" />
+<TGConnectingPoint num="35" id="2605" />
+<TGConnectingPoint num="36" id="2606" />
+<TGConnectingPoint num="37" id="2607" />
+<TGConnectingPoint num="38" id="2608" />
+<TGConnectingPoint num="39" id="2609" />
+<TGConnectingPoint num="40" id="2610" />
+<TGConnectingPoint num="41" id="2611" />
+<TGConnectingPoint num="42" id="2612" />
+<TGConnectingPoint num="43" id="2613" />
+<TGConnectingPoint num="44" id="2614" />
+<TGConnectingPoint num="45" id="2615" />
+<TGConnectingPoint num="46" id="2616" />
+<TGConnectingPoint num="47" id="2617" />
+<TGConnectingPoint num="48" id="2618" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="2669" >
+<cdparam x="392" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" />
+<infoparam name="TransferInstance_2" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="2620" />
+<TGConnectingPoint num="1" id="2621" />
+<TGConnectingPoint num="2" id="2622" />
+<TGConnectingPoint num="3" id="2623" />
+<TGConnectingPoint num="4" id="2624" />
+<TGConnectingPoint num="5" id="2625" />
+<TGConnectingPoint num="6" id="2626" />
+<TGConnectingPoint num="7" id="2627" />
+<TGConnectingPoint num="8" id="2628" />
+<TGConnectingPoint num="9" id="2629" />
+<TGConnectingPoint num="10" id="2630" />
+<TGConnectingPoint num="11" id="2631" />
+<TGConnectingPoint num="12" id="2632" />
+<TGConnectingPoint num="13" id="2633" />
+<TGConnectingPoint num="14" id="2634" />
+<TGConnectingPoint num="15" id="2635" />
+<TGConnectingPoint num="16" id="2636" />
+<TGConnectingPoint num="17" id="2637" />
+<TGConnectingPoint num="18" id="2638" />
+<TGConnectingPoint num="19" id="2639" />
+<TGConnectingPoint num="20" id="2640" />
+<TGConnectingPoint num="21" id="2641" />
+<TGConnectingPoint num="22" id="2642" />
+<TGConnectingPoint num="23" id="2643" />
+<TGConnectingPoint num="24" id="2644" />
+<TGConnectingPoint num="25" id="2645" />
+<TGConnectingPoint num="26" id="2646" />
+<TGConnectingPoint num="27" id="2647" />
+<TGConnectingPoint num="28" id="2648" />
+<TGConnectingPoint num="29" id="2649" />
+<TGConnectingPoint num="30" id="2650" />
+<TGConnectingPoint num="31" id="2651" />
+<TGConnectingPoint num="32" id="2652" />
+<TGConnectingPoint num="33" id="2653" />
+<TGConnectingPoint num="34" id="2654" />
+<TGConnectingPoint num="35" id="2655" />
+<TGConnectingPoint num="36" id="2656" />
+<TGConnectingPoint num="37" id="2657" />
+<TGConnectingPoint num="38" id="2658" />
+<TGConnectingPoint num="39" id="2659" />
+<TGConnectingPoint num="40" id="2660" />
+<TGConnectingPoint num="41" id="2661" />
+<TGConnectingPoint num="42" id="2662" />
+<TGConnectingPoint num="43" id="2663" />
+<TGConnectingPoint num="44" id="2664" />
+<TGConnectingPoint num="45" id="2665" />
+<TGConnectingPoint num="46" id="2666" />
+<TGConnectingPoint num="47" id="2667" />
+<TGConnectingPoint num="48" id="2668" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1520" id="2719" >
+<cdparam x="643" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" />
+<infoparam name="SOURCE_Storage" value="Storage instance name" />
+<TGConnectingPoint num="0" id="2670" />
+<TGConnectingPoint num="1" id="2671" />
+<TGConnectingPoint num="2" id="2672" />
+<TGConnectingPoint num="3" id="2673" />
+<TGConnectingPoint num="4" id="2674" />
+<TGConnectingPoint num="5" id="2675" />
+<TGConnectingPoint num="6" id="2676" />
+<TGConnectingPoint num="7" id="2677" />
+<TGConnectingPoint num="8" id="2678" />
+<TGConnectingPoint num="9" id="2679" />
+<TGConnectingPoint num="10" id="2680" />
+<TGConnectingPoint num="11" id="2681" />
+<TGConnectingPoint num="12" id="2682" />
+<TGConnectingPoint num="13" id="2683" />
+<TGConnectingPoint num="14" id="2684" />
+<TGConnectingPoint num="15" id="2685" />
+<TGConnectingPoint num="16" id="2686" />
+<TGConnectingPoint num="17" id="2687" />
+<TGConnectingPoint num="18" id="2688" />
+<TGConnectingPoint num="19" id="2689" />
+<TGConnectingPoint num="20" id="2690" />
+<TGConnectingPoint num="21" id="2691" />
+<TGConnectingPoint num="22" id="2692" />
+<TGConnectingPoint num="23" id="2693" />
+<TGConnectingPoint num="24" id="2694" />
+<TGConnectingPoint num="25" id="2695" />
+<TGConnectingPoint num="26" id="2696" />
+<TGConnectingPoint num="27" id="2697" />
+<TGConnectingPoint num="28" id="2698" />
+<TGConnectingPoint num="29" id="2699" />
+<TGConnectingPoint num="30" id="2700" />
+<TGConnectingPoint num="31" id="2701" />
+<TGConnectingPoint num="32" id="2702" />
+<TGConnectingPoint num="33" id="2703" />
+<TGConnectingPoint num="34" id="2704" />
+<TGConnectingPoint num="35" id="2705" />
+<TGConnectingPoint num="36" id="2706" />
+<TGConnectingPoint num="37" id="2707" />
+<TGConnectingPoint num="38" id="2708" />
+<TGConnectingPoint num="39" id="2709" />
+<TGConnectingPoint num="40" id="2710" />
+<TGConnectingPoint num="41" id="2711" />
+<TGConnectingPoint num="42" id="2712" />
+<TGConnectingPoint num="43" id="2713" />
+<TGConnectingPoint num="44" id="2714" />
+<TGConnectingPoint num="45" id="2715" />
+<TGConnectingPoint num="46" id="2716" />
+<TGConnectingPoint num="47" id="2717" />
+<TGConnectingPoint num="48" id="2718" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="2778" >
+<cdparam x="161" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" />
+<infoparam name="DMA_Controller" value="Controller instance name" />
+<TGConnectingPoint num="0" id="2729" />
+<TGConnectingPoint num="1" id="2730" />
+<TGConnectingPoint num="2" id="2731" />
+<TGConnectingPoint num="3" id="2732" />
+<TGConnectingPoint num="4" id="2733" />
+<TGConnectingPoint num="5" id="2734" />
+<TGConnectingPoint num="6" id="2735" />
+<TGConnectingPoint num="7" id="2736" />
+<TGConnectingPoint num="8" id="2737" />
+<TGConnectingPoint num="9" id="2738" />
+<TGConnectingPoint num="10" id="2739" />
+<TGConnectingPoint num="11" id="2740" />
+<TGConnectingPoint num="12" id="2741" />
+<TGConnectingPoint num="13" id="2742" />
+<TGConnectingPoint num="14" id="2743" />
+<TGConnectingPoint num="15" id="2744" />
+<TGConnectingPoint num="16" id="2745" />
+<TGConnectingPoint num="17" id="2746" />
+<TGConnectingPoint num="18" id="2747" />
+<TGConnectingPoint num="19" id="2748" />
+<TGConnectingPoint num="20" id="2749" />
+<TGConnectingPoint num="21" id="2750" />
+<TGConnectingPoint num="22" id="2751" />
+<TGConnectingPoint num="23" id="2752" />
+<TGConnectingPoint num="24" id="2753" />
+<TGConnectingPoint num="25" id="2754" />
+<TGConnectingPoint num="26" id="2755" />
+<TGConnectingPoint num="27" id="2756" />
+<TGConnectingPoint num="28" id="2757" />
+<TGConnectingPoint num="29" id="2758" />
+<TGConnectingPoint num="30" id="2759" />
+<TGConnectingPoint num="31" id="2760" />
+<TGConnectingPoint num="32" id="2761" />
+<TGConnectingPoint num="33" id="2762" />
+<TGConnectingPoint num="34" id="2763" />
+<TGConnectingPoint num="35" id="2764" />
+<TGConnectingPoint num="36" id="2765" />
+<TGConnectingPoint num="37" id="2766" />
+<TGConnectingPoint num="38" id="2767" />
+<TGConnectingPoint num="39" id="2768" />
+<TGConnectingPoint num="40" id="2769" />
+<TGConnectingPoint num="41" id="2770" />
+<TGConnectingPoint num="42" id="2771" />
+<TGConnectingPoint num="43" id="2772" />
+<TGConnectingPoint num="44" id="2773" />
+<TGConnectingPoint num="45" id="2774" />
+<TGConnectingPoint num="46" id="2775" />
+<TGConnectingPoint num="47" id="2776" />
+<TGConnectingPoint num="48" id="2777" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" />
+<Attribute access="2" id="ID" value="" type="0" typeOther="" />
+<Attribute access="2" id="transferCompleted" value="false" type="4" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1524" id="2728" >
+<father id="2778" num="0" />
+<cdparam x="166" y="252" />
+<sizeparam width="161" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" />
+<infoparam name="action state" value="counter = counter - size" />
+<TGConnectingPoint num="0" id="2720" />
+<TGConnectingPoint num="1" id="2721" />
+<TGConnectingPoint num="2" id="2722" />
+<TGConnectingPoint num="3" id="2723" />
+<TGConnectingPoint num="4" id="2724" />
+<TGConnectingPoint num="5" id="2725" />
+<TGConnectingPoint num="6" id="2726" />
+<TGConnectingPoint num="7" id="2727" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1523" id="2779" >
+<cdparam x="823" y="244" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress, size)" />
+<P1  x="823" y="266" id="2590" />
+<P2  x="1034" y="266" id="2540" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress" />
+<Param index="1" id="size" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2780" >
+<cdparam x="166" y="216" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress, size)" />
+<P1  x="166" y="236" id="2746" />
+<P2  x="823" y="236" id="2587" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress" />
+<Param index="1" id="size" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2781" >
+<cdparam x="397" y="186" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Transfer" value="Transfer(size)" />
+<P1  x="397" y="206" id="2634" />
+<P2  x="166" y="206" id="2743" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="size" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2782" >
+<cdparam x="648" y="155" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Transfer" value="Transfer(size)" />
+<P1  x="648" y="176" id="2681" />
+<P2  x="397" y="176" id="2631" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="size" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2783" >
+<cdparam x="397" y="126" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress, size)" />
+<P1  x="397" y="146" id="2628" />
+<P2  x="648" y="146" id="2678" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress" />
+<Param index="1" id="size" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="2784" >
+<cdparam x="183" y="95" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress, size)" />
+<P1  x="166" y="116" id="2734" />
+<P2  x="397" y="116" id="2625" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress" />
+<Param index="1" id="size" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+<TMLSDPanel name="EnableFlag" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1522" id="2843" >
+<cdparam x="354" y="61" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMA_controller" value="Controller instance name" />
+<TGConnectingPoint num="0" id="2794" />
+<TGConnectingPoint num="1" id="2795" />
+<TGConnectingPoint num="2" id="2796" />
+<TGConnectingPoint num="3" id="2797" />
+<TGConnectingPoint num="4" id="2798" />
+<TGConnectingPoint num="5" id="2799" />
+<TGConnectingPoint num="6" id="2800" />
+<TGConnectingPoint num="7" id="2801" />
+<TGConnectingPoint num="8" id="2802" />
+<TGConnectingPoint num="9" id="2803" />
+<TGConnectingPoint num="10" id="2804" />
+<TGConnectingPoint num="11" id="2805" />
+<TGConnectingPoint num="12" id="2806" />
+<TGConnectingPoint num="13" id="2807" />
+<TGConnectingPoint num="14" id="2808" />
+<TGConnectingPoint num="15" id="2809" />
+<TGConnectingPoint num="16" id="2810" />
+<TGConnectingPoint num="17" id="2811" />
+<TGConnectingPoint num="18" id="2812" />
+<TGConnectingPoint num="19" id="2813" />
+<TGConnectingPoint num="20" id="2814" />
+<TGConnectingPoint num="21" id="2815" />
+<TGConnectingPoint num="22" id="2816" />
+<TGConnectingPoint num="23" id="2817" />
+<TGConnectingPoint num="24" id="2818" />
+<TGConnectingPoint num="25" id="2819" />
+<TGConnectingPoint num="26" id="2820" />
+<TGConnectingPoint num="27" id="2821" />
+<TGConnectingPoint num="28" id="2822" />
+<TGConnectingPoint num="29" id="2823" />
+<TGConnectingPoint num="30" id="2824" />
+<TGConnectingPoint num="31" id="2825" />
+<TGConnectingPoint num="32" id="2826" />
+<TGConnectingPoint num="33" id="2827" />
+<TGConnectingPoint num="34" id="2828" />
+<TGConnectingPoint num="35" id="2829" />
+<TGConnectingPoint num="36" id="2830" />
+<TGConnectingPoint num="37" id="2831" />
+<TGConnectingPoint num="38" id="2832" />
+<TGConnectingPoint num="39" id="2833" />
+<TGConnectingPoint num="40" id="2834" />
+<TGConnectingPoint num="41" id="2835" />
+<TGConnectingPoint num="42" id="2836" />
+<TGConnectingPoint num="43" id="2837" />
+<TGConnectingPoint num="44" id="2838" />
+<TGConnectingPoint num="45" id="2839" />
+<TGConnectingPoint num="46" id="2840" />
+<TGConnectingPoint num="47" id="2841" />
+<TGConnectingPoint num="48" id="2842" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="transferCompleted" value="false" type="4" typeOther="" />
+<Attribute access="2" id="ID" value="" type="0" typeOther="" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1524" id="2793" >
+<father id="2843" num="0" />
+<cdparam x="359" y="94" />
+<sizeparam width="171" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" />
+<infoparam name="action state" value="transferCompleted = true" />
+<TGConnectingPoint num="0" id="2785" />
+<TGConnectingPoint num="1" id="2786" />
+<TGConnectingPoint num="2" id="2787" />
+<TGConnectingPoint num="3" id="2788" />
+<TGConnectingPoint num="4" id="2789" />
+<TGConnectingPoint num="5" id="2790" />
+<TGConnectingPoint num="6" id="2791" />
+<TGConnectingPoint num="7" id="2792" />
+</SUBCOMPONENT>
+
+
+</TMLSDPanel>
+
+<CommunicationPatternDiagramPanel name="PollingCycleAD" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1507" id="2845" >
+<cdparam x="284" y="342" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="2844" />
+</COMPONENT>
+
+<COMPONENT type="1500" id="2861" >
+<cdparam x="279" y="223" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="choice6" value="null" />
+<TGConnectingPoint num="0" id="2849" />
+<TGConnectingPoint num="1" id="2850" />
+<TGConnectingPoint num="2" id="2851" />
+<TGConnectingPoint num="3" id="2852" />
+<TGConnectingPoint num="4" id="2853" />
+<TGConnectingPoint num="5" id="2854" />
+<TGConnectingPoint num="6" id="2855" />
+<TGConnectingPoint num="7" id="2856" />
+<TGConnectingPoint num="8" id="2857" />
+<TGConnectingPoint num="9" id="2858" />
+<TGConnectingPoint num="10" id="2859" />
+<TGConnectingPoint num="11" id="2860" />
+</COMPONENT>
+<SUBCOMPONENT type="-1" id="2846" >
+<father id="2861" num="0" />
+<cdparam x="204" y="233" />
+<sizeparam width="197" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" />
+<infoparam name="guard 1" value="[ transferTerminated == false ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2847" >
+<father id="2861" num="1" />
+<cdparam x="314" y="233" />
+<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" />
+<infoparam name="guard 2" value="[ ]" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2848" >
+<father id="2861" num="2" />
+<cdparam x="299" y="268" />
+<sizeparam width="193" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" />
+<infoparam name="guard 3" value="[ transferTerminated == true ]" />
+</SUBCOMPONENT>
+
+<!-- Issue #69 COMPONENT type="1508" id="2866" >
+<cdparam x="279" y="127" />
+<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="junction6" value="" />
+<TGConnectingPoint num="0" id="2862" />
+<TGConnectingPoint num="1" id="2863" />
+<TGConnectingPoint num="2" id="2864" />
+<TGConnectingPoint num="3" id="2865" />
+</COMPONENT-->
+
+<COMPONENT type="1505" id="2877" >
+<cdparam x="101" y="296" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="PollingCycleSD" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="2867" />
+<TGConnectingPoint num="1" id="2868" />
+<TGConnectingPoint num="2" id="2869" />
+<TGConnectingPoint num="3" id="2870" />
+<TGConnectingPoint num="4" id="2871" />
+<TGConnectingPoint num="5" id="2872" />
+<TGConnectingPoint num="6" id="2873" />
+<TGConnectingPoint num="7" id="2874" />
+<TGConnectingPoint num="8" id="2875" />
+<TGConnectingPoint num="9" id="2876" />
+</COMPONENT>
+
+<COMPONENT type="1506" id="2879" >
+<cdparam x="287" y="59" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="2878" />
+</COMPONENT>
+
+<CONNECTOR type="1501" id="2880" >
+<cdparam x="294" y="278" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="294" y="278" id="2852" />
+<P2  x="294" y="337" id="2844" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2884" >
+<cdparam x="163" y="336" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="163" y="336" id="2868" />
+<P2  x="279" y="142" id="2863" />
+<Point x="163" y="389" />
+<Point x="55" y="389" />
+<Point x="55" y="142" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2881" >
+<father id="2884" num="0" />
+<cdparam x="163" y="389" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2882" >
+<father id="2884" num="1" />
+<cdparam x="55" y="389" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+<SUBCOMPONENT type="-1" id="2883" >
+<father id="2884" num="2" />
+<cdparam x="55" y="142" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1501" id="2886" >
+<cdparam x="254" y="238" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="254" y="238" id="2850" />
+<P2  x="163" y="291" id="2867" />
+<Point x="163" y="238" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="2885" >
+<father id="2886" num="0" />
+<cdparam x="163" y="238" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1501" id="2887" >
+<cdparam x="294" y="157" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="294" y="157" id="2865" />
+<P2  x="294" y="213" id="2849" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="2888" >
+<cdparam x="294" y="79" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="294" y="79" id="2878" />
+<P2  x="294" y="127" id="2862" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</CommunicationPatternDiagramPanel>
+
+<TMLSDPanel name="PollingCycleSD" minX="10" maxX="720" minY="10" maxY="563" >
+<COMPONENT type="1521" id="2938" >
+<cdparam x="414" y="63" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="720" minY="10" maxY="563" />
+<infoparam name="TransferInstance_4" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="2889" />
+<TGConnectingPoint num="1" id="2890" />
+<TGConnectingPoint num="2" id="2891" />
+<TGConnectingPoint num="3" id="2892" />
+<TGConnectingPoint num="4" id="2893" />
+<TGConnectingPoint num="5" id="2894" />
+<TGConnectingPoint num="6" id="2895" />
+<TGConnectingPoint num="7" id="2896" />
+<TGConnectingPoint num="8" id="2897" />
+<TGConnectingPoint num="9" id="2898" />
+<TGConnectingPoint num="10" id="2899" />
+<TGConnectingPoint num="11" id="2900" />
+<TGConnectingPoint num="12" id="2901" />
+<TGConnectingPoint num="13" id="2902" />
+<TGConnectingPoint num="14" id="2903" />
+<TGConnectingPoint num="15" id="2904" />
+<TGConnectingPoint num="16" id="2905" />
+<TGConnectingPoint num="17" id="2906" />
+<TGConnectingPoint num="18" id="2907" />
+<TGConnectingPoint num="19" id="2908" />
+<TGConnectingPoint num="20" id="2909" />
+<TGConnectingPoint num="21" id="2910" />
+<TGConnectingPoint num="22" id="2911" />
+<TGConnectingPoint num="23" id="2912" />
+<TGConnectingPoint num="24" id="2913" />
+<TGConnectingPoint num="25" id="2914" />
+<TGConnectingPoint num="26" id="2915" />
+<TGConnectingPoint num="27" id="2916" />
+<TGConnectingPoint num="28" id="2917" />
+<TGConnectingPoint num="29" id="2918" />
+<TGConnectingPoint num="30" id="2919" />
+<TGConnectingPoint num="31" id="2920" />
+<TGConnectingPoint num="32" id="2921" />
+<TGConnectingPoint num="33" id="2922" />
+<TGConnectingPoint num="34" id="2923" />
+<TGConnectingPoint num="35" id="2924" />
+<TGConnectingPoint num="36" id="2925" />
+<TGConnectingPoint num="37" id="2926" />
+<TGConnectingPoint num="38" id="2927" />
+<TGConnectingPoint num="39" id="2928" />
+<TGConnectingPoint num="40" id="2929" />
+<TGConnectingPoint num="41" id="2930" />
+<TGConnectingPoint num="42" id="2931" />
+<TGConnectingPoint num="43" id="2932" />
+<TGConnectingPoint num="44" id="2933" />
+<TGConnectingPoint num="45" id="2934" />
+<TGConnectingPoint num="46" id="2935" />
+<TGConnectingPoint num="47" id="2936" />
+<TGConnectingPoint num="48" id="2937" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="ID" value="" type="0" typeOther="" />
+<Attribute access="2" id="transferTerminated" value="" type="4" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="2988" >
+<cdparam x="668" y="63" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="720" minY="10" maxY="563" />
+<infoparam name="DMA_Controller" value="Controller instance name" />
+<TGConnectingPoint num="0" id="2939" />
+<TGConnectingPoint num="1" id="2940" />
+<TGConnectingPoint num="2" id="2941" />
+<TGConnectingPoint num="3" id="2942" />
+<TGConnectingPoint num="4" id="2943" />
+<TGConnectingPoint num="5" id="2944" />
+<TGConnectingPoint num="6" id="2945" />
+<TGConnectingPoint num="7" id="2946" />
+<TGConnectingPoint num="8" id="2947" />
+<TGConnectingPoint num="9" id="2948" />
+<TGConnectingPoint num="10" id="2949" />
+<TGConnectingPoint num="11" id="2950" />
+<TGConnectingPoint num="12" id="2951" />
+<TGConnectingPoint num="13" id="2952" />
+<TGConnectingPoint num="14" id="2953" />
+<TGConnectingPoint num="15" id="2954" />
+<TGConnectingPoint num="16" id="2955" />
+<TGConnectingPoint num="17" id="2956" />
+<TGConnectingPoint num="18" id="2957" />
+<TGConnectingPoint num="19" id="2958" />
+<TGConnectingPoint num="20" id="2959" />
+<TGConnectingPoint num="21" id="2960" />
+<TGConnectingPoint num="22" id="2961" />
+<TGConnectingPoint num="23" id="2962" />
+<TGConnectingPoint num="24" id="2963" />
+<TGConnectingPoint num="25" id="2964" />
+<TGConnectingPoint num="26" id="2965" />
+<TGConnectingPoint num="27" id="2966" />
+<TGConnectingPoint num="28" id="2967" />
+<TGConnectingPoint num="29" id="2968" />
+<TGConnectingPoint num="30" id="2969" />
+<TGConnectingPoint num="31" id="2970" />
+<TGConnectingPoint num="32" id="2971" />
+<TGConnectingPoint num="33" id="2972" />
+<TGConnectingPoint num="34" id="2973" />
+<TGConnectingPoint num="35" id="2974" />
+<TGConnectingPoint num="36" id="2975" />
+<TGConnectingPoint num="37" id="2976" />
+<TGConnectingPoint num="38" id="2977" />
+<TGConnectingPoint num="39" id="2978" />
+<TGConnectingPoint num="40" id="2979" />
+<TGConnectingPoint num="41" id="2980" />
+<TGConnectingPoint num="42" id="2981" />
+<TGConnectingPoint num="43" id="2982" />
+<TGConnectingPoint num="44" id="2983" />
+<TGConnectingPoint num="45" id="2984" />
+<TGConnectingPoint num="46" id="2985" />
+<TGConnectingPoint num="47" id="2986" />
+<TGConnectingPoint num="48" id="2987" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="counter" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="ID" value="" type="0" typeOther="" />
+<Attribute access="2" id="size" value="" type="0" typeOther="" />
+<Attribute access="2" id="transferTerminated" value="false" type="4" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="3047" >
+<cdparam x="153" y="63" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="720" minY="10" maxY="563" />
+<infoparam name="CPU_Controller" value="Controller instance name" />
+<TGConnectingPoint num="0" id="2998" />
+<TGConnectingPoint num="1" id="2999" />
+<TGConnectingPoint num="2" id="3000" />
+<TGConnectingPoint num="3" id="3001" />
+<TGConnectingPoint num="4" id="3002" />
+<TGConnectingPoint num="5" id="3003" />
+<TGConnectingPoint num="6" id="3004" />
+<TGConnectingPoint num="7" id="3005" />
+<TGConnectingPoint num="8" id="3006" />
+<TGConnectingPoint num="9" id="3007" />
+<TGConnectingPoint num="10" id="3008" />
+<TGConnectingPoint num="11" id="3009" />
+<TGConnectingPoint num="12" id="3010" />
+<TGConnectingPoint num="13" id="3011" />
+<TGConnectingPoint num="14" id="3012" />
+<TGConnectingPoint num="15" id="3013" />
+<TGConnectingPoint num="16" id="3014" />
+<TGConnectingPoint num="17" id="3015" />
+<TGConnectingPoint num="18" id="3016" />
+<TGConnectingPoint num="19" id="3017" />
+<TGConnectingPoint num="20" id="3018" />
+<TGConnectingPoint num="21" id="3019" />
+<TGConnectingPoint num="22" id="3020" />
+<TGConnectingPoint num="23" id="3021" />
+<TGConnectingPoint num="24" id="3022" />
+<TGConnectingPoint num="25" id="3023" />
+<TGConnectingPoint num="26" id="3024" />
+<TGConnectingPoint num="27" id="3025" />
+<TGConnectingPoint num="28" id="3026" />
+<TGConnectingPoint num="29" id="3027" />
+<TGConnectingPoint num="30" id="3028" />
+<TGConnectingPoint num="31" id="3029" />
+<TGConnectingPoint num="32" id="3030" />
+<TGConnectingPoint num="33" id="3031" />
+<TGConnectingPoint num="34" id="3032" />
+<TGConnectingPoint num="35" id="3033" />
+<TGConnectingPoint num="36" id="3034" />
+<TGConnectingPoint num="37" id="3035" />
+<TGConnectingPoint num="38" id="3036" />
+<TGConnectingPoint num="39" id="3037" />
+<TGConnectingPoint num="40" id="3038" />
+<TGConnectingPoint num="41" id="3039" />
+<TGConnectingPoint num="42" id="3040" />
+<TGConnectingPoint num="43" id="3041" />
+<TGConnectingPoint num="44" id="3042" />
+<TGConnectingPoint num="45" id="3043" />
+<TGConnectingPoint num="46" id="3044" />
+<TGConnectingPoint num="47" id="3045" />
+<TGConnectingPoint num="48" id="3046" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="bytesToTransfer" value="" type="0" typeOther="" />
+<Attribute access="2" id="transferTerminated" value="" type="4" typeOther="" />
+<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" />
+<Attribute access="2" id="ID" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1524" id="2997" >
+<father id="3047" num="0" />
+<cdparam x="158" y="79" />
+<sizeparam width="122" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" />
+<infoparam name="action state" value="wait(waiting_time)" />
+<TGConnectingPoint num="0" id="2989" />
+<TGConnectingPoint num="1" id="2990" />
+<TGConnectingPoint num="2" id="2991" />
+<TGConnectingPoint num="3" id="2992" />
+<TGConnectingPoint num="4" id="2993" />
+<TGConnectingPoint num="5" id="2994" />
+<TGConnectingPoint num="6" id="2995" />
+<TGConnectingPoint num="7" id="2996" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1523" id="3048" >
+<cdparam x="419" y="223" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Polling" value="Polling(ID, transferTerminated)" />
+<P1  x="419" y="223" id="2904" />
+<P2  x="158" y="223" id="3013" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="ID" />
+<Param index="1" id="transferTerminated" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="3049" >
+<cdparam x="644" y="183" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Polling" value="Polling(ID, transferTerminated)" />
+<P1  x="673" y="183" id="2950" />
+<P2  x="419" y="183" id="2900" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="ID" />
+<Param index="1" id="transferTerminated" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="3050" >
+<cdparam x="419" y="173" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="PollingRequest" value="PollingRequest(ID, transferTerminated)" />
+<P1  x="419" y="143" id="2896" />
+<P2  x="673" y="143" id="2946" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="ID" />
+<Param index="1" id="transferTerminated" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="3051" >
+<cdparam x="200" y="143" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="PollingRequest" value="PollingRequest(ID, transferTerminated)" />
+<P1  x="158" y="123" id="3003" />
+<P2  x="419" y="123" id="2894" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="ID" />
+<Param index="1" id="transferTerminated" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML CP" nameTab="Double_DMA_transfer" >
+<CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1507" id="3053" >
+<cdparam x="234" y="316" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="3052" />
+</COMPONENT>
+
+<COMPONENT type="1506" id="3055" >
+<cdparam x="237" y="80" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="3054" />
+</COMPONENT>
+
+<COMPONENT type="301" id="3072" >
+<cdparam x="448" y="98" />
+<sizeparam width="396" height="75" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="Some parameters are mapping dependent:
+- counter1 and counter2 (depend on the application model)
+- the source and destination addresses
+
+This model supposes that the DMA replies via
+INTERRUPTS
+" />
+<TGConnectingPoint num="0" id="3056" />
+<TGConnectingPoint num="1" id="3057" />
+<TGConnectingPoint num="2" id="3058" />
+<TGConnectingPoint num="3" id="3059" />
+<TGConnectingPoint num="4" id="3060" />
+<TGConnectingPoint num="5" id="3061" />
+<TGConnectingPoint num="6" id="3062" />
+<TGConnectingPoint num="7" id="3063" />
+<TGConnectingPoint num="8" id="3064" />
+<TGConnectingPoint num="9" id="3065" />
+<TGConnectingPoint num="10" id="3066" />
+<TGConnectingPoint num="11" id="3067" />
+<TGConnectingPoint num="12" id="3068" />
+<TGConnectingPoint num="13" id="3069" />
+<TGConnectingPoint num="14" id="3070" />
+<TGConnectingPoint num="15" id="3071" />
+<extraparam>
+<Line value="Some parameters are mapping dependent:" />
+<Line value="- counter1 and counter2 (depend on the application model)" />
+<Line value="- the source and destination addresses" />
+<Line value="" />
+<Line value="This model supposes that the DMA replies via" />
+<Line value="INTERRUPTS" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1504" id="3083" >
+<cdparam x="183" y="230" />
+<sizeparam width="123" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMATransfer2" value="Reference to a CP" />
+<TGConnectingPoint num="0" id="3073" />
+<TGConnectingPoint num="1" id="3074" />
+<TGConnectingPoint num="2" id="3075" />
+<TGConnectingPoint num="3" id="3076" />
+<TGConnectingPoint num="4" id="3077" />
+<TGConnectingPoint num="5" id="3078" />
+<TGConnectingPoint num="6" id="3079" />
+<TGConnectingPoint num="7" id="3080" />
+<TGConnectingPoint num="8" id="3081" />
+<TGConnectingPoint num="9" id="3082" />
+</COMPONENT>
+
+<COMPONENT type="1504" id="3094" >
+<cdparam x="183" y="139" />
+<sizeparam width="123" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMATransfer1" value="Reference to a CP" />
+<TGConnectingPoint num="0" id="3084" />
+<TGConnectingPoint num="1" id="3085" />
+<TGConnectingPoint num="2" id="3086" />
+<TGConnectingPoint num="3" id="3087" />
+<TGConnectingPoint num="4" id="3088" />
+<TGConnectingPoint num="5" id="3089" />
+<TGConnectingPoint num="6" id="3090" />
+<TGConnectingPoint num="7" id="3091" />
+<TGConnectingPoint num="8" id="3092" />
+<TGConnectingPoint num="9" id="3093" />
+</COMPONENT>
+
+<CONNECTOR type="1501" id="3095" >
+<cdparam x="246" y="268" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="244" y="270" id="3074" />
+<P2  x="244" y="311" id="3052" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3096" >
+<cdparam x="244" y="179" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="244" y="179" id="3085" />
+<P2  x="244" y="225" id="3073" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3097" >
+<cdparam x="242" y="116" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="244" y="100" id="3054" />
+<P2  x="244" y="134" id="3084" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</CommunicationPatternDiagramPanel>
+
+<CommunicationPatternDiagramPanel name="DMATransfer1" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1507" id="3099" >
+<cdparam x="437" y="337" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="3098" />
+</COMPONENT>
+
+<COMPONENT type="1510" id="3103" >
+<cdparam x="184" y="193" />
+<sizeparam width="164" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="for loop" value="for(i=counter1;i&gt;0;i=i-1)" />
+<TGConnectingPoint num="0" id="3100" />
+<TGConnectingPoint num="1" id="3101" />
+<TGConnectingPoint num="2" id="3102" />
+<extraparam>
+<Data init="i=counter1" condition="i&gt;0" increment="i=i-1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1507" id="3105" >
+<cdparam x="256" y="350" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="3104" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="3116" >
+<cdparam x="385" y="250" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMACycle_SD1" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="3106" />
+<TGConnectingPoint num="1" id="3107" />
+<TGConnectingPoint num="2" id="3108" />
+<TGConnectingPoint num="3" id="3109" />
+<TGConnectingPoint num="4" id="3110" />
+<TGConnectingPoint num="5" id="3111" />
+<TGConnectingPoint num="6" id="3112" />
+<TGConnectingPoint num="7" id="3113" />
+<TGConnectingPoint num="8" id="3114" />
+<TGConnectingPoint num="9" id="3115" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="3127" >
+<cdparam x="204" y="275" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TerminateDMA_SD1" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="3117" />
+<TGConnectingPoint num="1" id="3118" />
+<TGConnectingPoint num="2" id="3119" />
+<TGConnectingPoint num="3" id="3120" />
+<TGConnectingPoint num="4" id="3121" />
+<TGConnectingPoint num="5" id="3122" />
+<TGConnectingPoint num="6" id="3123" />
+<TGConnectingPoint num="7" id="3124" />
+<TGConnectingPoint num="8" id="3125" />
+<TGConnectingPoint num="9" id="3126" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="3138" >
+<cdparam x="203" y="99" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="ConfigureDMA_SD1" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="3128" />
+<TGConnectingPoint num="1" id="3129" />
+<TGConnectingPoint num="2" id="3130" />
+<TGConnectingPoint num="3" id="3131" />
+<TGConnectingPoint num="4" id="3132" />
+<TGConnectingPoint num="5" id="3133" />
+<TGConnectingPoint num="6" id="3134" />
+<TGConnectingPoint num="7" id="3135" />
+<TGConnectingPoint num="8" id="3136" />
+<TGConnectingPoint num="9" id="3137" />
+</COMPONENT>
+
+<COMPONENT type="1506" id="3140" >
+<cdparam x="258" y="35" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="3139" />
+</COMPONENT>
+
+<CONNECTOR type="1501" id="3142" >
+<cdparam x="331" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="348" y="207" id="3101" />
+<P2  x="447" y="245" id="3106" />
+<Point x="447" y="207" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3141" >
+<father id="3142" num="0" />
+<cdparam x="447" y="207" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1501" id="3143" >
+<cdparam x="99" y="298" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="266" y="218" id="3102" />
+<P2  x="266" y="270" id="3117" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3144" >
+<cdparam x="77" y="391" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="447" y="290" id="3107" />
+<P2  x="447" y="332" id="3098" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3145" >
+<cdparam x="266" y="315" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="266" y="315" id="3118" />
+<P2  x="266" y="345" id="3104" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3146" >
+<cdparam x="265" y="139" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="265" y="139" id="3129" />
+<P2  x="266" y="188" id="3100" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3147" >
+<cdparam x="263" y="31" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="265" y="55" id="3139" />
+<P2  x="265" y="94" id="3128" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</CommunicationPatternDiagramPanel>
+
+<CommunicationPatternDiagramPanel name="DMATransfer2" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1507" id="3149" >
+<cdparam x="416" y="344" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="3148" />
+</COMPONENT>
+
+<COMPONENT type="1510" id="3153" >
+<cdparam x="154" y="195" />
+<sizeparam width="172" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="for loop" value="for(i=counter2;i&gt;0;i = i-1)" />
+<TGConnectingPoint num="0" id="3150" />
+<TGConnectingPoint num="1" id="3151" />
+<TGConnectingPoint num="2" id="3152" />
+<extraparam>
+<Data init="i=counter2" condition="i&gt;0" increment="i = i-1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1507" id="3155" >
+<cdparam x="230" y="371" />
+<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="stop state" value="null" />
+<TGConnectingPoint num="0" id="3154" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="3166" >
+<cdparam x="364" y="256" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMACycle_SD2" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="3156" />
+<TGConnectingPoint num="1" id="3157" />
+<TGConnectingPoint num="2" id="3158" />
+<TGConnectingPoint num="3" id="3159" />
+<TGConnectingPoint num="4" id="3160" />
+<TGConnectingPoint num="5" id="3161" />
+<TGConnectingPoint num="6" id="3162" />
+<TGConnectingPoint num="7" id="3163" />
+<TGConnectingPoint num="8" id="3164" />
+<TGConnectingPoint num="9" id="3165" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="3177" >
+<cdparam x="178" y="296" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="TerminateDMA_SD2" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="3167" />
+<TGConnectingPoint num="1" id="3168" />
+<TGConnectingPoint num="2" id="3169" />
+<TGConnectingPoint num="3" id="3170" />
+<TGConnectingPoint num="4" id="3171" />
+<TGConnectingPoint num="5" id="3172" />
+<TGConnectingPoint num="6" id="3173" />
+<TGConnectingPoint num="7" id="3174" />
+<TGConnectingPoint num="8" id="3175" />
+<TGConnectingPoint num="9" id="3176" />
+</COMPONENT>
+
+<COMPONENT type="1505" id="3188" >
+<cdparam x="178" y="103" />
+<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="ConfigureDMA_SD2" value="Reference to a SD" />
+<TGConnectingPoint num="0" id="3178" />
+<TGConnectingPoint num="1" id="3179" />
+<TGConnectingPoint num="2" id="3180" />
+<TGConnectingPoint num="3" id="3181" />
+<TGConnectingPoint num="4" id="3182" />
+<TGConnectingPoint num="5" id="3183" />
+<TGConnectingPoint num="6" id="3184" />
+<TGConnectingPoint num="7" id="3185" />
+<TGConnectingPoint num="8" id="3186" />
+<TGConnectingPoint num="9" id="3187" />
+</COMPONENT>
+
+<COMPONENT type="1506" id="3190" >
+<cdparam x="233" y="39" />
+<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="start state" value="null" />
+<TGConnectingPoint num="0" id="3189" />
+</COMPONENT>
+
+<CONNECTOR type="1501" id="3192" >
+<cdparam x="322" y="209" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="326" y="209" id="3151" />
+<P2  x="426" y="251" id="3156" />
+<Point x="426" y="209" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR><SUBCOMPONENT type="-1" id="3191" >
+<father id="3192" num="0" />
+<cdparam x="426" y="209" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="point " value="null" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1501" id="3193" >
+<cdparam x="12" y="432" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="426" y="296" id="3157" />
+<P2  x="426" y="339" id="3148" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3194" >
+<cdparam x="58" y="331" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="240" y="220" id="3152" />
+<P2  x="240" y="291" id="3167" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3195" >
+<cdparam x="240" y="336" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="240" y="336" id="3168" />
+<P2  x="240" y="366" id="3154" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3196" >
+<cdparam x="240" y="143" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="240" y="143" id="3179" />
+<P2  x="240" y="190" id="3150" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+<CONNECTOR type="1501" id="3197" >
+<cdparam x="238" y="35" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="null" />
+<P1  x="240" y="59" id="3189" />
+<P2  x="240" y="98" id="3178" />
+<AutomaticDrawing  data="true" />
+</CONNECTOR>
+
+</CommunicationPatternDiagramPanel>
+
+<TMLSDPanel name="ConfigureDMA_SD1" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1521" id="3247" >
+<cdparam x="386" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_1" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="3198" />
+<TGConnectingPoint num="1" id="3199" />
+<TGConnectingPoint num="2" id="3200" />
+<TGConnectingPoint num="3" id="3201" />
+<TGConnectingPoint num="4" id="3202" />
+<TGConnectingPoint num="5" id="3203" />
+<TGConnectingPoint num="6" id="3204" />
+<TGConnectingPoint num="7" id="3205" />
+<TGConnectingPoint num="8" id="3206" />
+<TGConnectingPoint num="9" id="3207" />
+<TGConnectingPoint num="10" id="3208" />
+<TGConnectingPoint num="11" id="3209" />
+<TGConnectingPoint num="12" id="3210" />
+<TGConnectingPoint num="13" id="3211" />
+<TGConnectingPoint num="14" id="3212" />
+<TGConnectingPoint num="15" id="3213" />
+<TGConnectingPoint num="16" id="3214" />
+<TGConnectingPoint num="17" id="3215" />
+<TGConnectingPoint num="18" id="3216" />
+<TGConnectingPoint num="19" id="3217" />
+<TGConnectingPoint num="20" id="3218" />
+<TGConnectingPoint num="21" id="3219" />
+<TGConnectingPoint num="22" id="3220" />
+<TGConnectingPoint num="23" id="3221" />
+<TGConnectingPoint num="24" id="3222" />
+<TGConnectingPoint num="25" id="3223" />
+<TGConnectingPoint num="26" id="3224" />
+<TGConnectingPoint num="27" id="3225" />
+<TGConnectingPoint num="28" id="3226" />
+<TGConnectingPoint num="29" id="3227" />
+<TGConnectingPoint num="30" id="3228" />
+<TGConnectingPoint num="31" id="3229" />
+<TGConnectingPoint num="32" id="3230" />
+<TGConnectingPoint num="33" id="3231" />
+<TGConnectingPoint num="34" id="3232" />
+<TGConnectingPoint num="35" id="3233" />
+<TGConnectingPoint num="36" id="3234" />
+<TGConnectingPoint num="37" id="3235" />
+<TGConnectingPoint num="38" id="3236" />
+<TGConnectingPoint num="39" id="3237" />
+<TGConnectingPoint num="40" id="3238" />
+<TGConnectingPoint num="41" id="3239" />
+<TGConnectingPoint num="42" id="3240" />
+<TGConnectingPoint num="43" id="3241" />
+<TGConnectingPoint num="44" id="3242" />
+<TGConnectingPoint num="45" id="3243" />
+<TGConnectingPoint num="46" id="3244" />
+<TGConnectingPoint num="47" id="3245" />
+<TGConnectingPoint num="48" id="3246" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="3306" >
+<cdparam x="611" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMA_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="3257" />
+<TGConnectingPoint num="1" id="3258" />
+<TGConnectingPoint num="2" id="3259" />
+<TGConnectingPoint num="3" id="3260" />
+<TGConnectingPoint num="4" id="3261" />
+<TGConnectingPoint num="5" id="3262" />
+<TGConnectingPoint num="6" id="3263" />
+<TGConnectingPoint num="7" id="3264" />
+<TGConnectingPoint num="8" id="3265" />
+<TGConnectingPoint num="9" id="3266" />
+<TGConnectingPoint num="10" id="3267" />
+<TGConnectingPoint num="11" id="3268" />
+<TGConnectingPoint num="12" id="3269" />
+<TGConnectingPoint num="13" id="3270" />
+<TGConnectingPoint num="14" id="3271" />
+<TGConnectingPoint num="15" id="3272" />
+<TGConnectingPoint num="16" id="3273" />
+<TGConnectingPoint num="17" id="3274" />
+<TGConnectingPoint num="18" id="3275" />
+<TGConnectingPoint num="19" id="3276" />
+<TGConnectingPoint num="20" id="3277" />
+<TGConnectingPoint num="21" id="3278" />
+<TGConnectingPoint num="22" id="3279" />
+<TGConnectingPoint num="23" id="3280" />
+<TGConnectingPoint num="24" id="3281" />
+<TGConnectingPoint num="25" id="3282" />
+<TGConnectingPoint num="26" id="3283" />
+<TGConnectingPoint num="27" id="3284" />
+<TGConnectingPoint num="28" id="3285" />
+<TGConnectingPoint num="29" id="3286" />
+<TGConnectingPoint num="30" id="3287" />
+<TGConnectingPoint num="31" id="3288" />
+<TGConnectingPoint num="32" id="3289" />
+<TGConnectingPoint num="33" id="3290" />
+<TGConnectingPoint num="34" id="3291" />
+<TGConnectingPoint num="35" id="3292" />
+<TGConnectingPoint num="36" id="3293" />
+<TGConnectingPoint num="37" id="3294" />
+<TGConnectingPoint num="38" id="3295" />
+<TGConnectingPoint num="39" id="3296" />
+<TGConnectingPoint num="40" id="3297" />
+<TGConnectingPoint num="41" id="3298" />
+<TGConnectingPoint num="42" id="3299" />
+<TGConnectingPoint num="43" id="3300" />
+<TGConnectingPoint num="44" id="3301" />
+<TGConnectingPoint num="45" id="3302" />
+<TGConnectingPoint num="46" id="3303" />
+<TGConnectingPoint num="47" id="3304" />
+<TGConnectingPoint num="48" id="3305" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1524" id="3256" >
+<father id="3306" num="0" />
+<cdparam x="616" y="151" />
+<sizeparam width="194" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" />
+<infoparam name="action state" value="counter1 = bytesToTransfer1" />
+<TGConnectingPoint num="0" id="3248" />
+<TGConnectingPoint num="1" id="3249" />
+<TGConnectingPoint num="2" id="3250" />
+<TGConnectingPoint num="3" id="3251" />
+<TGConnectingPoint num="4" id="3252" />
+<TGConnectingPoint num="5" id="3253" />
+<TGConnectingPoint num="6" id="3254" />
+<TGConnectingPoint num="7" id="3255" />
+</SUBCOMPONENT>
+
+<COMPONENT type="1522" id="3356" >
+<cdparam x="167" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="3307" />
+<TGConnectingPoint num="1" id="3308" />
+<TGConnectingPoint num="2" id="3309" />
+<TGConnectingPoint num="3" id="3310" />
+<TGConnectingPoint num="4" id="3311" />
+<TGConnectingPoint num="5" id="3312" />
+<TGConnectingPoint num="6" id="3313" />
+<TGConnectingPoint num="7" id="3314" />
+<TGConnectingPoint num="8" id="3315" />
+<TGConnectingPoint num="9" id="3316" />
+<TGConnectingPoint num="10" id="3317" />
+<TGConnectingPoint num="11" id="3318" />
+<TGConnectingPoint num="12" id="3319" />
+<TGConnectingPoint num="13" id="3320" />
+<TGConnectingPoint num="14" id="3321" />
+<TGConnectingPoint num="15" id="3322" />
+<TGConnectingPoint num="16" id="3323" />
+<TGConnectingPoint num="17" id="3324" />
+<TGConnectingPoint num="18" id="3325" />
+<TGConnectingPoint num="19" id="3326" />
+<TGConnectingPoint num="20" id="3327" />
+<TGConnectingPoint num="21" id="3328" />
+<TGConnectingPoint num="22" id="3329" />
+<TGConnectingPoint num="23" id="3330" />
+<TGConnectingPoint num="24" id="3331" />
+<TGConnectingPoint num="25" id="3332" />
+<TGConnectingPoint num="26" id="3333" />
+<TGConnectingPoint num="27" id="3334" />
+<TGConnectingPoint num="28" id="3335" />
+<TGConnectingPoint num="29" id="3336" />
+<TGConnectingPoint num="30" id="3337" />
+<TGConnectingPoint num="31" id="3338" />
+<TGConnectingPoint num="32" id="3339" />
+<TGConnectingPoint num="33" id="3340" />
+<TGConnectingPoint num="34" id="3341" />
+<TGConnectingPoint num="35" id="3342" />
+<TGConnectingPoint num="36" id="3343" />
+<TGConnectingPoint num="37" id="3344" />
+<TGConnectingPoint num="38" id="3345" />
+<TGConnectingPoint num="39" id="3346" />
+<TGConnectingPoint num="40" id="3347" />
+<TGConnectingPoint num="41" id="3348" />
+<TGConnectingPoint num="42" id="3349" />
+<TGConnectingPoint num="43" id="3350" />
+<TGConnectingPoint num="44" id="3351" />
+<TGConnectingPoint num="45" id="3352" />
+<TGConnectingPoint num="46" id="3353" />
+<TGConnectingPoint num="47" id="3354" />
+<TGConnectingPoint num="48" id="3355" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="1523" id="3357" >
+<cdparam x="391" y="166" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferRequest" value="TransferRequest(counter1, sourceAddress1, destinationAddress1)" />
+<P1  x="391" y="126" id="3204" />
+<P2  x="616" y="126" id="3263" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="counter1" />
+<Param index="1" id="sourceAddress1" />
+<Param index="2" id="destinationAddress1" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="3358" >
+<cdparam x="172" y="136" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferRequest" value="TransferRequest(counter1, sourceAddress1, destinationAddress1)" />
+<P1  x="172" y="96" id="3310" />
+<P2  x="391" y="96" id="3201" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="counter1" />
+<Param index="1" id="sourceAddress1" />
+<Param index="2" id="destinationAddress1" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+<TMLSDPanel name="DMACycle_SD1" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1520" id="3408" >
+<cdparam x="1072" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Dst_Storage_Instance_1" value="Storage instance name" />
+<TGConnectingPoint num="0" id="3359" />
+<TGConnectingPoint num="1" id="3360" />
+<TGConnectingPoint num="2" id="3361" />
+<TGConnectingPoint num="3" id="3362" />
+<TGConnectingPoint num="4" id="3363" />
+<TGConnectingPoint num="5" id="3364" />
+<TGConnectingPoint num="6" id="3365" />
+<TGConnectingPoint num="7" id="3366" />
+<TGConnectingPoint num="8" id="3367" />
+<TGConnectingPoint num="9" id="3368" />
+<TGConnectingPoint num="10" id="3369" />
+<TGConnectingPoint num="11" id="3370" />
+<TGConnectingPoint num="12" id="3371" />
+<TGConnectingPoint num="13" id="3372" />
+<TGConnectingPoint num="14" id="3373" />
+<TGConnectingPoint num="15" id="3374" />
+<TGConnectingPoint num="16" id="3375" />
+<TGConnectingPoint num="17" id="3376" />
+<TGConnectingPoint num="18" id="3377" />
+<TGConnectingPoint num="19" id="3378" />
+<TGConnectingPoint num="20" id="3379" />
+<TGConnectingPoint num="21" id="3380" />
+<TGConnectingPoint num="22" id="3381" />
+<TGConnectingPoint num="23" id="3382" />
+<TGConnectingPoint num="24" id="3383" />
+<TGConnectingPoint num="25" id="3384" />
+<TGConnectingPoint num="26" id="3385" />
+<TGConnectingPoint num="27" id="3386" />
+<TGConnectingPoint num="28" id="3387" />
+<TGConnectingPoint num="29" id="3388" />
+<TGConnectingPoint num="30" id="3389" />
+<TGConnectingPoint num="31" id="3390" />
+<TGConnectingPoint num="32" id="3391" />
+<TGConnectingPoint num="33" id="3392" />
+<TGConnectingPoint num="34" id="3393" />
+<TGConnectingPoint num="35" id="3394" />
+<TGConnectingPoint num="36" id="3395" />
+<TGConnectingPoint num="37" id="3396" />
+<TGConnectingPoint num="38" id="3397" />
+<TGConnectingPoint num="39" id="3398" />
+<TGConnectingPoint num="40" id="3399" />
+<TGConnectingPoint num="41" id="3400" />
+<TGConnectingPoint num="42" id="3401" />
+<TGConnectingPoint num="43" id="3402" />
+<TGConnectingPoint num="44" id="3403" />
+<TGConnectingPoint num="45" id="3404" />
+<TGConnectingPoint num="46" id="3405" />
+<TGConnectingPoint num="47" id="3406" />
+<TGConnectingPoint num="48" id="3407" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="3458" >
+<cdparam x="861" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_3" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="3409" />
+<TGConnectingPoint num="1" id="3410" />
+<TGConnectingPoint num="2" id="3411" />
+<TGConnectingPoint num="3" id="3412" />
+<TGConnectingPoint num="4" id="3413" />
+<TGConnectingPoint num="5" id="3414" />
+<TGConnectingPoint num="6" id="3415" />
+<TGConnectingPoint num="7" id="3416" />
+<TGConnectingPoint num="8" id="3417" />
+<TGConnectingPoint num="9" id="3418" />
+<TGConnectingPoint num="10" id="3419" />
+<TGConnectingPoint num="11" id="3420" />
+<TGConnectingPoint num="12" id="3421" />
+<TGConnectingPoint num="13" id="3422" />
+<TGConnectingPoint num="14" id="3423" />
+<TGConnectingPoint num="15" id="3424" />
+<TGConnectingPoint num="16" id="3425" />
+<TGConnectingPoint num="17" id="3426" />
+<TGConnectingPoint num="18" id="3427" />
+<TGConnectingPoint num="19" id="3428" />
+<TGConnectingPoint num="20" id="3429" />
+<TGConnectingPoint num="21" id="3430" />
+<TGConnectingPoint num="22" id="3431" />
+<TGConnectingPoint num="23" id="3432" />
+<TGConnectingPoint num="24" id="3433" />
+<TGConnectingPoint num="25" id="3434" />
+<TGConnectingPoint num="26" id="3435" />
+<TGConnectingPoint num="27" id="3436" />
+<TGConnectingPoint num="28" id="3437" />
+<TGConnectingPoint num="29" id="3438" />
+<TGConnectingPoint num="30" id="3439" />
+<TGConnectingPoint num="31" id="3440" />
+<TGConnectingPoint num="32" id="3441" />
+<TGConnectingPoint num="33" id="3442" />
+<TGConnectingPoint num="34" id="3443" />
+<TGConnectingPoint num="35" id="3444" />
+<TGConnectingPoint num="36" id="3445" />
+<TGConnectingPoint num="37" id="3446" />
+<TGConnectingPoint num="38" id="3447" />
+<TGConnectingPoint num="39" id="3448" />
+<TGConnectingPoint num="40" id="3449" />
+<TGConnectingPoint num="41" id="3450" />
+<TGConnectingPoint num="42" id="3451" />
+<TGConnectingPoint num="43" id="3452" />
+<TGConnectingPoint num="44" id="3453" />
+<TGConnectingPoint num="45" id="3454" />
+<TGConnectingPoint num="46" id="3455" />
+<TGConnectingPoint num="47" id="3456" />
+<TGConnectingPoint num="48" id="3457" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="3508" >
+<cdparam x="392" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_2" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="3459" />
+<TGConnectingPoint num="1" id="3460" />
+<TGConnectingPoint num="2" id="3461" />
+<TGConnectingPoint num="3" id="3462" />
+<TGConnectingPoint num="4" id="3463" />
+<TGConnectingPoint num="5" id="3464" />
+<TGConnectingPoint num="6" id="3465" />
+<TGConnectingPoint num="7" id="3466" />
+<TGConnectingPoint num="8" id="3467" />
+<TGConnectingPoint num="9" id="3468" />
+<TGConnectingPoint num="10" id="3469" />
+<TGConnectingPoint num="11" id="3470" />
+<TGConnectingPoint num="12" id="3471" />
+<TGConnectingPoint num="13" id="3472" />
+<TGConnectingPoint num="14" id="3473" />
+<TGConnectingPoint num="15" id="3474" />
+<TGConnectingPoint num="16" id="3475" />
+<TGConnectingPoint num="17" id="3476" />
+<TGConnectingPoint num="18" id="3477" />
+<TGConnectingPoint num="19" id="3478" />
+<TGConnectingPoint num="20" id="3479" />
+<TGConnectingPoint num="21" id="3480" />
+<TGConnectingPoint num="22" id="3481" />
+<TGConnectingPoint num="23" id="3482" />
+<TGConnectingPoint num="24" id="3483" />
+<TGConnectingPoint num="25" id="3484" />
+<TGConnectingPoint num="26" id="3485" />
+<TGConnectingPoint num="27" id="3486" />
+<TGConnectingPoint num="28" id="3487" />
+<TGConnectingPoint num="29" id="3488" />
+<TGConnectingPoint num="30" id="3489" />
+<TGConnectingPoint num="31" id="3490" />
+<TGConnectingPoint num="32" id="3491" />
+<TGConnectingPoint num="33" id="3492" />
+<TGConnectingPoint num="34" id="3493" />
+<TGConnectingPoint num="35" id="3494" />
+<TGConnectingPoint num="36" id="3495" />
+<TGConnectingPoint num="37" id="3496" />
+<TGConnectingPoint num="38" id="3497" />
+<TGConnectingPoint num="39" id="3498" />
+<TGConnectingPoint num="40" id="3499" />
+<TGConnectingPoint num="41" id="3500" />
+<TGConnectingPoint num="42" id="3501" />
+<TGConnectingPoint num="43" id="3502" />
+<TGConnectingPoint num="44" id="3503" />
+<TGConnectingPoint num="45" id="3504" />
+<TGConnectingPoint num="46" id="3505" />
+<TGConnectingPoint num="47" id="3506" />
+<TGConnectingPoint num="48" id="3507" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1520" id="3558" >
+<cdparam x="643" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Src_Storage_Instance_1" value="Storage instance name" />
+<TGConnectingPoint num="0" id="3509" />
+<TGConnectingPoint num="1" id="3510" />
+<TGConnectingPoint num="2" id="3511" />
+<TGConnectingPoint num="3" id="3512" />
+<TGConnectingPoint num="4" id="3513" />
+<TGConnectingPoint num="5" id="3514" />
+<TGConnectingPoint num="6" id="3515" />
+<TGConnectingPoint num="7" id="3516" />
+<TGConnectingPoint num="8" id="3517" />
+<TGConnectingPoint num="9" id="3518" />
+<TGConnectingPoint num="10" id="3519" />
+<TGConnectingPoint num="11" id="3520" />
+<TGConnectingPoint num="12" id="3521" />
+<TGConnectingPoint num="13" id="3522" />
+<TGConnectingPoint num="14" id="3523" />
+<TGConnectingPoint num="15" id="3524" />
+<TGConnectingPoint num="16" id="3525" />
+<TGConnectingPoint num="17" id="3526" />
+<TGConnectingPoint num="18" id="3527" />
+<TGConnectingPoint num="19" id="3528" />
+<TGConnectingPoint num="20" id="3529" />
+<TGConnectingPoint num="21" id="3530" />
+<TGConnectingPoint num="22" id="3531" />
+<TGConnectingPoint num="23" id="3532" />
+<TGConnectingPoint num="24" id="3533" />
+<TGConnectingPoint num="25" id="3534" />
+<TGConnectingPoint num="26" id="3535" />
+<TGConnectingPoint num="27" id="3536" />
+<TGConnectingPoint num="28" id="3537" />
+<TGConnectingPoint num="29" id="3538" />
+<TGConnectingPoint num="30" id="3539" />
+<TGConnectingPoint num="31" id="3540" />
+<TGConnectingPoint num="32" id="3541" />
+<TGConnectingPoint num="33" id="3542" />
+<TGConnectingPoint num="34" id="3543" />
+<TGConnectingPoint num="35" id="3544" />
+<TGConnectingPoint num="36" id="3545" />
+<TGConnectingPoint num="37" id="3546" />
+<TGConnectingPoint num="38" id="3547" />
+<TGConnectingPoint num="39" id="3548" />
+<TGConnectingPoint num="40" id="3549" />
+<TGConnectingPoint num="41" id="3550" />
+<TGConnectingPoint num="42" id="3551" />
+<TGConnectingPoint num="43" id="3552" />
+<TGConnectingPoint num="44" id="3553" />
+<TGConnectingPoint num="45" id="3554" />
+<TGConnectingPoint num="46" id="3555" />
+<TGConnectingPoint num="47" id="3556" />
+<TGConnectingPoint num="48" id="3557" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="3617" >
+<cdparam x="161" y="56" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMA_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="3568" />
+<TGConnectingPoint num="1" id="3569" />
+<TGConnectingPoint num="2" id="3570" />
+<TGConnectingPoint num="3" id="3571" />
+<TGConnectingPoint num="4" id="3572" />
+<TGConnectingPoint num="5" id="3573" />
+<TGConnectingPoint num="6" id="3574" />
+<TGConnectingPoint num="7" id="3575" />
+<TGConnectingPoint num="8" id="3576" />
+<TGConnectingPoint num="9" id="3577" />
+<TGConnectingPoint num="10" id="3578" />
+<TGConnectingPoint num="11" id="3579" />
+<TGConnectingPoint num="12" id="3580" />
+<TGConnectingPoint num="13" id="3581" />
+<TGConnectingPoint num="14" id="3582" />
+<TGConnectingPoint num="15" id="3583" />
+<TGConnectingPoint num="16" id="3584" />
+<TGConnectingPoint num="17" id="3585" />
+<TGConnectingPoint num="18" id="3586" />
+<TGConnectingPoint num="19" id="3587" />
+<TGConnectingPoint num="20" id="3588" />
+<TGConnectingPoint num="21" id="3589" />
+<TGConnectingPoint num="22" id="3590" />
+<TGConnectingPoint num="23" id="3591" />
+<TGConnectingPoint num="24" id="3592" />
+<TGConnectingPoint num="25" id="3593" />
+<TGConnectingPoint num="26" id="3594" />
+<TGConnectingPoint num="27" id="3595" />
+<TGConnectingPoint num="28" id="3596" />
+<TGConnectingPoint num="29" id="3597" />
+<TGConnectingPoint num="30" id="3598" />
+<TGConnectingPoint num="31" id="3599" />
+<TGConnectingPoint num="32" id="3600" />
+<TGConnectingPoint num="33" id="3601" />
+<TGConnectingPoint num="34" id="3602" />
+<TGConnectingPoint num="35" id="3603" />
+<TGConnectingPoint num="36" id="3604" />
+<TGConnectingPoint num="37" id="3605" />
+<TGConnectingPoint num="38" id="3606" />
+<TGConnectingPoint num="39" id="3607" />
+<TGConnectingPoint num="40" id="3608" />
+<TGConnectingPoint num="41" id="3609" />
+<TGConnectingPoint num="42" id="3610" />
+<TGConnectingPoint num="43" id="3611" />
+<TGConnectingPoint num="44" id="3612" />
+<TGConnectingPoint num="45" id="3613" />
+<TGConnectingPoint num="46" id="3614" />
+<TGConnectingPoint num="47" id="3615" />
+<TGConnectingPoint num="48" id="3616" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1524" id="3567" >
+<father id="3617" num="0" />
+<cdparam x="166" y="252" />
+<sizeparam width="146" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" />
+<infoparam name="action state" value="counter = counter - 1" />
+<TGConnectingPoint num="0" id="3559" />
+<TGConnectingPoint num="1" id="3560" />
+<TGConnectingPoint num="2" id="3561" />
+<TGConnectingPoint num="3" id="3562" />
+<TGConnectingPoint num="4" id="3563" />
+<TGConnectingPoint num="5" id="3564" />
+<TGConnectingPoint num="6" id="3565" />
+<TGConnectingPoint num="7" id="3566" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1523" id="3618" >
+<cdparam x="866" y="246" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress1, 1)" />
+<P1  x="866" y="266" id="3429" />
+<P2  x="1077" y="266" id="3379" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress1" />
+<Param index="1" id="1" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="3619" >
+<cdparam x="166" y="216" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress1, 1)" />
+<P1  x="166" y="236" id="3585" />
+<P2  x="866" y="236" id="3426" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress1" />
+<Param index="1" id="1" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="3620" >
+<cdparam x="397" y="126" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress1, 1)" />
+<P1  x="397" y="146" id="3467" />
+<P2  x="648" y="146" id="3517" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress1" />
+<Param index="1" id="1" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="3621" >
+<cdparam x="183" y="95" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress1, 1)" />
+<P1  x="166" y="116" id="3573" />
+<P2  x="397" y="116" id="3464" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress1" />
+<Param index="1" id="1" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+<TMLSDPanel name="TerminateDMA_SD1" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="301" id="3638" >
+<cdparam x="716" y="60" />
+<sizeparam width="344" height="39" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="UML Note" value="The transfer instance is different w.r.t. the
+transfer instance of the ConfigureTransfer
+sequence diagram.
+" />
+<TGConnectingPoint num="0" id="3622" />
+<TGConnectingPoint num="1" id="3623" />
+<TGConnectingPoint num="2" id="3624" />
+<TGConnectingPoint num="3" id="3625" />
+<TGConnectingPoint num="4" id="3626" />
+<TGConnectingPoint num="5" id="3627" />
+<TGConnectingPoint num="6" id="3628" />
+<TGConnectingPoint num="7" id="3629" />
+<TGConnectingPoint num="8" id="3630" />
+<TGConnectingPoint num="9" id="3631" />
+<TGConnectingPoint num="10" id="3632" />
+<TGConnectingPoint num="11" id="3633" />
+<TGConnectingPoint num="12" id="3634" />
+<TGConnectingPoint num="13" id="3635" />
+<TGConnectingPoint num="14" id="3636" />
+<TGConnectingPoint num="15" id="3637" />
+<extraparam>
+<Line value="The transfer instance is different w.r.t. the" />
+<Line value="transfer instance of the ConfigureTransfer" />
+<Line value="sequence diagram." />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="3688" >
+<cdparam x="332" y="52" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_4" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="3639" />
+<TGConnectingPoint num="1" id="3640" />
+<TGConnectingPoint num="2" id="3641" />
+<TGConnectingPoint num="3" id="3642" />
+<TGConnectingPoint num="4" id="3643" />
+<TGConnectingPoint num="5" id="3644" />
+<TGConnectingPoint num="6" id="3645" />
+<TGConnectingPoint num="7" id="3646" />
+<TGConnectingPoint num="8" id="3647" />
+<TGConnectingPoint num="9" id="3648" />
+<TGConnectingPoint num="10" id="3649" />
+<TGConnectingPoint num="11" id="3650" />
+<TGConnectingPoint num="12" id="3651" />
+<TGConnectingPoint num="13" id="3652" />
+<TGConnectingPoint num="14" id="3653" />
+<TGConnectingPoint num="15" id="3654" />
+<TGConnectingPoint num="16" id="3655" />
+<TGConnectingPoint num="17" id="3656" />
+<TGConnectingPoint num="18" id="3657" />
+<TGConnectingPoint num="19" id="3658" />
+<TGConnectingPoint num="20" id="3659" />
+<TGConnectingPoint num="21" id="3660" />
+<TGConnectingPoint num="22" id="3661" />
+<TGConnectingPoint num="23" id="3662" />
+<TGConnectingPoint num="24" id="3663" />
+<TGConnectingPoint num="25" id="3664" />
+<TGConnectingPoint num="26" id="3665" />
+<TGConnectingPoint num="27" id="3666" />
+<TGConnectingPoint num="28" id="3667" />
+<TGConnectingPoint num="29" id="3668" />
+<TGConnectingPoint num="30" id="3669" />
+<TGConnectingPoint num="31" id="3670" />
+<TGConnectingPoint num="32" id="3671" />
+<TGConnectingPoint num="33" id="3672" />
+<TGConnectingPoint num="34" id="3673" />
+<TGConnectingPoint num="35" id="3674" />
+<TGConnectingPoint num="36" id="3675" />
+<TGConnectingPoint num="37" id="3676" />
+<TGConnectingPoint num="38" id="3677" />
+<TGConnectingPoint num="39" id="3678" />
+<TGConnectingPoint num="40" id="3679" />
+<TGConnectingPoint num="41" id="3680" />
+<TGConnectingPoint num="42" id="3681" />
+<TGConnectingPoint num="43" id="3682" />
+<TGConnectingPoint num="44" id="3683" />
+<TGConnectingPoint num="45" id="3684" />
+<TGConnectingPoint num="46" id="3685" />
+<TGConnectingPoint num="47" id="3686" />
+<TGConnectingPoint num="48" id="3687" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="3738" >
+<cdparam x="557" y="52" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMA_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="3689" />
+<TGConnectingPoint num="1" id="3690" />
+<TGConnectingPoint num="2" id="3691" />
+<TGConnectingPoint num="3" id="3692" />
+<TGConnectingPoint num="4" id="3693" />
+<TGConnectingPoint num="5" id="3694" />
+<TGConnectingPoint num="6" id="3695" />
+<TGConnectingPoint num="7" id="3696" />
+<TGConnectingPoint num="8" id="3697" />
+<TGConnectingPoint num="9" id="3698" />
+<TGConnectingPoint num="10" id="3699" />
+<TGConnectingPoint num="11" id="3700" />
+<TGConnectingPoint num="12" id="3701" />
+<TGConnectingPoint num="13" id="3702" />
+<TGConnectingPoint num="14" id="3703" />
+<TGConnectingPoint num="15" id="3704" />
+<TGConnectingPoint num="16" id="3705" />
+<TGConnectingPoint num="17" id="3706" />
+<TGConnectingPoint num="18" id="3707" />
+<TGConnectingPoint num="19" id="3708" />
+<TGConnectingPoint num="20" id="3709" />
+<TGConnectingPoint num="21" id="3710" />
+<TGConnectingPoint num="22" id="3711" />
+<TGConnectingPoint num="23" id="3712" />
+<TGConnectingPoint num="24" id="3713" />
+<TGConnectingPoint num="25" id="3714" />
+<TGConnectingPoint num="26" id="3715" />
+<TGConnectingPoint num="27" id="3716" />
+<TGConnectingPoint num="28" id="3717" />
+<TGConnectingPoint num="29" id="3718" />
+<TGConnectingPoint num="30" id="3719" />
+<TGConnectingPoint num="31" id="3720" />
+<TGConnectingPoint num="32" id="3721" />
+<TGConnectingPoint num="33" id="3722" />
+<TGConnectingPoint num="34" id="3723" />
+<TGConnectingPoint num="35" id="3724" />
+<TGConnectingPoint num="36" id="3725" />
+<TGConnectingPoint num="37" id="3726" />
+<TGConnectingPoint num="38" id="3727" />
+<TGConnectingPoint num="39" id="3728" />
+<TGConnectingPoint num="40" id="3729" />
+<TGConnectingPoint num="41" id="3730" />
+<TGConnectingPoint num="42" id="3731" />
+<TGConnectingPoint num="43" id="3732" />
+<TGConnectingPoint num="44" id="3733" />
+<TGConnectingPoint num="45" id="3734" />
+<TGConnectingPoint num="46" id="3735" />
+<TGConnectingPoint num="47" id="3736" />
+<TGConnectingPoint num="48" id="3737" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="3788" >
+<cdparam x="113" y="52" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU_Controller_1" value="Controller instance name" />
+<TGConnectingPoint num="0" id="3739" />
+<TGConnectingPoint num="1" id="3740" />
+<TGConnectingPoint num="2" id="3741" />
+<TGConnectingPoint num="3" id="3742" />
+<TGConnectingPoint num="4" id="3743" />
+<TGConnectingPoint num="5" id="3744" />
+<TGConnectingPoint num="6" id="3745" />
+<TGConnectingPoint num="7" id="3746" />
+<TGConnectingPoint num="8" id="3747" />
+<TGConnectingPoint num="9" id="3748" />
+<TGConnectingPoint num="10" id="3749" />
+<TGConnectingPoint num="11" id="3750" />
+<TGConnectingPoint num="12" id="3751" />
+<TGConnectingPoint num="13" id="3752" />
+<TGConnectingPoint num="14" id="3753" />
+<TGConnectingPoint num="15" id="3754" />
+<TGConnectingPoint num="16" id="3755" />
+<TGConnectingPoint num="17" id="3756" />
+<TGConnectingPoint num="18" id="3757" />
+<TGConnectingPoint num="19" id="3758" />
+<TGConnectingPoint num="20" id="3759" />
+<TGConnectingPoint num="21" id="3760" />
+<TGConnectingPoint num="22" id="3761" />
+<TGConnectingPoint num="23" id="3762" />
+<TGConnectingPoint num="24" id="3763" />
+<TGConnectingPoint num="25" id="3764" />
+<TGConnectingPoint num="26" id="3765" />
+<TGConnectingPoint num="27" id="3766" />
+<TGConnectingPoint num="28" id="3767" />
+<TGConnectingPoint num="29" id="3768" />
+<TGConnectingPoint num="30" id="3769" />
+<TGConnectingPoint num="31" id="3770" />
+<TGConnectingPoint num="32" id="3771" />
+<TGConnectingPoint num="33" id="3772" />
+<TGConnectingPoint num="34" id="3773" />
+<TGConnectingPoint num="35" id="3774" />
+<TGConnectingPoint num="36" id="3775" />
+<TGConnectingPoint num="37" id="3776" />
+<TGConnectingPoint num="38" id="3777" />
+<TGConnectingPoint num="39" id="3778" />
+<TGConnectingPoint num="40" id="3779" />
+<TGConnectingPoint num="41" id="3780" />
+<TGConnectingPoint num="42" id="3781" />
+<TGConnectingPoint num="43" id="3782" />
+<TGConnectingPoint num="44" id="3783" />
+<TGConnectingPoint num="45" id="3784" />
+<TGConnectingPoint num="46" id="3785" />
+<TGConnectingPoint num="47" id="3786" />
+<TGConnectingPoint num="48" id="3787" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter1" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="1523" id="3789" >
+<cdparam x="337" y="112" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferTerminated" value="TransferTerminated()" />
+<P1  x="337" y="112" id="3644" />
+<P2  x="118" y="112" id="3744" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="3790" >
+<cdparam x="562" y="82" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferTerminated" value="TransferTerminated()" />
+<P1  x="562" y="82" id="3691" />
+<P2  x="337" y="82" id="3641" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+<TMLSDPanel name="ConfigureDMA_SD2" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1521" id="3840" >
+<cdparam x="384" y="54" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_5" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="3791" />
+<TGConnectingPoint num="1" id="3792" />
+<TGConnectingPoint num="2" id="3793" />
+<TGConnectingPoint num="3" id="3794" />
+<TGConnectingPoint num="4" id="3795" />
+<TGConnectingPoint num="5" id="3796" />
+<TGConnectingPoint num="6" id="3797" />
+<TGConnectingPoint num="7" id="3798" />
+<TGConnectingPoint num="8" id="3799" />
+<TGConnectingPoint num="9" id="3800" />
+<TGConnectingPoint num="10" id="3801" />
+<TGConnectingPoint num="11" id="3802" />
+<TGConnectingPoint num="12" id="3803" />
+<TGConnectingPoint num="13" id="3804" />
+<TGConnectingPoint num="14" id="3805" />
+<TGConnectingPoint num="15" id="3806" />
+<TGConnectingPoint num="16" id="3807" />
+<TGConnectingPoint num="17" id="3808" />
+<TGConnectingPoint num="18" id="3809" />
+<TGConnectingPoint num="19" id="3810" />
+<TGConnectingPoint num="20" id="3811" />
+<TGConnectingPoint num="21" id="3812" />
+<TGConnectingPoint num="22" id="3813" />
+<TGConnectingPoint num="23" id="3814" />
+<TGConnectingPoint num="24" id="3815" />
+<TGConnectingPoint num="25" id="3816" />
+<TGConnectingPoint num="26" id="3817" />
+<TGConnectingPoint num="27" id="3818" />
+<TGConnectingPoint num="28" id="3819" />
+<TGConnectingPoint num="29" id="3820" />
+<TGConnectingPoint num="30" id="3821" />
+<TGConnectingPoint num="31" id="3822" />
+<TGConnectingPoint num="32" id="3823" />
+<TGConnectingPoint num="33" id="3824" />
+<TGConnectingPoint num="34" id="3825" />
+<TGConnectingPoint num="35" id="3826" />
+<TGConnectingPoint num="36" id="3827" />
+<TGConnectingPoint num="37" id="3828" />
+<TGConnectingPoint num="38" id="3829" />
+<TGConnectingPoint num="39" id="3830" />
+<TGConnectingPoint num="40" id="3831" />
+<TGConnectingPoint num="41" id="3832" />
+<TGConnectingPoint num="42" id="3833" />
+<TGConnectingPoint num="43" id="3834" />
+<TGConnectingPoint num="44" id="3835" />
+<TGConnectingPoint num="45" id="3836" />
+<TGConnectingPoint num="46" id="3837" />
+<TGConnectingPoint num="47" id="3838" />
+<TGConnectingPoint num="48" id="3839" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="3890" >
+<cdparam x="609" y="54" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMA_Controller_2" value="Controller instance name" />
+<TGConnectingPoint num="0" id="3841" />
+<TGConnectingPoint num="1" id="3842" />
+<TGConnectingPoint num="2" id="3843" />
+<TGConnectingPoint num="3" id="3844" />
+<TGConnectingPoint num="4" id="3845" />
+<TGConnectingPoint num="5" id="3846" />
+<TGConnectingPoint num="6" id="3847" />
+<TGConnectingPoint num="7" id="3848" />
+<TGConnectingPoint num="8" id="3849" />
+<TGConnectingPoint num="9" id="3850" />
+<TGConnectingPoint num="10" id="3851" />
+<TGConnectingPoint num="11" id="3852" />
+<TGConnectingPoint num="12" id="3853" />
+<TGConnectingPoint num="13" id="3854" />
+<TGConnectingPoint num="14" id="3855" />
+<TGConnectingPoint num="15" id="3856" />
+<TGConnectingPoint num="16" id="3857" />
+<TGConnectingPoint num="17" id="3858" />
+<TGConnectingPoint num="18" id="3859" />
+<TGConnectingPoint num="19" id="3860" />
+<TGConnectingPoint num="20" id="3861" />
+<TGConnectingPoint num="21" id="3862" />
+<TGConnectingPoint num="22" id="3863" />
+<TGConnectingPoint num="23" id="3864" />
+<TGConnectingPoint num="24" id="3865" />
+<TGConnectingPoint num="25" id="3866" />
+<TGConnectingPoint num="26" id="3867" />
+<TGConnectingPoint num="27" id="3868" />
+<TGConnectingPoint num="28" id="3869" />
+<TGConnectingPoint num="29" id="3870" />
+<TGConnectingPoint num="30" id="3871" />
+<TGConnectingPoint num="31" id="3872" />
+<TGConnectingPoint num="32" id="3873" />
+<TGConnectingPoint num="33" id="3874" />
+<TGConnectingPoint num="34" id="3875" />
+<TGConnectingPoint num="35" id="3876" />
+<TGConnectingPoint num="36" id="3877" />
+<TGConnectingPoint num="37" id="3878" />
+<TGConnectingPoint num="38" id="3879" />
+<TGConnectingPoint num="39" id="3880" />
+<TGConnectingPoint num="40" id="3881" />
+<TGConnectingPoint num="41" id="3882" />
+<TGConnectingPoint num="42" id="3883" />
+<TGConnectingPoint num="43" id="3884" />
+<TGConnectingPoint num="44" id="3885" />
+<TGConnectingPoint num="45" id="3886" />
+<TGConnectingPoint num="46" id="3887" />
+<TGConnectingPoint num="47" id="3888" />
+<TGConnectingPoint num="48" id="3889" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="3940" >
+<cdparam x="165" y="54" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU_Controller_2" value="Controller instance name" />
+<TGConnectingPoint num="0" id="3891" />
+<TGConnectingPoint num="1" id="3892" />
+<TGConnectingPoint num="2" id="3893" />
+<TGConnectingPoint num="3" id="3894" />
+<TGConnectingPoint num="4" id="3895" />
+<TGConnectingPoint num="5" id="3896" />
+<TGConnectingPoint num="6" id="3897" />
+<TGConnectingPoint num="7" id="3898" />
+<TGConnectingPoint num="8" id="3899" />
+<TGConnectingPoint num="9" id="3900" />
+<TGConnectingPoint num="10" id="3901" />
+<TGConnectingPoint num="11" id="3902" />
+<TGConnectingPoint num="12" id="3903" />
+<TGConnectingPoint num="13" id="3904" />
+<TGConnectingPoint num="14" id="3905" />
+<TGConnectingPoint num="15" id="3906" />
+<TGConnectingPoint num="16" id="3907" />
+<TGConnectingPoint num="17" id="3908" />
+<TGConnectingPoint num="18" id="3909" />
+<TGConnectingPoint num="19" id="3910" />
+<TGConnectingPoint num="20" id="3911" />
+<TGConnectingPoint num="21" id="3912" />
+<TGConnectingPoint num="22" id="3913" />
+<TGConnectingPoint num="23" id="3914" />
+<TGConnectingPoint num="24" id="3915" />
+<TGConnectingPoint num="25" id="3916" />
+<TGConnectingPoint num="26" id="3917" />
+<TGConnectingPoint num="27" id="3918" />
+<TGConnectingPoint num="28" id="3919" />
+<TGConnectingPoint num="29" id="3920" />
+<TGConnectingPoint num="30" id="3921" />
+<TGConnectingPoint num="31" id="3922" />
+<TGConnectingPoint num="32" id="3923" />
+<TGConnectingPoint num="33" id="3924" />
+<TGConnectingPoint num="34" id="3925" />
+<TGConnectingPoint num="35" id="3926" />
+<TGConnectingPoint num="36" id="3927" />
+<TGConnectingPoint num="37" id="3928" />
+<TGConnectingPoint num="38" id="3929" />
+<TGConnectingPoint num="39" id="3930" />
+<TGConnectingPoint num="40" id="3931" />
+<TGConnectingPoint num="41" id="3932" />
+<TGConnectingPoint num="42" id="3933" />
+<TGConnectingPoint num="43" id="3934" />
+<TGConnectingPoint num="44" id="3935" />
+<TGConnectingPoint num="45" id="3936" />
+<TGConnectingPoint num="46" id="3937" />
+<TGConnectingPoint num="47" id="3938" />
+<TGConnectingPoint num="48" id="3939" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="1523" id="3941" >
+<cdparam x="389" y="164" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferRequest" value="TransferRequest(counter2, sourceAddress2, destinationAddress2)" />
+<P1  x="389" y="124" id="3797" />
+<P2  x="614" y="124" id="3847" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="counter2" />
+<Param index="1" id="sourceAddress2" />
+<Param index="2" id="destinationAddress2" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="3942" >
+<cdparam x="170" y="134" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferRequest" value="TransferRequest(counter2, sourceAddress2, destinationAddress2)" />
+<P1  x="170" y="94" id="3894" />
+<P2  x="389" y="94" id="3794" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="counter2" />
+<Param index="1" id="sourceAddress2" />
+<Param index="2" id="destinationAddress2" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+<TMLSDPanel name="DMACycle_SD2" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1520" id="3992" >
+<cdparam x="1037" y="57" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Dst_Storage_Instance_2" value="Storage instance name" />
+<TGConnectingPoint num="0" id="3943" />
+<TGConnectingPoint num="1" id="3944" />
+<TGConnectingPoint num="2" id="3945" />
+<TGConnectingPoint num="3" id="3946" />
+<TGConnectingPoint num="4" id="3947" />
+<TGConnectingPoint num="5" id="3948" />
+<TGConnectingPoint num="6" id="3949" />
+<TGConnectingPoint num="7" id="3950" />
+<TGConnectingPoint num="8" id="3951" />
+<TGConnectingPoint num="9" id="3952" />
+<TGConnectingPoint num="10" id="3953" />
+<TGConnectingPoint num="11" id="3954" />
+<TGConnectingPoint num="12" id="3955" />
+<TGConnectingPoint num="13" id="3956" />
+<TGConnectingPoint num="14" id="3957" />
+<TGConnectingPoint num="15" id="3958" />
+<TGConnectingPoint num="16" id="3959" />
+<TGConnectingPoint num="17" id="3960" />
+<TGConnectingPoint num="18" id="3961" />
+<TGConnectingPoint num="19" id="3962" />
+<TGConnectingPoint num="20" id="3963" />
+<TGConnectingPoint num="21" id="3964" />
+<TGConnectingPoint num="22" id="3965" />
+<TGConnectingPoint num="23" id="3966" />
+<TGConnectingPoint num="24" id="3967" />
+<TGConnectingPoint num="25" id="3968" />
+<TGConnectingPoint num="26" id="3969" />
+<TGConnectingPoint num="27" id="3970" />
+<TGConnectingPoint num="28" id="3971" />
+<TGConnectingPoint num="29" id="3972" />
+<TGConnectingPoint num="30" id="3973" />
+<TGConnectingPoint num="31" id="3974" />
+<TGConnectingPoint num="32" id="3975" />
+<TGConnectingPoint num="33" id="3976" />
+<TGConnectingPoint num="34" id="3977" />
+<TGConnectingPoint num="35" id="3978" />
+<TGConnectingPoint num="36" id="3979" />
+<TGConnectingPoint num="37" id="3980" />
+<TGConnectingPoint num="38" id="3981" />
+<TGConnectingPoint num="39" id="3982" />
+<TGConnectingPoint num="40" id="3983" />
+<TGConnectingPoint num="41" id="3984" />
+<TGConnectingPoint num="42" id="3985" />
+<TGConnectingPoint num="43" id="3986" />
+<TGConnectingPoint num="44" id="3987" />
+<TGConnectingPoint num="45" id="3988" />
+<TGConnectingPoint num="46" id="3989" />
+<TGConnectingPoint num="47" id="3990" />
+<TGConnectingPoint num="48" id="3991" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="4042" >
+<cdparam x="826" y="57" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_7" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="3993" />
+<TGConnectingPoint num="1" id="3994" />
+<TGConnectingPoint num="2" id="3995" />
+<TGConnectingPoint num="3" id="3996" />
+<TGConnectingPoint num="4" id="3997" />
+<TGConnectingPoint num="5" id="3998" />
+<TGConnectingPoint num="6" id="3999" />
+<TGConnectingPoint num="7" id="4000" />
+<TGConnectingPoint num="8" id="4001" />
+<TGConnectingPoint num="9" id="4002" />
+<TGConnectingPoint num="10" id="4003" />
+<TGConnectingPoint num="11" id="4004" />
+<TGConnectingPoint num="12" id="4005" />
+<TGConnectingPoint num="13" id="4006" />
+<TGConnectingPoint num="14" id="4007" />
+<TGConnectingPoint num="15" id="4008" />
+<TGConnectingPoint num="16" id="4009" />
+<TGConnectingPoint num="17" id="4010" />
+<TGConnectingPoint num="18" id="4011" />
+<TGConnectingPoint num="19" id="4012" />
+<TGConnectingPoint num="20" id="4013" />
+<TGConnectingPoint num="21" id="4014" />
+<TGConnectingPoint num="22" id="4015" />
+<TGConnectingPoint num="23" id="4016" />
+<TGConnectingPoint num="24" id="4017" />
+<TGConnectingPoint num="25" id="4018" />
+<TGConnectingPoint num="26" id="4019" />
+<TGConnectingPoint num="27" id="4020" />
+<TGConnectingPoint num="28" id="4021" />
+<TGConnectingPoint num="29" id="4022" />
+<TGConnectingPoint num="30" id="4023" />
+<TGConnectingPoint num="31" id="4024" />
+<TGConnectingPoint num="32" id="4025" />
+<TGConnectingPoint num="33" id="4026" />
+<TGConnectingPoint num="34" id="4027" />
+<TGConnectingPoint num="35" id="4028" />
+<TGConnectingPoint num="36" id="4029" />
+<TGConnectingPoint num="37" id="4030" />
+<TGConnectingPoint num="38" id="4031" />
+<TGConnectingPoint num="39" id="4032" />
+<TGConnectingPoint num="40" id="4033" />
+<TGConnectingPoint num="41" id="4034" />
+<TGConnectingPoint num="42" id="4035" />
+<TGConnectingPoint num="43" id="4036" />
+<TGConnectingPoint num="44" id="4037" />
+<TGConnectingPoint num="45" id="4038" />
+<TGConnectingPoint num="46" id="4039" />
+<TGConnectingPoint num="47" id="4040" />
+<TGConnectingPoint num="48" id="4041" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1521" id="4092" >
+<cdparam x="357" y="57" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_6" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="4043" />
+<TGConnectingPoint num="1" id="4044" />
+<TGConnectingPoint num="2" id="4045" />
+<TGConnectingPoint num="3" id="4046" />
+<TGConnectingPoint num="4" id="4047" />
+<TGConnectingPoint num="5" id="4048" />
+<TGConnectingPoint num="6" id="4049" />
+<TGConnectingPoint num="7" id="4050" />
+<TGConnectingPoint num="8" id="4051" />
+<TGConnectingPoint num="9" id="4052" />
+<TGConnectingPoint num="10" id="4053" />
+<TGConnectingPoint num="11" id="4054" />
+<TGConnectingPoint num="12" id="4055" />
+<TGConnectingPoint num="13" id="4056" />
+<TGConnectingPoint num="14" id="4057" />
+<TGConnectingPoint num="15" id="4058" />
+<TGConnectingPoint num="16" id="4059" />
+<TGConnectingPoint num="17" id="4060" />
+<TGConnectingPoint num="18" id="4061" />
+<TGConnectingPoint num="19" id="4062" />
+<TGConnectingPoint num="20" id="4063" />
+<TGConnectingPoint num="21" id="4064" />
+<TGConnectingPoint num="22" id="4065" />
+<TGConnectingPoint num="23" id="4066" />
+<TGConnectingPoint num="24" id="4067" />
+<TGConnectingPoint num="25" id="4068" />
+<TGConnectingPoint num="26" id="4069" />
+<TGConnectingPoint num="27" id="4070" />
+<TGConnectingPoint num="28" id="4071" />
+<TGConnectingPoint num="29" id="4072" />
+<TGConnectingPoint num="30" id="4073" />
+<TGConnectingPoint num="31" id="4074" />
+<TGConnectingPoint num="32" id="4075" />
+<TGConnectingPoint num="33" id="4076" />
+<TGConnectingPoint num="34" id="4077" />
+<TGConnectingPoint num="35" id="4078" />
+<TGConnectingPoint num="36" id="4079" />
+<TGConnectingPoint num="37" id="4080" />
+<TGConnectingPoint num="38" id="4081" />
+<TGConnectingPoint num="39" id="4082" />
+<TGConnectingPoint num="40" id="4083" />
+<TGConnectingPoint num="41" id="4084" />
+<TGConnectingPoint num="42" id="4085" />
+<TGConnectingPoint num="43" id="4086" />
+<TGConnectingPoint num="44" id="4087" />
+<TGConnectingPoint num="45" id="4088" />
+<TGConnectingPoint num="46" id="4089" />
+<TGConnectingPoint num="47" id="4090" />
+<TGConnectingPoint num="48" id="4091" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1520" id="4142" >
+<cdparam x="608" y="57" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Src_Storage_Instance_2" value="Storage instance name" />
+<TGConnectingPoint num="0" id="4093" />
+<TGConnectingPoint num="1" id="4094" />
+<TGConnectingPoint num="2" id="4095" />
+<TGConnectingPoint num="3" id="4096" />
+<TGConnectingPoint num="4" id="4097" />
+<TGConnectingPoint num="5" id="4098" />
+<TGConnectingPoint num="6" id="4099" />
+<TGConnectingPoint num="7" id="4100" />
+<TGConnectingPoint num="8" id="4101" />
+<TGConnectingPoint num="9" id="4102" />
+<TGConnectingPoint num="10" id="4103" />
+<TGConnectingPoint num="11" id="4104" />
+<TGConnectingPoint num="12" id="4105" />
+<TGConnectingPoint num="13" id="4106" />
+<TGConnectingPoint num="14" id="4107" />
+<TGConnectingPoint num="15" id="4108" />
+<TGConnectingPoint num="16" id="4109" />
+<TGConnectingPoint num="17" id="4110" />
+<TGConnectingPoint num="18" id="4111" />
+<TGConnectingPoint num="19" id="4112" />
+<TGConnectingPoint num="20" id="4113" />
+<TGConnectingPoint num="21" id="4114" />
+<TGConnectingPoint num="22" id="4115" />
+<TGConnectingPoint num="23" id="4116" />
+<TGConnectingPoint num="24" id="4117" />
+<TGConnectingPoint num="25" id="4118" />
+<TGConnectingPoint num="26" id="4119" />
+<TGConnectingPoint num="27" id="4120" />
+<TGConnectingPoint num="28" id="4121" />
+<TGConnectingPoint num="29" id="4122" />
+<TGConnectingPoint num="30" id="4123" />
+<TGConnectingPoint num="31" id="4124" />
+<TGConnectingPoint num="32" id="4125" />
+<TGConnectingPoint num="33" id="4126" />
+<TGConnectingPoint num="34" id="4127" />
+<TGConnectingPoint num="35" id="4128" />
+<TGConnectingPoint num="36" id="4129" />
+<TGConnectingPoint num="37" id="4130" />
+<TGConnectingPoint num="38" id="4131" />
+<TGConnectingPoint num="39" id="4132" />
+<TGConnectingPoint num="40" id="4133" />
+<TGConnectingPoint num="41" id="4134" />
+<TGConnectingPoint num="42" id="4135" />
+<TGConnectingPoint num="43" id="4136" />
+<TGConnectingPoint num="44" id="4137" />
+<TGConnectingPoint num="45" id="4138" />
+<TGConnectingPoint num="46" id="4139" />
+<TGConnectingPoint num="47" id="4140" />
+<TGConnectingPoint num="48" id="4141" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="4201" >
+<cdparam x="126" y="57" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMA_Controller_2" value="Controller instance name" />
+<TGConnectingPoint num="0" id="4152" />
+<TGConnectingPoint num="1" id="4153" />
+<TGConnectingPoint num="2" id="4154" />
+<TGConnectingPoint num="3" id="4155" />
+<TGConnectingPoint num="4" id="4156" />
+<TGConnectingPoint num="5" id="4157" />
+<TGConnectingPoint num="6" id="4158" />
+<TGConnectingPoint num="7" id="4159" />
+<TGConnectingPoint num="8" id="4160" />
+<TGConnectingPoint num="9" id="4161" />
+<TGConnectingPoint num="10" id="4162" />
+<TGConnectingPoint num="11" id="4163" />
+<TGConnectingPoint num="12" id="4164" />
+<TGConnectingPoint num="13" id="4165" />
+<TGConnectingPoint num="14" id="4166" />
+<TGConnectingPoint num="15" id="4167" />
+<TGConnectingPoint num="16" id="4168" />
+<TGConnectingPoint num="17" id="4169" />
+<TGConnectingPoint num="18" id="4170" />
+<TGConnectingPoint num="19" id="4171" />
+<TGConnectingPoint num="20" id="4172" />
+<TGConnectingPoint num="21" id="4173" />
+<TGConnectingPoint num="22" id="4174" />
+<TGConnectingPoint num="23" id="4175" />
+<TGConnectingPoint num="24" id="4176" />
+<TGConnectingPoint num="25" id="4177" />
+<TGConnectingPoint num="26" id="4178" />
+<TGConnectingPoint num="27" id="4179" />
+<TGConnectingPoint num="28" id="4180" />
+<TGConnectingPoint num="29" id="4181" />
+<TGConnectingPoint num="30" id="4182" />
+<TGConnectingPoint num="31" id="4183" />
+<TGConnectingPoint num="32" id="4184" />
+<TGConnectingPoint num="33" id="4185" />
+<TGConnectingPoint num="34" id="4186" />
+<TGConnectingPoint num="35" id="4187" />
+<TGConnectingPoint num="36" id="4188" />
+<TGConnectingPoint num="37" id="4189" />
+<TGConnectingPoint num="38" id="4190" />
+<TGConnectingPoint num="39" id="4191" />
+<TGConnectingPoint num="40" id="4192" />
+<TGConnectingPoint num="41" id="4193" />
+<TGConnectingPoint num="42" id="4194" />
+<TGConnectingPoint num="43" id="4195" />
+<TGConnectingPoint num="44" id="4196" />
+<TGConnectingPoint num="45" id="4197" />
+<TGConnectingPoint num="46" id="4198" />
+<TGConnectingPoint num="47" id="4199" />
+<TGConnectingPoint num="48" id="4200" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1524" id="4151" >
+<father id="4201" num="0" />
+<cdparam x="131" y="253" />
+<sizeparam width="146" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" />
+<infoparam name="action state" value="counter = counter - 1" />
+<TGConnectingPoint num="0" id="4143" />
+<TGConnectingPoint num="1" id="4144" />
+<TGConnectingPoint num="2" id="4145" />
+<TGConnectingPoint num="3" id="4146" />
+<TGConnectingPoint num="4" id="4147" />
+<TGConnectingPoint num="5" id="4148" />
+<TGConnectingPoint num="6" id="4149" />
+<TGConnectingPoint num="7" id="4150" />
+</SUBCOMPONENT>
+
+<CONNECTOR type="1523" id="4202" >
+<cdparam x="831" y="247" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress2, 1)" />
+<P1  x="831" y="267" id="4013" />
+<P2  x="1042" y="267" id="3963" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress2" />
+<Param index="1" id="1" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="4203" >
+<cdparam x="131" y="217" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Write" value="Write(destinationAddress2, 1)" />
+<P1  x="131" y="237" id="4169" />
+<P2  x="831" y="237" id="4010" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="destinationAddress2" />
+<Param index="1" id="1" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="4204" >
+<cdparam x="362" y="127" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress2, 1)" />
+<P1  x="362" y="147" id="4051" />
+<P2  x="613" y="147" id="4101" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress2" />
+<Param index="1" id="1" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="4205" >
+<cdparam x="148" y="96" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="Read" value="Read(sourceAddress2, 1)" />
+<P1  x="131" y="117" id="4157" />
+<P2  x="362" y="117" id="4048" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<Param index="0" id="sourceAddress2" />
+<Param index="1" id="1" />
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+<TMLSDPanel name="TerminateDMA_SD2" minX="10" maxX="1400" minY="10" maxY="900" >
+<COMPONENT type="1521" id="4255" >
+<cdparam x="280" y="53" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="Transfer_Instance_8" value="Transfer instance name" />
+<TGConnectingPoint num="0" id="4206" />
+<TGConnectingPoint num="1" id="4207" />
+<TGConnectingPoint num="2" id="4208" />
+<TGConnectingPoint num="3" id="4209" />
+<TGConnectingPoint num="4" id="4210" />
+<TGConnectingPoint num="5" id="4211" />
+<TGConnectingPoint num="6" id="4212" />
+<TGConnectingPoint num="7" id="4213" />
+<TGConnectingPoint num="8" id="4214" />
+<TGConnectingPoint num="9" id="4215" />
+<TGConnectingPoint num="10" id="4216" />
+<TGConnectingPoint num="11" id="4217" />
+<TGConnectingPoint num="12" id="4218" />
+<TGConnectingPoint num="13" id="4219" />
+<TGConnectingPoint num="14" id="4220" />
+<TGConnectingPoint num="15" id="4221" />
+<TGConnectingPoint num="16" id="4222" />
+<TGConnectingPoint num="17" id="4223" />
+<TGConnectingPoint num="18" id="4224" />
+<TGConnectingPoint num="19" id="4225" />
+<TGConnectingPoint num="20" id="4226" />
+<TGConnectingPoint num="21" id="4227" />
+<TGConnectingPoint num="22" id="4228" />
+<TGConnectingPoint num="23" id="4229" />
+<TGConnectingPoint num="24" id="4230" />
+<TGConnectingPoint num="25" id="4231" />
+<TGConnectingPoint num="26" id="4232" />
+<TGConnectingPoint num="27" id="4233" />
+<TGConnectingPoint num="28" id="4234" />
+<TGConnectingPoint num="29" id="4235" />
+<TGConnectingPoint num="30" id="4236" />
+<TGConnectingPoint num="31" id="4237" />
+<TGConnectingPoint num="32" id="4238" />
+<TGConnectingPoint num="33" id="4239" />
+<TGConnectingPoint num="34" id="4240" />
+<TGConnectingPoint num="35" id="4241" />
+<TGConnectingPoint num="36" id="4242" />
+<TGConnectingPoint num="37" id="4243" />
+<TGConnectingPoint num="38" id="4244" />
+<TGConnectingPoint num="39" id="4245" />
+<TGConnectingPoint num="40" id="4246" />
+<TGConnectingPoint num="41" id="4247" />
+<TGConnectingPoint num="42" id="4248" />
+<TGConnectingPoint num="43" id="4249" />
+<TGConnectingPoint num="44" id="4250" />
+<TGConnectingPoint num="45" id="4251" />
+<TGConnectingPoint num="46" id="4252" />
+<TGConnectingPoint num="47" id="4253" />
+<TGConnectingPoint num="48" id="4254" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="4305" >
+<cdparam x="505" y="53" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="DMA_Controller_2" value="Controller instance name" />
+<TGConnectingPoint num="0" id="4256" />
+<TGConnectingPoint num="1" id="4257" />
+<TGConnectingPoint num="2" id="4258" />
+<TGConnectingPoint num="3" id="4259" />
+<TGConnectingPoint num="4" id="4260" />
+<TGConnectingPoint num="5" id="4261" />
+<TGConnectingPoint num="6" id="4262" />
+<TGConnectingPoint num="7" id="4263" />
+<TGConnectingPoint num="8" id="4264" />
+<TGConnectingPoint num="9" id="4265" />
+<TGConnectingPoint num="10" id="4266" />
+<TGConnectingPoint num="11" id="4267" />
+<TGConnectingPoint num="12" id="4268" />
+<TGConnectingPoint num="13" id="4269" />
+<TGConnectingPoint num="14" id="4270" />
+<TGConnectingPoint num="15" id="4271" />
+<TGConnectingPoint num="16" id="4272" />
+<TGConnectingPoint num="17" id="4273" />
+<TGConnectingPoint num="18" id="4274" />
+<TGConnectingPoint num="19" id="4275" />
+<TGConnectingPoint num="20" id="4276" />
+<TGConnectingPoint num="21" id="4277" />
+<TGConnectingPoint num="22" id="4278" />
+<TGConnectingPoint num="23" id="4279" />
+<TGConnectingPoint num="24" id="4280" />
+<TGConnectingPoint num="25" id="4281" />
+<TGConnectingPoint num="26" id="4282" />
+<TGConnectingPoint num="27" id="4283" />
+<TGConnectingPoint num="28" id="4284" />
+<TGConnectingPoint num="29" id="4285" />
+<TGConnectingPoint num="30" id="4286" />
+<TGConnectingPoint num="31" id="4287" />
+<TGConnectingPoint num="32" id="4288" />
+<TGConnectingPoint num="33" id="4289" />
+<TGConnectingPoint num="34" id="4290" />
+<TGConnectingPoint num="35" id="4291" />
+<TGConnectingPoint num="36" id="4292" />
+<TGConnectingPoint num="37" id="4293" />
+<TGConnectingPoint num="38" id="4294" />
+<TGConnectingPoint num="39" id="4295" />
+<TGConnectingPoint num="40" id="4296" />
+<TGConnectingPoint num="41" id="4297" />
+<TGConnectingPoint num="42" id="4298" />
+<TGConnectingPoint num="43" id="4299" />
+<TGConnectingPoint num="44" id="4300" />
+<TGConnectingPoint num="45" id="4301" />
+<TGConnectingPoint num="46" id="4302" />
+<TGConnectingPoint num="47" id="4303" />
+<TGConnectingPoint num="48" id="4304" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1522" id="4355" >
+<cdparam x="61" y="53" />
+<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" />
+<infoparam name="CPU_Controller_2" value="Controller instance name" />
+<TGConnectingPoint num="0" id="4306" />
+<TGConnectingPoint num="1" id="4307" />
+<TGConnectingPoint num="2" id="4308" />
+<TGConnectingPoint num="3" id="4309" />
+<TGConnectingPoint num="4" id="4310" />
+<TGConnectingPoint num="5" id="4311" />
+<TGConnectingPoint num="6" id="4312" />
+<TGConnectingPoint num="7" id="4313" />
+<TGConnectingPoint num="8" id="4314" />
+<TGConnectingPoint num="9" id="4315" />
+<TGConnectingPoint num="10" id="4316" />
+<TGConnectingPoint num="11" id="4317" />
+<TGConnectingPoint num="12" id="4318" />
+<TGConnectingPoint num="13" id="4319" />
+<TGConnectingPoint num="14" id="4320" />
+<TGConnectingPoint num="15" id="4321" />
+<TGConnectingPoint num="16" id="4322" />
+<TGConnectingPoint num="17" id="4323" />
+<TGConnectingPoint num="18" id="4324" />
+<TGConnectingPoint num="19" id="4325" />
+<TGConnectingPoint num="20" id="4326" />
+<TGConnectingPoint num="21" id="4327" />
+<TGConnectingPoint num="22" id="4328" />
+<TGConnectingPoint num="23" id="4329" />
+<TGConnectingPoint num="24" id="4330" />
+<TGConnectingPoint num="25" id="4331" />
+<TGConnectingPoint num="26" id="4332" />
+<TGConnectingPoint num="27" id="4333" />
+<TGConnectingPoint num="28" id="4334" />
+<TGConnectingPoint num="29" id="4335" />
+<TGConnectingPoint num="30" id="4336" />
+<TGConnectingPoint num="31" id="4337" />
+<TGConnectingPoint num="32" id="4338" />
+<TGConnectingPoint num="33" id="4339" />
+<TGConnectingPoint num="34" id="4340" />
+<TGConnectingPoint num="35" id="4341" />
+<TGConnectingPoint num="36" id="4342" />
+<TGConnectingPoint num="37" id="4343" />
+<TGConnectingPoint num="38" id="4344" />
+<TGConnectingPoint num="39" id="4345" />
+<TGConnectingPoint num="40" id="4346" />
+<TGConnectingPoint num="41" id="4347" />
+<TGConnectingPoint num="42" id="4348" />
+<TGConnectingPoint num="43" id="4349" />
+<TGConnectingPoint num="44" id="4350" />
+<TGConnectingPoint num="45" id="4351" />
+<TGConnectingPoint num="46" id="4352" />
+<TGConnectingPoint num="47" id="4353" />
+<TGConnectingPoint num="48" id="4354" />
+<extraparam>
+<Mapping mappedOn="" />
+<Actor data="false" />
+<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" />
+<Attribute access="2" id="counter2" value="" type="0" typeOther="" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="1523" id="4356" >
+<cdparam x="285" y="113" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferTerminated" value="TransferTerminated()" />
+<P1  x="285" y="113" id="4211" />
+<P2  x="66" y="113" id="4311" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="1523" id="4357" >
+<cdparam x="510" y="83" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="TransferTerminated" value="TransferTerminated()" />
+<P1  x="510" y="83" id="4258" />
+<P2  x="285" y="83" id="4208" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+</extraparam>
+</CONNECTOR>
+
+</TMLSDPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML Architecture" nameTab="Embb" >
+<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1900" minY="10" maxY="1900" attributes="0" masterClockFrequency="200" >
+<COMPONENT type="1100" id="4382" >
+<cdparam x="560" y="807" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_DMA" value="name" />
+<TGConnectingPoint num="0" id="4358" />
+<TGConnectingPoint num="1" id="4359" />
+<TGConnectingPoint num="2" id="4360" />
+<TGConnectingPoint num="3" id="4361" />
+<TGConnectingPoint num="4" id="4362" />
+<TGConnectingPoint num="5" id="4363" />
+<TGConnectingPoint num="6" id="4364" />
+<TGConnectingPoint num="7" id="4365" />
+<TGConnectingPoint num="8" id="4366" />
+<TGConnectingPoint num="9" id="4367" />
+<TGConnectingPoint num="10" id="4368" />
+<TGConnectingPoint num="11" id="4369" />
+<TGConnectingPoint num="12" id="4370" />
+<TGConnectingPoint num="13" id="4371" />
+<TGConnectingPoint num="14" id="4372" />
+<TGConnectingPoint num="15" id="4373" />
+<TGConnectingPoint num="16" id="4374" />
+<TGConnectingPoint num="17" id="4375" />
+<TGConnectingPoint num="18" id="4376" />
+<TGConnectingPoint num="19" id="4377" />
+<TGConnectingPoint num="20" id="4378" />
+<TGConnectingPoint num="21" id="4379" />
+<TGConnectingPoint num="22" id="4380" />
+<TGConnectingPoint num="23" id="4381" />
+<extraparam>
+<info stereotype="CPURR" nodeName="INTL_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="4407" >
+<cdparam x="543" y="422" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_DMA" value="name" />
+<TGConnectingPoint num="0" id="4383" />
+<TGConnectingPoint num="1" id="4384" />
+<TGConnectingPoint num="2" id="4385" />
+<TGConnectingPoint num="3" id="4386" />
+<TGConnectingPoint num="4" id="4387" />
+<TGConnectingPoint num="5" id="4388" />
+<TGConnectingPoint num="6" id="4389" />
+<TGConnectingPoint num="7" id="4390" />
+<TGConnectingPoint num="8" id="4391" />
+<TGConnectingPoint num="9" id="4392" />
+<TGConnectingPoint num="10" id="4393" />
+<TGConnectingPoint num="11" id="4394" />
+<TGConnectingPoint num="12" id="4395" />
+<TGConnectingPoint num="13" id="4396" />
+<TGConnectingPoint num="14" id="4397" />
+<TGConnectingPoint num="15" id="4398" />
+<TGConnectingPoint num="16" id="4399" />
+<TGConnectingPoint num="17" id="4400" />
+<TGConnectingPoint num="18" id="4401" />
+<TGConnectingPoint num="19" id="4402" />
+<TGConnectingPoint num="20" id="4403" />
+<TGConnectingPoint num="21" id="4404" />
+<TGConnectingPoint num="22" id="4405" />
+<TGConnectingPoint num="23" id="4406" />
+<extraparam>
+<info stereotype="CPURR" nodeName="ADAIF_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="4432" >
+<cdparam x="354" y="243" />
+<sizeparam width="200" height="152" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_MSS" value="name" />
+<TGConnectingPoint num="0" id="4408" />
+<TGConnectingPoint num="1" id="4409" />
+<TGConnectingPoint num="2" id="4410" />
+<TGConnectingPoint num="3" id="4411" />
+<TGConnectingPoint num="4" id="4412" />
+<TGConnectingPoint num="5" id="4413" />
+<TGConnectingPoint num="6" id="4414" />
+<TGConnectingPoint num="7" id="4415" />
+<TGConnectingPoint num="8" id="4416" />
+<TGConnectingPoint num="9" id="4417" />
+<TGConnectingPoint num="10" id="4418" />
+<TGConnectingPoint num="11" id="4419" />
+<TGConnectingPoint num="12" id="4420" />
+<TGConnectingPoint num="13" id="4421" />
+<TGConnectingPoint num="14" id="4422" />
+<TGConnectingPoint num="15" id="4423" />
+<TGConnectingPoint num="16" id="4424" />
+<TGConnectingPoint num="17" id="4425" />
+<TGConnectingPoint num="18" id="4426" />
+<TGConnectingPoint num="19" id="4427" />
+<TGConnectingPoint num="20" id="4428" />
+<TGConnectingPoint num="21" id="4429" />
+<TGConnectingPoint num="22" id="4430" />
+<TGConnectingPoint num="23" id="4431" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="ADAIF_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="2" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="4457" >
+<cdparam x="29" y="215" />
+<sizeparam width="252" height="181" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_PSS" value="name" />
+<TGConnectingPoint num="0" id="4433" />
+<TGConnectingPoint num="1" id="4434" />
+<TGConnectingPoint num="2" id="4435" />
+<TGConnectingPoint num="3" id="4436" />
+<TGConnectingPoint num="4" id="4437" />
+<TGConnectingPoint num="5" id="4438" />
+<TGConnectingPoint num="6" id="4439" />
+<TGConnectingPoint num="7" id="4440" />
+<TGConnectingPoint num="8" id="4441" />
+<TGConnectingPoint num="9" id="4442" />
+<TGConnectingPoint num="10" id="4443" />
+<TGConnectingPoint num="11" id="4444" />
+<TGConnectingPoint num="12" id="4445" />
+<TGConnectingPoint num="13" id="4446" />
+<TGConnectingPoint num="14" id="4447" />
+<TGConnectingPoint num="15" id="4448" />
+<TGConnectingPoint num="16" id="4449" />
+<TGConnectingPoint num="17" id="4450" />
+<TGConnectingPoint num="18" id="4451" />
+<TGConnectingPoint num="19" id="4452" />
+<TGConnectingPoint num="20" id="4453" />
+<TGConnectingPoint num="21" id="4454" />
+<TGConnectingPoint num="22" id="4455" />
+<TGConnectingPoint num="23" id="4456" />
+<extraparam>
+<info stereotype="CPURR" nodeName="ADAIF_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="4" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="4482" >
+<cdparam x="306" y="545" />
+<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_Bridge" value="name" />
+<TGConnectingPoint num="0" id="4458" />
+<TGConnectingPoint num="1" id="4459" />
+<TGConnectingPoint num="2" id="4460" />
+<TGConnectingPoint num="3" id="4461" />
+<TGConnectingPoint num="4" id="4462" />
+<TGConnectingPoint num="5" id="4463" />
+<TGConnectingPoint num="6" id="4464" />
+<TGConnectingPoint num="7" id="4465" />
+<TGConnectingPoint num="8" id="4466" />
+<TGConnectingPoint num="9" id="4467" />
+<TGConnectingPoint num="10" id="4468" />
+<TGConnectingPoint num="11" id="4469" />
+<TGConnectingPoint num="12" id="4470" />
+<TGConnectingPoint num="13" id="4471" />
+<TGConnectingPoint num="14" id="4472" />
+<TGConnectingPoint num="15" id="4473" />
+<TGConnectingPoint num="16" id="4474" />
+<TGConnectingPoint num="17" id="4475" />
+<TGConnectingPoint num="18" id="4476" />
+<TGConnectingPoint num="19" id="4477" />
+<TGConnectingPoint num="20" id="4478" />
+<TGConnectingPoint num="21" id="4479" />
+<TGConnectingPoint num="22" id="4480" />
+<TGConnectingPoint num="23" id="4481" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="ADAIF_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="4507" >
+<cdparam x="1544" y="737" />
+<sizeparam width="216" height="140" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainMemory" value="name" />
+<TGConnectingPoint num="0" id="4483" />
+<TGConnectingPoint num="1" id="4484" />
+<TGConnectingPoint num="2" id="4485" />
+<TGConnectingPoint num="3" id="4486" />
+<TGConnectingPoint num="4" id="4487" />
+<TGConnectingPoint num="5" id="4488" />
+<TGConnectingPoint num="6" id="4489" />
+<TGConnectingPoint num="7" id="4490" />
+<TGConnectingPoint num="8" id="4491" />
+<TGConnectingPoint num="9" id="4492" />
+<TGConnectingPoint num="10" id="4493" />
+<TGConnectingPoint num="11" id="4494" />
+<TGConnectingPoint num="12" id="4495" />
+<TGConnectingPoint num="13" id="4496" />
+<TGConnectingPoint num="14" id="4497" />
+<TGConnectingPoint num="15" id="4498" />
+<TGConnectingPoint num="16" id="4499" />
+<TGConnectingPoint num="17" id="4500" />
+<TGConnectingPoint num="18" id="4501" />
+<TGConnectingPoint num="19" id="4502" />
+<TGConnectingPoint num="20" id="4503" />
+<TGConnectingPoint num="21" id="4504" />
+<TGConnectingPoint num="22" id="4505" />
+<TGConnectingPoint num="23" id="4506" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="MainMemory" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="4" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="4532" >
+<cdparam x="1444" y="293" />
+<sizeparam width="417" height="293" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainCPU" value="name" />
+<TGConnectingPoint num="0" id="4508" />
+<TGConnectingPoint num="1" id="4509" />
+<TGConnectingPoint num="2" id="4510" />
+<TGConnectingPoint num="3" id="4511" />
+<TGConnectingPoint num="4" id="4512" />
+<TGConnectingPoint num="5" id="4513" />
+<TGConnectingPoint num="6" id="4514" />
+<TGConnectingPoint num="7" id="4515" />
+<TGConnectingPoint num="8" id="4516" />
+<TGConnectingPoint num="9" id="4517" />
+<TGConnectingPoint num="10" id="4518" />
+<TGConnectingPoint num="11" id="4519" />
+<TGConnectingPoint num="12" id="4520" />
+<TGConnectingPoint num="13" id="4521" />
+<TGConnectingPoint num="14" id="4522" />
+<TGConnectingPoint num="15" id="4523" />
+<TGConnectingPoint num="16" id="4524" />
+<TGConnectingPoint num="17" id="4525" />
+<TGConnectingPoint num="18" id="4526" />
+<TGConnectingPoint num="19" id="4527" />
+<TGConnectingPoint num="20" id="4528" />
+<TGConnectingPoint num="21" id="4529" />
+<TGConnectingPoint num="22" id="4530" />
+<TGConnectingPoint num="23" id="4531" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MainCPU" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="4557" >
+<cdparam x="1527" y="635" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainBus" value="name" />
+<TGConnectingPoint num="0" id="4533" />
+<TGConnectingPoint num="1" id="4534" />
+<TGConnectingPoint num="2" id="4535" />
+<TGConnectingPoint num="3" id="4536" />
+<TGConnectingPoint num="4" id="4537" />
+<TGConnectingPoint num="5" id="4538" />
+<TGConnectingPoint num="6" id="4539" />
+<TGConnectingPoint num="7" id="4540" />
+<TGConnectingPoint num="8" id="4541" />
+<TGConnectingPoint num="9" id="4542" />
+<TGConnectingPoint num="10" id="4543" />
+<TGConnectingPoint num="11" id="4544" />
+<TGConnectingPoint num="12" id="4545" />
+<TGConnectingPoint num="13" id="4546" />
+<TGConnectingPoint num="14" id="4547" />
+<TGConnectingPoint num="15" id="4548" />
+<TGConnectingPoint num="16" id="4549" />
+<TGConnectingPoint num="17" id="4550" />
+<TGConnectingPoint num="18" id="4551" />
+<TGConnectingPoint num="19" id="4552" />
+<TGConnectingPoint num="20" id="4553" />
+<TGConnectingPoint num="21" id="4554" />
+<TGConnectingPoint num="22" id="4555" />
+<TGConnectingPoint num="23" id="4556" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="MainBus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="4582" >
+<cdparam x="1367" y="610" />
+<sizeparam width="100" height="100" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainBridge" value="name" />
+<TGConnectingPoint num="0" id="4558" />
+<TGConnectingPoint num="1" id="4559" />
+<TGConnectingPoint num="2" id="4560" />
+<TGConnectingPoint num="3" id="4561" />
+<TGConnectingPoint num="4" id="4562" />
+<TGConnectingPoint num="5" id="4563" />
+<TGConnectingPoint num="6" id="4564" />
+<TGConnectingPoint num="7" id="4565" />
+<TGConnectingPoint num="8" id="4566" />
+<TGConnectingPoint num="9" id="4567" />
+<TGConnectingPoint num="10" id="4568" />
+<TGConnectingPoint num="11" id="4569" />
+<TGConnectingPoint num="12" id="4570" />
+<TGConnectingPoint num="13" id="4571" />
+<TGConnectingPoint num="14" id="4572" />
+<TGConnectingPoint num="15" id="4573" />
+<TGConnectingPoint num="16" id="4574" />
+<TGConnectingPoint num="17" id="4575" />
+<TGConnectingPoint num="18" id="4576" />
+<TGConnectingPoint num="19" id="4577" />
+<TGConnectingPoint num="20" id="4578" />
+<TGConnectingPoint num="21" id="4579" />
+<TGConnectingPoint num="22" id="4580" />
+<TGConnectingPoint num="23" id="4581" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="MainBridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="4607" >
+<cdparam x="231" y="635" />
+<sizeparam width="845" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="Crossbar" value="name" />
+<TGConnectingPoint num="0" id="4583" />
+<TGConnectingPoint num="1" id="4584" />
+<TGConnectingPoint num="2" id="4585" />
+<TGConnectingPoint num="3" id="4586" />
+<TGConnectingPoint num="4" id="4587" />
+<TGConnectingPoint num="5" id="4588" />
+<TGConnectingPoint num="6" id="4589" />
+<TGConnectingPoint num="7" id="4590" />
+<TGConnectingPoint num="8" id="4591" />
+<TGConnectingPoint num="9" id="4592" />
+<TGConnectingPoint num="10" id="4593" />
+<TGConnectingPoint num="11" id="4594" />
+<TGConnectingPoint num="12" id="4595" />
+<TGConnectingPoint num="13" id="4596" />
+<TGConnectingPoint num="14" id="4597" />
+<TGConnectingPoint num="15" id="4598" />
+<TGConnectingPoint num="16" id="4599" />
+<TGConnectingPoint num="17" id="4600" />
+<TGConnectingPoint num="18" id="4601" />
+<TGConnectingPoint num="19" id="4602" />
+<TGConnectingPoint num="20" id="4603" />
+<TGConnectingPoint num="21" id="4604" />
+<TGConnectingPoint num="22" id="4605" />
+<TGConnectingPoint num="23" id="4606" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="Crossbar" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="4632" >
+<cdparam x="306" y="737" />
+<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_Bridge" value="name" />
+<TGConnectingPoint num="0" id="4608" />
+<TGConnectingPoint num="1" id="4609" />
+<TGConnectingPoint num="2" id="4610" />
+<TGConnectingPoint num="3" id="4611" />
+<TGConnectingPoint num="4" id="4612" />
+<TGConnectingPoint num="5" id="4613" />
+<TGConnectingPoint num="6" id="4614" />
+<TGConnectingPoint num="7" id="4615" />
+<TGConnectingPoint num="8" id="4616" />
+<TGConnectingPoint num="9" id="4617" />
+<TGConnectingPoint num="10" id="4618" />
+<TGConnectingPoint num="11" id="4619" />
+<TGConnectingPoint num="12" id="4620" />
+<TGConnectingPoint num="13" id="4621" />
+<TGConnectingPoint num="14" id="4622" />
+<TGConnectingPoint num="15" id="4623" />
+<TGConnectingPoint num="16" id="4624" />
+<TGConnectingPoint num="17" id="4625" />
+<TGConnectingPoint num="18" id="4626" />
+<TGConnectingPoint num="19" id="4627" />
+<TGConnectingPoint num="20" id="4628" />
+<TGConnectingPoint num="21" id="4629" />
+<TGConnectingPoint num="22" id="4630" />
+<TGConnectingPoint num="23" id="4631" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="INTL_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="4657" >
+<cdparam x="376" y="949" />
+<sizeparam width="331" height="135" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_MSS" value="name" />
+<TGConnectingPoint num="0" id="4633" />
+<TGConnectingPoint num="1" id="4634" />
+<TGConnectingPoint num="2" id="4635" />
+<TGConnectingPoint num="3" id="4636" />
+<TGConnectingPoint num="4" id="4637" />
+<TGConnectingPoint num="5" id="4638" />
+<TGConnectingPoint num="6" id="4639" />
+<TGConnectingPoint num="7" id="4640" />
+<TGConnectingPoint num="8" id="4641" />
+<TGConnectingPoint num="9" id="4642" />
+<TGConnectingPoint num="10" id="4643" />
+<TGConnectingPoint num="11" id="4644" />
+<TGConnectingPoint num="12" id="4645" />
+<TGConnectingPoint num="13" id="4646" />
+<TGConnectingPoint num="14" id="4647" />
+<TGConnectingPoint num="15" id="4648" />
+<TGConnectingPoint num="16" id="4649" />
+<TGConnectingPoint num="17" id="4650" />
+<TGConnectingPoint num="18" id="4651" />
+<TGConnectingPoint num="19" id="4652" />
+<TGConnectingPoint num="20" id="4653" />
+<TGConnectingPoint num="21" id="4654" />
+<TGConnectingPoint num="22" id="4655" />
+<TGConnectingPoint num="23" id="4656" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="INTL_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="3" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="4682" >
+<cdparam x="138" y="938" />
+<sizeparam width="187" height="140" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_PSS" value="name" />
+<TGConnectingPoint num="0" id="4658" />
+<TGConnectingPoint num="1" id="4659" />
+<TGConnectingPoint num="2" id="4660" />
+<TGConnectingPoint num="3" id="4661" />
+<TGConnectingPoint num="4" id="4662" />
+<TGConnectingPoint num="5" id="4663" />
+<TGConnectingPoint num="6" id="4664" />
+<TGConnectingPoint num="7" id="4665" />
+<TGConnectingPoint num="8" id="4666" />
+<TGConnectingPoint num="9" id="4667" />
+<TGConnectingPoint num="10" id="4668" />
+<TGConnectingPoint num="11" id="4669" />
+<TGConnectingPoint num="12" id="4670" />
+<TGConnectingPoint num="13" id="4671" />
+<TGConnectingPoint num="14" id="4672" />
+<TGConnectingPoint num="15" id="4673" />
+<TGConnectingPoint num="16" id="4674" />
+<TGConnectingPoint num="17" id="4675" />
+<TGConnectingPoint num="18" id="4676" />
+<TGConnectingPoint num="19" id="4677" />
+<TGConnectingPoint num="20" id="4678" />
+<TGConnectingPoint num="21" id="4679" />
+<TGConnectingPoint num="22" id="4680" />
+<TGConnectingPoint num="23" id="4681" />
+<extraparam>
+<info stereotype="CPURR" nodeName="INTL_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="2" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="4707" >
+<cdparam x="231" y="832" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_Bus" value="name" />
+<TGConnectingPoint num="0" id="4683" />
+<TGConnectingPoint num="1" id="4684" />
+<TGConnectingPoint num="2" id="4685" />
+<TGConnectingPoint num="3" id="4686" />
+<TGConnectingPoint num="4" id="4687" />
+<TGConnectingPoint num="5" id="4688" />
+<TGConnectingPoint num="6" id="4689" />
+<TGConnectingPoint num="7" id="4690" />
+<TGConnectingPoint num="8" id="4691" />
+<TGConnectingPoint num="9" id="4692" />
+<TGConnectingPoint num="10" id="4693" />
+<TGConnectingPoint num="11" id="4694" />
+<TGConnectingPoint num="12" id="4695" />
+<TGConnectingPoint num="13" id="4696" />
+<TGConnectingPoint num="14" id="4697" />
+<TGConnectingPoint num="15" id="4698" />
+<TGConnectingPoint num="16" id="4699" />
+<TGConnectingPoint num="17" id="4700" />
+<TGConnectingPoint num="18" id="4701" />
+<TGConnectingPoint num="19" id="4702" />
+<TGConnectingPoint num="20" id="4703" />
+<TGConnectingPoint num="21" id="4704" />
+<TGConnectingPoint num="22" id="4705" />
+<TGConnectingPoint num="23" id="4706" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="INTL_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="4732" >
+<cdparam x="231" y="447" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_Bus" value="name" />
+<TGConnectingPoint num="0" id="4708" />
+<TGConnectingPoint num="1" id="4709" />
+<TGConnectingPoint num="2" id="4710" />
+<TGConnectingPoint num="3" id="4711" />
+<TGConnectingPoint num="4" id="4712" />
+<TGConnectingPoint num="5" id="4713" />
+<TGConnectingPoint num="6" id="4714" />
+<TGConnectingPoint num="7" id="4715" />
+<TGConnectingPoint num="8" id="4716" />
+<TGConnectingPoint num="9" id="4717" />
+<TGConnectingPoint num="10" id="4718" />
+<TGConnectingPoint num="11" id="4719" />
+<TGConnectingPoint num="12" id="4720" />
+<TGConnectingPoint num="13" id="4721" />
+<TGConnectingPoint num="14" id="4722" />
+<TGConnectingPoint num="15" id="4723" />
+<TGConnectingPoint num="16" id="4724" />
+<TGConnectingPoint num="17" id="4725" />
+<TGConnectingPoint num="18" id="4726" />
+<TGConnectingPoint num="19" id="4727" />
+<TGConnectingPoint num="20" id="4728" />
+<TGConnectingPoint num="21" id="4729" />
+<TGConnectingPoint num="22" id="4730" />
+<TGConnectingPoint num="23" id="4731" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="ADAIF_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="4757" >
+<cdparam x="1147" y="408" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_DMA" value="name" />
+<TGConnectingPoint num="0" id="4733" />
+<TGConnectingPoint num="1" id="4734" />
+<TGConnectingPoint num="2" id="4735" />
+<TGConnectingPoint num="3" id="4736" />
+<TGConnectingPoint num="4" id="4737" />
+<TGConnectingPoint num="5" id="4738" />
+<TGConnectingPoint num="6" id="4739" />
+<TGConnectingPoint num="7" id="4740" />
+<TGConnectingPoint num="8" id="4741" />
+<TGConnectingPoint num="9" id="4742" />
+<TGConnectingPoint num="10" id="4743" />
+<TGConnectingPoint num="11" id="4744" />
+<TGConnectingPoint num="12" id="4745" />
+<TGConnectingPoint num="13" id="4746" />
+<TGConnectingPoint num="14" id="4747" />
+<TGConnectingPoint num="15" id="4748" />
+<TGConnectingPoint num="16" id="4749" />
+<TGConnectingPoint num="17" id="4750" />
+<TGConnectingPoint num="18" id="4751" />
+<TGConnectingPoint num="19" id="4752" />
+<TGConnectingPoint num="20" id="4753" />
+<TGConnectingPoint num="21" id="4754" />
+<TGConnectingPoint num="22" id="4755" />
+<TGConnectingPoint num="23" id="4756" />
+<extraparam>
+<info stereotype="CPURR" nodeName="FEP_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="4782" >
+<cdparam x="895" y="193" />
+<sizeparam width="255" height="183" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_MSS" value="name" />
+<TGConnectingPoint num="0" id="4758" />
+<TGConnectingPoint num="1" id="4759" />
+<TGConnectingPoint num="2" id="4760" />
+<TGConnectingPoint num="3" id="4761" />
+<TGConnectingPoint num="4" id="4762" />
+<TGConnectingPoint num="5" id="4763" />
+<TGConnectingPoint num="6" id="4764" />
+<TGConnectingPoint num="7" id="4765" />
+<TGConnectingPoint num="8" id="4766" />
+<TGConnectingPoint num="9" id="4767" />
+<TGConnectingPoint num="10" id="4768" />
+<TGConnectingPoint num="11" id="4769" />
+<TGConnectingPoint num="12" id="4770" />
+<TGConnectingPoint num="13" id="4771" />
+<TGConnectingPoint num="14" id="4772" />
+<TGConnectingPoint num="15" id="4773" />
+<TGConnectingPoint num="16" id="4774" />
+<TGConnectingPoint num="17" id="4775" />
+<TGConnectingPoint num="18" id="4776" />
+<TGConnectingPoint num="19" id="4777" />
+<TGConnectingPoint num="20" id="4778" />
+<TGConnectingPoint num="21" id="4779" />
+<TGConnectingPoint num="22" id="4780" />
+<TGConnectingPoint num="23" id="4781" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="FEP_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="0" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="4807" >
+<cdparam x="619" y="199" />
+<sizeparam width="238" height="185" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_PSS" value="name" />
+<TGConnectingPoint num="0" id="4783" />
+<TGConnectingPoint num="1" id="4784" />
+<TGConnectingPoint num="2" id="4785" />
+<TGConnectingPoint num="3" id="4786" />
+<TGConnectingPoint num="4" id="4787" />
+<TGConnectingPoint num="5" id="4788" />
+<TGConnectingPoint num="6" id="4789" />
+<TGConnectingPoint num="7" id="4790" />
+<TGConnectingPoint num="8" id="4791" />
+<TGConnectingPoint num="9" id="4792" />
+<TGConnectingPoint num="10" id="4793" />
+<TGConnectingPoint num="11" id="4794" />
+<TGConnectingPoint num="12" id="4795" />
+<TGConnectingPoint num="13" id="4796" />
+<TGConnectingPoint num="14" id="4797" />
+<TGConnectingPoint num="15" id="4798" />
+<TGConnectingPoint num="16" id="4799" />
+<TGConnectingPoint num="17" id="4800" />
+<TGConnectingPoint num="18" id="4801" />
+<TGConnectingPoint num="19" id="4802" />
+<TGConnectingPoint num="20" id="4803" />
+<TGConnectingPoint num="21" id="4804" />
+<TGConnectingPoint num="22" id="4805" />
+<TGConnectingPoint num="23" id="4806" />
+<extraparam>
+<info stereotype="CPURR" nodeName="FEP_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="2" execcTime="1" clockRatio="1" MECType="1" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="4832" >
+<cdparam x="910" y="531" />
+<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_Bridge" value="name" />
+<TGConnectingPoint num="0" id="4808" />
+<TGConnectingPoint num="1" id="4809" />
+<TGConnectingPoint num="2" id="4810" />
+<TGConnectingPoint num="3" id="4811" />
+<TGConnectingPoint num="4" id="4812" />
+<TGConnectingPoint num="5" id="4813" />
+<TGConnectingPoint num="6" id="4814" />
+<TGConnectingPoint num="7" id="4815" />
+<TGConnectingPoint num="8" id="4816" />
+<TGConnectingPoint num="9" id="4817" />
+<TGConnectingPoint num="10" id="4818" />
+<TGConnectingPoint num="11" id="4819" />
+<TGConnectingPoint num="12" id="4820" />
+<TGConnectingPoint num="13" id="4821" />
+<TGConnectingPoint num="14" id="4822" />
+<TGConnectingPoint num="15" id="4823" />
+<TGConnectingPoint num="16" id="4824" />
+<TGConnectingPoint num="17" id="4825" />
+<TGConnectingPoint num="18" id="4826" />
+<TGConnectingPoint num="19" id="4827" />
+<TGConnectingPoint num="20" id="4828" />
+<TGConnectingPoint num="21" id="4829" />
+<TGConnectingPoint num="22" id="4830" />
+<TGConnectingPoint num="23" id="4831" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="FEP_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="4857" >
+<cdparam x="835" y="433" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_Bus" value="name" />
+<TGConnectingPoint num="0" id="4833" />
+<TGConnectingPoint num="1" id="4834" />
+<TGConnectingPoint num="2" id="4835" />
+<TGConnectingPoint num="3" id="4836" />
+<TGConnectingPoint num="4" id="4837" />
+<TGConnectingPoint num="5" id="4838" />
+<TGConnectingPoint num="6" id="4839" />
+<TGConnectingPoint num="7" id="4840" />
+<TGConnectingPoint num="8" id="4841" />
+<TGConnectingPoint num="9" id="4842" />
+<TGConnectingPoint num="10" id="4843" />
+<TGConnectingPoint num="11" id="4844" />
+<TGConnectingPoint num="12" id="4845" />
+<TGConnectingPoint num="13" id="4846" />
+<TGConnectingPoint num="14" id="4847" />
+<TGConnectingPoint num="15" id="4848" />
+<TGConnectingPoint num="16" id="4849" />
+<TGConnectingPoint num="17" id="4850" />
+<TGConnectingPoint num="18" id="4851" />
+<TGConnectingPoint num="19" id="4852" />
+<TGConnectingPoint num="20" id="4853" />
+<TGConnectingPoint num="21" id="4854" />
+<TGConnectingPoint num="22" id="4855" />
+<TGConnectingPoint num="23" id="4856" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="FEP_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="4882" >
+<cdparam x="1174" y="850" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_DMA" value="name" />
+<TGConnectingPoint num="0" id="4858" />
+<TGConnectingPoint num="1" id="4859" />
+<TGConnectingPoint num="2" id="4860" />
+<TGConnectingPoint num="3" id="4861" />
+<TGConnectingPoint num="4" id="4862" />
+<TGConnectingPoint num="5" id="4863" />
+<TGConnectingPoint num="6" id="4864" />
+<TGConnectingPoint num="7" id="4865" />
+<TGConnectingPoint num="8" id="4866" />
+<TGConnectingPoint num="9" id="4867" />
+<TGConnectingPoint num="10" id="4868" />
+<TGConnectingPoint num="11" id="4869" />
+<TGConnectingPoint num="12" id="4870" />
+<TGConnectingPoint num="13" id="4871" />
+<TGConnectingPoint num="14" id="4872" />
+<TGConnectingPoint num="15" id="4873" />
+<TGConnectingPoint num="16" id="4874" />
+<TGConnectingPoint num="17" id="4875" />
+<TGConnectingPoint num="18" id="4876" />
+<TGConnectingPoint num="19" id="4877" />
+<TGConnectingPoint num="20" id="4878" />
+<TGConnectingPoint num="21" id="4879" />
+<TGConnectingPoint num="22" id="4880" />
+<TGConnectingPoint num="23" id="4881" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MAPPER_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="4907" >
+<cdparam x="920" y="780" />
+<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_Bridge" value="name" />
+<TGConnectingPoint num="0" id="4883" />
+<TGConnectingPoint num="1" id="4884" />
+<TGConnectingPoint num="2" id="4885" />
+<TGConnectingPoint num="3" id="4886" />
+<TGConnectingPoint num="4" id="4887" />
+<TGConnectingPoint num="5" id="4888" />
+<TGConnectingPoint num="6" id="4889" />
+<TGConnectingPoint num="7" id="4890" />
+<TGConnectingPoint num="8" id="4891" />
+<TGConnectingPoint num="9" id="4892" />
+<TGConnectingPoint num="10" id="4893" />
+<TGConnectingPoint num="11" id="4894" />
+<TGConnectingPoint num="12" id="4895" />
+<TGConnectingPoint num="13" id="4896" />
+<TGConnectingPoint num="14" id="4897" />
+<TGConnectingPoint num="15" id="4898" />
+<TGConnectingPoint num="16" id="4899" />
+<TGConnectingPoint num="17" id="4900" />
+<TGConnectingPoint num="18" id="4901" />
+<TGConnectingPoint num="19" id="4902" />
+<TGConnectingPoint num="20" id="4903" />
+<TGConnectingPoint num="21" id="4904" />
+<TGConnectingPoint num="22" id="4905" />
+<TGConnectingPoint num="23" id="4906" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="MAPPER_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="4932" >
+<cdparam x="1043" y="978" />
+<sizeparam width="314" height="125" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_MSS" value="name" />
+<TGConnectingPoint num="0" id="4908" />
+<TGConnectingPoint num="1" id="4909" />
+<TGConnectingPoint num="2" id="4910" />
+<TGConnectingPoint num="3" id="4911" />
+<TGConnectingPoint num="4" id="4912" />
+<TGConnectingPoint num="5" id="4913" />
+<TGConnectingPoint num="6" id="4914" />
+<TGConnectingPoint num="7" id="4915" />
+<TGConnectingPoint num="8" id="4916" />
+<TGConnectingPoint num="9" id="4917" />
+<TGConnectingPoint num="10" id="4918" />
+<TGConnectingPoint num="11" id="4919" />
+<TGConnectingPoint num="12" id="4920" />
+<TGConnectingPoint num="13" id="4921" />
+<TGConnectingPoint num="14" id="4922" />
+<TGConnectingPoint num="15" id="4923" />
+<TGConnectingPoint num="16" id="4924" />
+<TGConnectingPoint num="17" id="4925" />
+<TGConnectingPoint num="18" id="4926" />
+<TGConnectingPoint num="19" id="4927" />
+<TGConnectingPoint num="20" id="4928" />
+<TGConnectingPoint num="21" id="4929" />
+<TGConnectingPoint num="22" id="4930" />
+<TGConnectingPoint num="23" id="4931" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="MAPPER_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="4957" >
+<cdparam x="759" y="981" />
+<sizeparam width="219" height="158" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_PSS" value="name" />
+<TGConnectingPoint num="0" id="4933" />
+<TGConnectingPoint num="1" id="4934" />
+<TGConnectingPoint num="2" id="4935" />
+<TGConnectingPoint num="3" id="4936" />
+<TGConnectingPoint num="4" id="4937" />
+<TGConnectingPoint num="5" id="4938" />
+<TGConnectingPoint num="6" id="4939" />
+<TGConnectingPoint num="7" id="4940" />
+<TGConnectingPoint num="8" id="4941" />
+<TGConnectingPoint num="9" id="4942" />
+<TGConnectingPoint num="10" id="4943" />
+<TGConnectingPoint num="11" id="4944" />
+<TGConnectingPoint num="12" id="4945" />
+<TGConnectingPoint num="13" id="4946" />
+<TGConnectingPoint num="14" id="4947" />
+<TGConnectingPoint num="15" id="4948" />
+<TGConnectingPoint num="16" id="4949" />
+<TGConnectingPoint num="17" id="4950" />
+<TGConnectingPoint num="18" id="4951" />
+<TGConnectingPoint num="19" id="4952" />
+<TGConnectingPoint num="20" id="4953" />
+<TGConnectingPoint num="21" id="4954" />
+<TGConnectingPoint num="22" id="4955" />
+<TGConnectingPoint num="23" id="4956" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MAPPER_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="3" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="4982" >
+<cdparam x="845" y="875" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_Bus" value="name" />
+<TGConnectingPoint num="0" id="4958" />
+<TGConnectingPoint num="1" id="4959" />
+<TGConnectingPoint num="2" id="4960" />
+<TGConnectingPoint num="3" id="4961" />
+<TGConnectingPoint num="4" id="4962" />
+<TGConnectingPoint num="5" id="4963" />
+<TGConnectingPoint num="6" id="4964" />
+<TGConnectingPoint num="7" id="4965" />
+<TGConnectingPoint num="8" id="4966" />
+<TGConnectingPoint num="9" id="4967" />
+<TGConnectingPoint num="10" id="4968" />
+<TGConnectingPoint num="11" id="4969" />
+<TGConnectingPoint num="12" id="4970" />
+<TGConnectingPoint num="13" id="4971" />
+<TGConnectingPoint num="14" id="4972" />
+<TGConnectingPoint num="15" id="4973" />
+<TGConnectingPoint num="16" id="4974" />
+<TGConnectingPoint num="17" id="4975" />
+<TGConnectingPoint num="18" id="4976" />
+<TGConnectingPoint num="19" id="4977" />
+<TGConnectingPoint num="20" id="4978" />
+<TGConnectingPoint num="21" id="4979" />
+<TGConnectingPoint num="22" id="4980" />
+<TGConnectingPoint num="23" id="4981" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="MAPPER_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<CONNECTOR type="125" id="4983" >
+<cdparam x="1367" y="660" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1367" y="660" id="4561" />
+<P2  x="1076" y="660" id="4587" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4984" >
+<cdparam x="1147" y="508" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1147" y="508" id="4738" />
+<P2  x="1076" y="635" id="4585" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4985" >
+<cdparam x="1298" y="875" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1249" y="850" id="4859" />
+<P2  x="1076" y="685" id="4590" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4986" >
+<cdparam x="1019" y="805" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="970" y="780" id="4884" />
+<P2  x="864" y="685" id="4598" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4987" >
+<cdparam x="1004" y="531" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="960" y="566" id="4814" />
+<P2  x="864" y="635" id="4592" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4988" >
+<cdparam x="1185" y="660" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1467" y="660" id="4562" />
+<P2  x="1527" y="660" id="4536" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4989" >
+<cdparam x="356" y="788" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="788" id="4614" />
+<P2  x="356" y="832" id="4684" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4990" >
+<cdparam x="554" y="806" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="560" y="807" id="4358" />
+<P2  x="442" y="685" id="4597" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4991" >
+<cdparam x="559" y="863" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="560" y="857" id="4361" />
+<P2  x="481" y="857" id="4687" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4992" >
+<cdparam x="586" y="970" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="541" y="949" id="4634" />
+<P2  x="418" y="882" id="4698" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4993" >
+<cdparam x="165" y="927" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="231" y="938" id="4659" />
+<P2  x="293" y="882" id="4697" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4994" >
+<cdparam x="355" y="576" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="580" id="4464" />
+<P2  x="231" y="635" id="4583" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4995" >
+<cdparam x="355" y="541" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="545" id="4459" />
+<P2  x="356" y="497" id="4714" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4996" >
+<cdparam x="543" y="522" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="543" y="522" id="4388" />
+<P2  x="442" y="635" id="4591" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4997" >
+<cdparam x="536" y="475" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="543" y="472" id="4386" />
+<P2  x="481" y="472" id="4712" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4998" >
+<cdparam x="549" y="337" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="454" y="395" id="4414" />
+<P2  x="418" y="447" id="4717" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="4999" >
+<cdparam x="155" y="323" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="155" y="396" id="4439" />
+<P2  x="293" y="447" id="4716" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5000" >
+<cdparam x="357" y="778" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="737" id="4609" />
+<P2  x="231" y="685" id="4588" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5001" >
+<cdparam x="1654" y="758" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1652" y="737" id="4484" />
+<P2  x="1652" y="685" id="4539" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5002" >
+<cdparam x="1651" y="573" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1652" y="586" id="4514" />
+<P2  x="1652" y="635" id="4534" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5003" >
+<cdparam x="959" y="527" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="960" y="531" id="4809" />
+<P2  x="960" y="483" id="4839" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5004" >
+<cdparam x="1140" y="461" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1147" y="458" id="4736" />
+<P2  x="1085" y="458" id="4837" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5005" >
+<cdparam x="1189" y="374" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1022" y="376" id="4764" />
+<P2  x="1022" y="433" id="4842" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5006" >
+<cdparam x="795" y="360" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="738" y="384" id="4789" />
+<P2  x="897" y="433" id="4841" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5007" >
+<cdparam x="970" y="831" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="970" y="831" id="4889" />
+<P2  x="970" y="875" id="4959" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5008" >
+<cdparam x="1173" y="906" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1174" y="900" id="4861" />
+<P2  x="1095" y="900" id="4962" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5009" >
+<cdparam x="1200" y="1013" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1200" y="978" id="4909" />
+<P2  x="1032" y="925" id="4973" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5010" >
+<cdparam x="779" y="970" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="868" y="981" id="4934" />
+<P2  x="907" y="925" id="4972" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+
+</TMLArchiDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML Architecture" nameTab="Mapping_0" >
+<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1900" minY="10" maxY="1900" attributes="0" masterClockFrequency="100" >
+<COMPONENT type="1100" id="5035" >
+<cdparam x="560" y="807" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_DMA" value="name" />
+<TGConnectingPoint num="0" id="5011" />
+<TGConnectingPoint num="1" id="5012" />
+<TGConnectingPoint num="2" id="5013" />
+<TGConnectingPoint num="3" id="5014" />
+<TGConnectingPoint num="4" id="5015" />
+<TGConnectingPoint num="5" id="5016" />
+<TGConnectingPoint num="6" id="5017" />
+<TGConnectingPoint num="7" id="5018" />
+<TGConnectingPoint num="8" id="5019" />
+<TGConnectingPoint num="9" id="5020" />
+<TGConnectingPoint num="10" id="5021" />
+<TGConnectingPoint num="11" id="5022" />
+<TGConnectingPoint num="12" id="5023" />
+<TGConnectingPoint num="13" id="5024" />
+<TGConnectingPoint num="14" id="5025" />
+<TGConnectingPoint num="15" id="5026" />
+<TGConnectingPoint num="16" id="5027" />
+<TGConnectingPoint num="17" id="5028" />
+<TGConnectingPoint num="18" id="5029" />
+<TGConnectingPoint num="19" id="5030" />
+<TGConnectingPoint num="20" id="5031" />
+<TGConnectingPoint num="21" id="5032" />
+<TGConnectingPoint num="22" id="5033" />
+<TGConnectingPoint num="23" id="5034" />
+<extraparam>
+<info stereotype="CPURR" nodeName="INTL_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5060" >
+<cdparam x="543" y="422" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_DMA" value="name" />
+<TGConnectingPoint num="0" id="5036" />
+<TGConnectingPoint num="1" id="5037" />
+<TGConnectingPoint num="2" id="5038" />
+<TGConnectingPoint num="3" id="5039" />
+<TGConnectingPoint num="4" id="5040" />
+<TGConnectingPoint num="5" id="5041" />
+<TGConnectingPoint num="6" id="5042" />
+<TGConnectingPoint num="7" id="5043" />
+<TGConnectingPoint num="8" id="5044" />
+<TGConnectingPoint num="9" id="5045" />
+<TGConnectingPoint num="10" id="5046" />
+<TGConnectingPoint num="11" id="5047" />
+<TGConnectingPoint num="12" id="5048" />
+<TGConnectingPoint num="13" id="5049" />
+<TGConnectingPoint num="14" id="5050" />
+<TGConnectingPoint num="15" id="5051" />
+<TGConnectingPoint num="16" id="5052" />
+<TGConnectingPoint num="17" id="5053" />
+<TGConnectingPoint num="18" id="5054" />
+<TGConnectingPoint num="19" id="5055" />
+<TGConnectingPoint num="20" id="5056" />
+<TGConnectingPoint num="21" id="5057" />
+<TGConnectingPoint num="22" id="5058" />
+<TGConnectingPoint num="23" id="5059" />
+<extraparam>
+<info stereotype="CPURR" nodeName="ADAIF_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="5085" >
+<cdparam x="377" y="225" />
+<sizeparam width="200" height="152" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_MSS" value="name" />
+<TGConnectingPoint num="0" id="5061" />
+<TGConnectingPoint num="1" id="5062" />
+<TGConnectingPoint num="2" id="5063" />
+<TGConnectingPoint num="3" id="5064" />
+<TGConnectingPoint num="4" id="5065" />
+<TGConnectingPoint num="5" id="5066" />
+<TGConnectingPoint num="6" id="5067" />
+<TGConnectingPoint num="7" id="5068" />
+<TGConnectingPoint num="8" id="5069" />
+<TGConnectingPoint num="9" id="5070" />
+<TGConnectingPoint num="10" id="5071" />
+<TGConnectingPoint num="11" id="5072" />
+<TGConnectingPoint num="12" id="5073" />
+<TGConnectingPoint num="13" id="5074" />
+<TGConnectingPoint num="14" id="5075" />
+<TGConnectingPoint num="15" id="5076" />
+<TGConnectingPoint num="16" id="5077" />
+<TGConnectingPoint num="17" id="5078" />
+<TGConnectingPoint num="18" id="5079" />
+<TGConnectingPoint num="19" id="5080" />
+<TGConnectingPoint num="20" id="5081" />
+<TGConnectingPoint num="21" id="5082" />
+<TGConnectingPoint num="22" id="5083" />
+<TGConnectingPoint num="23" id="5084" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="ADAIF_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="2" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5119" >
+<cdparam x="90" y="201" />
+<sizeparam width="252" height="181" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_PSS" value="name" />
+<TGConnectingPoint num="0" id="5095" />
+<TGConnectingPoint num="1" id="5096" />
+<TGConnectingPoint num="2" id="5097" />
+<TGConnectingPoint num="3" id="5098" />
+<TGConnectingPoint num="4" id="5099" />
+<TGConnectingPoint num="5" id="5100" />
+<TGConnectingPoint num="6" id="5101" />
+<TGConnectingPoint num="7" id="5102" />
+<TGConnectingPoint num="8" id="5103" />
+<TGConnectingPoint num="9" id="5104" />
+<TGConnectingPoint num="10" id="5105" />
+<TGConnectingPoint num="11" id="5106" />
+<TGConnectingPoint num="12" id="5107" />
+<TGConnectingPoint num="13" id="5108" />
+<TGConnectingPoint num="14" id="5109" />
+<TGConnectingPoint num="15" id="5110" />
+<TGConnectingPoint num="16" id="5111" />
+<TGConnectingPoint num="17" id="5112" />
+<TGConnectingPoint num="18" id="5113" />
+<TGConnectingPoint num="19" id="5114" />
+<TGConnectingPoint num="20" id="5115" />
+<TGConnectingPoint num="21" id="5116" />
+<TGConnectingPoint num="22" id="5117" />
+<TGConnectingPoint num="23" id="5118" />
+<extraparam>
+<info stereotype="CPURR" nodeName="ADAIF_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="4" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="5094" >
+<father id="5119" num="0" />
+<cdparam x="109" y="301" />
+<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="106" minY="0" maxY="141" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Sink" />
+<TGConnectingPoint num="0" id="5086" />
+<TGConnectingPoint num="1" id="5087" />
+<TGConnectingPoint num="2" id="5088" />
+<TGConnectingPoint num="3" id="5089" />
+<TGConnectingPoint num="4" id="5090" />
+<TGConnectingPoint num="5" id="5091" />
+<TGConnectingPoint num="6" id="5092" />
+<TGConnectingPoint num="7" id="5093" />
+<extraparam>
+<info value="Zigbee_TX::X_Sink" taskName="X_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="Adaif operation" fatherComponentMECType="4" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1106" id="5144" >
+<cdparam x="306" y="545" />
+<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_Bridge" value="name" />
+<TGConnectingPoint num="0" id="5120" />
+<TGConnectingPoint num="1" id="5121" />
+<TGConnectingPoint num="2" id="5122" />
+<TGConnectingPoint num="3" id="5123" />
+<TGConnectingPoint num="4" id="5124" />
+<TGConnectingPoint num="5" id="5125" />
+<TGConnectingPoint num="6" id="5126" />
+<TGConnectingPoint num="7" id="5127" />
+<TGConnectingPoint num="8" id="5128" />
+<TGConnectingPoint num="9" id="5129" />
+<TGConnectingPoint num="10" id="5130" />
+<TGConnectingPoint num="11" id="5131" />
+<TGConnectingPoint num="12" id="5132" />
+<TGConnectingPoint num="13" id="5133" />
+<TGConnectingPoint num="14" id="5134" />
+<TGConnectingPoint num="15" id="5135" />
+<TGConnectingPoint num="16" id="5136" />
+<TGConnectingPoint num="17" id="5137" />
+<TGConnectingPoint num="18" id="5138" />
+<TGConnectingPoint num="19" id="5139" />
+<TGConnectingPoint num="20" id="5140" />
+<TGConnectingPoint num="21" id="5141" />
+<TGConnectingPoint num="22" id="5142" />
+<TGConnectingPoint num="23" id="5143" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="ADAIF_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="5169" >
+<cdparam x="1544" y="737" />
+<sizeparam width="216" height="140" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainMemory" value="name" />
+<TGConnectingPoint num="0" id="5145" />
+<TGConnectingPoint num="1" id="5146" />
+<TGConnectingPoint num="2" id="5147" />
+<TGConnectingPoint num="3" id="5148" />
+<TGConnectingPoint num="4" id="5149" />
+<TGConnectingPoint num="5" id="5150" />
+<TGConnectingPoint num="6" id="5151" />
+<TGConnectingPoint num="7" id="5152" />
+<TGConnectingPoint num="8" id="5153" />
+<TGConnectingPoint num="9" id="5154" />
+<TGConnectingPoint num="10" id="5155" />
+<TGConnectingPoint num="11" id="5156" />
+<TGConnectingPoint num="12" id="5157" />
+<TGConnectingPoint num="13" id="5158" />
+<TGConnectingPoint num="14" id="5159" />
+<TGConnectingPoint num="15" id="5160" />
+<TGConnectingPoint num="16" id="5161" />
+<TGConnectingPoint num="17" id="5162" />
+<TGConnectingPoint num="18" id="5163" />
+<TGConnectingPoint num="19" id="5164" />
+<TGConnectingPoint num="20" id="5165" />
+<TGConnectingPoint num="21" id="5166" />
+<TGConnectingPoint num="22" id="5167" />
+<TGConnectingPoint num="23" id="5168" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="MainMemory" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="4" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5266" >
+<cdparam x="1444" y="293" />
+<sizeparam width="417" height="293" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainCPU" value="name" />
+<TGConnectingPoint num="0" id="5242" />
+<TGConnectingPoint num="1" id="5243" />
+<TGConnectingPoint num="2" id="5244" />
+<TGConnectingPoint num="3" id="5245" />
+<TGConnectingPoint num="4" id="5246" />
+<TGConnectingPoint num="5" id="5247" />
+<TGConnectingPoint num="6" id="5248" />
+<TGConnectingPoint num="7" id="5249" />
+<TGConnectingPoint num="8" id="5250" />
+<TGConnectingPoint num="9" id="5251" />
+<TGConnectingPoint num="10" id="5252" />
+<TGConnectingPoint num="11" id="5253" />
+<TGConnectingPoint num="12" id="5254" />
+<TGConnectingPoint num="13" id="5255" />
+<TGConnectingPoint num="14" id="5256" />
+<TGConnectingPoint num="15" id="5257" />
+<TGConnectingPoint num="16" id="5258" />
+<TGConnectingPoint num="17" id="5259" />
+<TGConnectingPoint num="18" id="5260" />
+<TGConnectingPoint num="19" id="5261" />
+<TGConnectingPoint num="20" id="5262" />
+<TGConnectingPoint num="21" id="5263" />
+<TGConnectingPoint num="22" id="5264" />
+<TGConnectingPoint num="23" id="5265" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MainCPU" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="6" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="5178" >
+<father id="5266" num="0" />
+<cdparam x="1686" y="522" />
+<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="261" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_I" />
+<TGConnectingPoint num="0" id="5170" />
+<TGConnectingPoint num="1" id="5171" />
+<TGConnectingPoint num="2" id="5172" />
+<TGConnectingPoint num="3" id="5173" />
+<TGConnectingPoint num="4" id="5174" />
+<TGConnectingPoint num="5" id="5175" />
+<TGConnectingPoint num="6" id="5176" />
+<TGConnectingPoint num="7" id="5177" />
+<extraparam>
+<info value="Zigbee_TX::F_CWP_I" taskName="F_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_I" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="5187" >
+<father id="5266" num="1" />
+<cdparam x="1685" y="459" />
+<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="255" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_Q" />
+<TGConnectingPoint num="0" id="5179" />
+<TGConnectingPoint num="1" id="5180" />
+<TGConnectingPoint num="2" id="5181" />
+<TGConnectingPoint num="3" id="5182" />
+<TGConnectingPoint num="4" id="5183" />
+<TGConnectingPoint num="5" id="5184" />
+<TGConnectingPoint num="6" id="5185" />
+<TGConnectingPoint num="7" id="5186" />
+<extraparam>
+<info value="Zigbee_TX::F_CWP_Q" taskName="F_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_Q" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="5196" >
+<father id="5266" num="2" />
+<cdparam x="1691" y="345" />
+<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="272" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_CWL" />
+<TGConnectingPoint num="0" id="5188" />
+<TGConnectingPoint num="1" id="5189" />
+<TGConnectingPoint num="2" id="5190" />
+<TGConnectingPoint num="3" id="5191" />
+<TGConnectingPoint num="4" id="5192" />
+<TGConnectingPoint num="5" id="5193" />
+<TGConnectingPoint num="6" id="5194" />
+<TGConnectingPoint num="7" id="5195" />
+<extraparam>
+<info value="Zigbee_TX::F_CWL" taskName="F_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWL" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="5205" >
+<father id="5266" num="3" />
+<cdparam x="1688" y="405" />
+<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="271" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Sink" />
+<TGConnectingPoint num="0" id="5197" />
+<TGConnectingPoint num="1" id="5198" />
+<TGConnectingPoint num="2" id="5199" />
+<TGConnectingPoint num="3" id="5200" />
+<TGConnectingPoint num="4" id="5201" />
+<TGConnectingPoint num="5" id="5202" />
+<TGConnectingPoint num="6" id="5203" />
+<TGConnectingPoint num="7" id="5204" />
+<extraparam>
+<info value="Zigbee_TX::F_Sink" taskName="F_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="F_Sink" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="5214" >
+<father id="5266" num="4" />
+<cdparam x="1466" y="518" />
+<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="228" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Chip2Octet" />
+<TGConnectingPoint num="0" id="5206" />
+<TGConnectingPoint num="1" id="5207" />
+<TGConnectingPoint num="2" id="5208" />
+<TGConnectingPoint num="3" id="5209" />
+<TGConnectingPoint num="4" id="5210" />
+<TGConnectingPoint num="5" id="5211" />
+<TGConnectingPoint num="6" id="5212" />
+<TGConnectingPoint num="7" id="5213" />
+<extraparam>
+<info value="Zigbee_TX::X_Chip2Octet" taskName="X_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="X_Chip2Octet" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="5223" >
+<father id="5266" num="5" />
+<cdparam x="1466" y="456" />
+<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="194" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Symbol2ChipSeq" />
+<TGConnectingPoint num="0" id="5215" />
+<TGConnectingPoint num="1" id="5216" />
+<TGConnectingPoint num="2" id="5217" />
+<TGConnectingPoint num="3" id="5218" />
+<TGConnectingPoint num="4" id="5219" />
+<TGConnectingPoint num="5" id="5220" />
+<TGConnectingPoint num="6" id="5221" />
+<TGConnectingPoint num="7" id="5222" />
+<extraparam>
+<info value="Zigbee_TX::F_Symbol2ChipSeq" taskName="F_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="F_Symbol2ChipSeq" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="5232" >
+<father id="5266" num="6" />
+<cdparam x="1466" y="395" />
+<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Source" />
+<TGConnectingPoint num="0" id="5224" />
+<TGConnectingPoint num="1" id="5225" />
+<TGConnectingPoint num="2" id="5226" />
+<TGConnectingPoint num="3" id="5227" />
+<TGConnectingPoint num="4" id="5228" />
+<TGConnectingPoint num="5" id="5229" />
+<TGConnectingPoint num="6" id="5230" />
+<TGConnectingPoint num="7" id="5231" />
+<extraparam>
+<info value="Zigbee_TX::X_Source" taskName="X_Source" referenceTaskName="Zigbee_TX" priority="0" operation="X_Source" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="5241" >
+<father id="5266" num="7" />
+<cdparam x="1465" y="339" />
+<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Source" />
+<TGConnectingPoint num="0" id="5233" />
+<TGConnectingPoint num="1" id="5234" />
+<TGConnectingPoint num="2" id="5235" />
+<TGConnectingPoint num="3" id="5236" />
+<TGConnectingPoint num="4" id="5237" />
+<TGConnectingPoint num="5" id="5238" />
+<TGConnectingPoint num="6" id="5239" />
+<TGConnectingPoint num="7" id="5240" />
+<extraparam>
+<info value="Zigbee_TX::F_Source" taskName="F_Source" referenceTaskName="Zigbee_TX" priority="0" operation="F_Source" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1102" id="5291" >
+<cdparam x="1527" y="635" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainBus" value="name" />
+<TGConnectingPoint num="0" id="5267" />
+<TGConnectingPoint num="1" id="5268" />
+<TGConnectingPoint num="2" id="5269" />
+<TGConnectingPoint num="3" id="5270" />
+<TGConnectingPoint num="4" id="5271" />
+<TGConnectingPoint num="5" id="5272" />
+<TGConnectingPoint num="6" id="5273" />
+<TGConnectingPoint num="7" id="5274" />
+<TGConnectingPoint num="8" id="5275" />
+<TGConnectingPoint num="9" id="5276" />
+<TGConnectingPoint num="10" id="5277" />
+<TGConnectingPoint num="11" id="5278" />
+<TGConnectingPoint num="12" id="5279" />
+<TGConnectingPoint num="13" id="5280" />
+<TGConnectingPoint num="14" id="5281" />
+<TGConnectingPoint num="15" id="5282" />
+<TGConnectingPoint num="16" id="5283" />
+<TGConnectingPoint num="17" id="5284" />
+<TGConnectingPoint num="18" id="5285" />
+<TGConnectingPoint num="19" id="5286" />
+<TGConnectingPoint num="20" id="5287" />
+<TGConnectingPoint num="21" id="5288" />
+<TGConnectingPoint num="22" id="5289" />
+<TGConnectingPoint num="23" id="5290" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="MainBus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="5316" >
+<cdparam x="1367" y="610" />
+<sizeparam width="100" height="100" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainBridge" value="name" />
+<TGConnectingPoint num="0" id="5292" />
+<TGConnectingPoint num="1" id="5293" />
+<TGConnectingPoint num="2" id="5294" />
+<TGConnectingPoint num="3" id="5295" />
+<TGConnectingPoint num="4" id="5296" />
+<TGConnectingPoint num="5" id="5297" />
+<TGConnectingPoint num="6" id="5298" />
+<TGConnectingPoint num="7" id="5299" />
+<TGConnectingPoint num="8" id="5300" />
+<TGConnectingPoint num="9" id="5301" />
+<TGConnectingPoint num="10" id="5302" />
+<TGConnectingPoint num="11" id="5303" />
+<TGConnectingPoint num="12" id="5304" />
+<TGConnectingPoint num="13" id="5305" />
+<TGConnectingPoint num="14" id="5306" />
+<TGConnectingPoint num="15" id="5307" />
+<TGConnectingPoint num="16" id="5308" />
+<TGConnectingPoint num="17" id="5309" />
+<TGConnectingPoint num="18" id="5310" />
+<TGConnectingPoint num="19" id="5311" />
+<TGConnectingPoint num="20" id="5312" />
+<TGConnectingPoint num="21" id="5313" />
+<TGConnectingPoint num="22" id="5314" />
+<TGConnectingPoint num="23" id="5315" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="MainBridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="5341" >
+<cdparam x="354" y="618" />
+<sizeparam width="845" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="Crossbar" value="name" />
+<TGConnectingPoint num="0" id="5317" />
+<TGConnectingPoint num="1" id="5318" />
+<TGConnectingPoint num="2" id="5319" />
+<TGConnectingPoint num="3" id="5320" />
+<TGConnectingPoint num="4" id="5321" />
+<TGConnectingPoint num="5" id="5322" />
+<TGConnectingPoint num="6" id="5323" />
+<TGConnectingPoint num="7" id="5324" />
+<TGConnectingPoint num="8" id="5325" />
+<TGConnectingPoint num="9" id="5326" />
+<TGConnectingPoint num="10" id="5327" />
+<TGConnectingPoint num="11" id="5328" />
+<TGConnectingPoint num="12" id="5329" />
+<TGConnectingPoint num="13" id="5330" />
+<TGConnectingPoint num="14" id="5331" />
+<TGConnectingPoint num="15" id="5332" />
+<TGConnectingPoint num="16" id="5333" />
+<TGConnectingPoint num="17" id="5334" />
+<TGConnectingPoint num="18" id="5335" />
+<TGConnectingPoint num="19" id="5336" />
+<TGConnectingPoint num="20" id="5337" />
+<TGConnectingPoint num="21" id="5338" />
+<TGConnectingPoint num="22" id="5339" />
+<TGConnectingPoint num="23" id="5340" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="Crossbar" />
+<attributes byteDataSize="8"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="5366" >
+<cdparam x="306" y="737" />
+<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_Bridge" value="name" />
+<TGConnectingPoint num="0" id="5342" />
+<TGConnectingPoint num="1" id="5343" />
+<TGConnectingPoint num="2" id="5344" />
+<TGConnectingPoint num="3" id="5345" />
+<TGConnectingPoint num="4" id="5346" />
+<TGConnectingPoint num="5" id="5347" />
+<TGConnectingPoint num="6" id="5348" />
+<TGConnectingPoint num="7" id="5349" />
+<TGConnectingPoint num="8" id="5350" />
+<TGConnectingPoint num="9" id="5351" />
+<TGConnectingPoint num="10" id="5352" />
+<TGConnectingPoint num="11" id="5353" />
+<TGConnectingPoint num="12" id="5354" />
+<TGConnectingPoint num="13" id="5355" />
+<TGConnectingPoint num="14" id="5356" />
+<TGConnectingPoint num="15" id="5357" />
+<TGConnectingPoint num="16" id="5358" />
+<TGConnectingPoint num="17" id="5359" />
+<TGConnectingPoint num="18" id="5360" />
+<TGConnectingPoint num="19" id="5361" />
+<TGConnectingPoint num="20" id="5362" />
+<TGConnectingPoint num="21" id="5363" />
+<TGConnectingPoint num="22" id="5364" />
+<TGConnectingPoint num="23" id="5365" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="INTL_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="5391" >
+<cdparam x="376" y="949" />
+<sizeparam width="331" height="135" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_MSS" value="name" />
+<TGConnectingPoint num="0" id="5367" />
+<TGConnectingPoint num="1" id="5368" />
+<TGConnectingPoint num="2" id="5369" />
+<TGConnectingPoint num="3" id="5370" />
+<TGConnectingPoint num="4" id="5371" />
+<TGConnectingPoint num="5" id="5372" />
+<TGConnectingPoint num="6" id="5373" />
+<TGConnectingPoint num="7" id="5374" />
+<TGConnectingPoint num="8" id="5375" />
+<TGConnectingPoint num="9" id="5376" />
+<TGConnectingPoint num="10" id="5377" />
+<TGConnectingPoint num="11" id="5378" />
+<TGConnectingPoint num="12" id="5379" />
+<TGConnectingPoint num="13" id="5380" />
+<TGConnectingPoint num="14" id="5381" />
+<TGConnectingPoint num="15" id="5382" />
+<TGConnectingPoint num="16" id="5383" />
+<TGConnectingPoint num="17" id="5384" />
+<TGConnectingPoint num="18" id="5385" />
+<TGConnectingPoint num="19" id="5386" />
+<TGConnectingPoint num="20" id="5387" />
+<TGConnectingPoint num="21" id="5388" />
+<TGConnectingPoint num="22" id="5389" />
+<TGConnectingPoint num="23" id="5390" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="INTL_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="3" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5425" >
+<cdparam x="91" y="938" />
+<sizeparam width="234" height="140" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_PSS" value="name" />
+<TGConnectingPoint num="0" id="5401" />
+<TGConnectingPoint num="1" id="5402" />
+<TGConnectingPoint num="2" id="5403" />
+<TGConnectingPoint num="3" id="5404" />
+<TGConnectingPoint num="4" id="5405" />
+<TGConnectingPoint num="5" id="5406" />
+<TGConnectingPoint num="6" id="5407" />
+<TGConnectingPoint num="7" id="5408" />
+<TGConnectingPoint num="8" id="5409" />
+<TGConnectingPoint num="9" id="5410" />
+<TGConnectingPoint num="10" id="5411" />
+<TGConnectingPoint num="11" id="5412" />
+<TGConnectingPoint num="12" id="5413" />
+<TGConnectingPoint num="13" id="5414" />
+<TGConnectingPoint num="14" id="5415" />
+<TGConnectingPoint num="15" id="5416" />
+<TGConnectingPoint num="16" id="5417" />
+<TGConnectingPoint num="17" id="5418" />
+<TGConnectingPoint num="18" id="5419" />
+<TGConnectingPoint num="19" id="5420" />
+<TGConnectingPoint num="20" id="5421" />
+<TGConnectingPoint num="21" id="5422" />
+<TGConnectingPoint num="22" id="5423" />
+<TGConnectingPoint num="23" id="5424" />
+<extraparam>
+<info stereotype="CPURR" nodeName="INTL_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="2" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="5400" >
+<father id="5425" num="0" />
+<cdparam x="105" y="993" />
+<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="45" minY="0" maxY="100" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Chip2Octet" />
+<TGConnectingPoint num="0" id="5392" />
+<TGConnectingPoint num="1" id="5393" />
+<TGConnectingPoint num="2" id="5394" />
+<TGConnectingPoint num="3" id="5395" />
+<TGConnectingPoint num="4" id="5396" />
+<TGConnectingPoint num="5" id="5397" />
+<TGConnectingPoint num="6" id="5398" />
+<TGConnectingPoint num="7" id="5399" />
+<extraparam>
+<info value="Zigbee_TX::F_Chip2Octet" taskName="F_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="Interleaver operation" fatherComponentMECType="2" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1102" id="5450" >
+<cdparam x="231" y="832" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_Bus" value="name" />
+<TGConnectingPoint num="0" id="5426" />
+<TGConnectingPoint num="1" id="5427" />
+<TGConnectingPoint num="2" id="5428" />
+<TGConnectingPoint num="3" id="5429" />
+<TGConnectingPoint num="4" id="5430" />
+<TGConnectingPoint num="5" id="5431" />
+<TGConnectingPoint num="6" id="5432" />
+<TGConnectingPoint num="7" id="5433" />
+<TGConnectingPoint num="8" id="5434" />
+<TGConnectingPoint num="9" id="5435" />
+<TGConnectingPoint num="10" id="5436" />
+<TGConnectingPoint num="11" id="5437" />
+<TGConnectingPoint num="12" id="5438" />
+<TGConnectingPoint num="13" id="5439" />
+<TGConnectingPoint num="14" id="5440" />
+<TGConnectingPoint num="15" id="5441" />
+<TGConnectingPoint num="16" id="5442" />
+<TGConnectingPoint num="17" id="5443" />
+<TGConnectingPoint num="18" id="5444" />
+<TGConnectingPoint num="19" id="5445" />
+<TGConnectingPoint num="20" id="5446" />
+<TGConnectingPoint num="21" id="5447" />
+<TGConnectingPoint num="22" id="5448" />
+<TGConnectingPoint num="23" id="5449" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="INTL_Bus" />
+<attributes byteDataSize="8"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="5475" >
+<cdparam x="231" y="447" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_Bus" value="name" />
+<TGConnectingPoint num="0" id="5451" />
+<TGConnectingPoint num="1" id="5452" />
+<TGConnectingPoint num="2" id="5453" />
+<TGConnectingPoint num="3" id="5454" />
+<TGConnectingPoint num="4" id="5455" />
+<TGConnectingPoint num="5" id="5456" />
+<TGConnectingPoint num="6" id="5457" />
+<TGConnectingPoint num="7" id="5458" />
+<TGConnectingPoint num="8" id="5459" />
+<TGConnectingPoint num="9" id="5460" />
+<TGConnectingPoint num="10" id="5461" />
+<TGConnectingPoint num="11" id="5462" />
+<TGConnectingPoint num="12" id="5463" />
+<TGConnectingPoint num="13" id="5464" />
+<TGConnectingPoint num="14" id="5465" />
+<TGConnectingPoint num="15" id="5466" />
+<TGConnectingPoint num="16" id="5467" />
+<TGConnectingPoint num="17" id="5468" />
+<TGConnectingPoint num="18" id="5469" />
+<TGConnectingPoint num="19" id="5470" />
+<TGConnectingPoint num="20" id="5471" />
+<TGConnectingPoint num="21" id="5472" />
+<TGConnectingPoint num="22" id="5473" />
+<TGConnectingPoint num="23" id="5474" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="ADAIF_Bus" />
+<attributes byteDataSize="8"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5500" >
+<cdparam x="1147" y="408" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_DMA" value="name" />
+<TGConnectingPoint num="0" id="5476" />
+<TGConnectingPoint num="1" id="5477" />
+<TGConnectingPoint num="2" id="5478" />
+<TGConnectingPoint num="3" id="5479" />
+<TGConnectingPoint num="4" id="5480" />
+<TGConnectingPoint num="5" id="5481" />
+<TGConnectingPoint num="6" id="5482" />
+<TGConnectingPoint num="7" id="5483" />
+<TGConnectingPoint num="8" id="5484" />
+<TGConnectingPoint num="9" id="5485" />
+<TGConnectingPoint num="10" id="5486" />
+<TGConnectingPoint num="11" id="5487" />
+<TGConnectingPoint num="12" id="5488" />
+<TGConnectingPoint num="13" id="5489" />
+<TGConnectingPoint num="14" id="5490" />
+<TGConnectingPoint num="15" id="5491" />
+<TGConnectingPoint num="16" id="5492" />
+<TGConnectingPoint num="17" id="5493" />
+<TGConnectingPoint num="18" id="5494" />
+<TGConnectingPoint num="19" id="5495" />
+<TGConnectingPoint num="20" id="5496" />
+<TGConnectingPoint num="21" id="5497" />
+<TGConnectingPoint num="22" id="5498" />
+<TGConnectingPoint num="23" id="5499" />
+<extraparam>
+<info stereotype="CPURR" nodeName="FEP_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="5525" >
+<cdparam x="991" y="187" />
+<sizeparam width="255" height="183" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_MSS" value="name" />
+<TGConnectingPoint num="0" id="5501" />
+<TGConnectingPoint num="1" id="5502" />
+<TGConnectingPoint num="2" id="5503" />
+<TGConnectingPoint num="3" id="5504" />
+<TGConnectingPoint num="4" id="5505" />
+<TGConnectingPoint num="5" id="5506" />
+<TGConnectingPoint num="6" id="5507" />
+<TGConnectingPoint num="7" id="5508" />
+<TGConnectingPoint num="8" id="5509" />
+<TGConnectingPoint num="9" id="5510" />
+<TGConnectingPoint num="10" id="5511" />
+<TGConnectingPoint num="11" id="5512" />
+<TGConnectingPoint num="12" id="5513" />
+<TGConnectingPoint num="13" id="5514" />
+<TGConnectingPoint num="14" id="5515" />
+<TGConnectingPoint num="15" id="5516" />
+<TGConnectingPoint num="16" id="5517" />
+<TGConnectingPoint num="17" id="5518" />
+<TGConnectingPoint num="18" id="5519" />
+<TGConnectingPoint num="19" id="5520" />
+<TGConnectingPoint num="20" id="5521" />
+<TGConnectingPoint num="21" id="5522" />
+<TGConnectingPoint num="22" id="5523" />
+<TGConnectingPoint num="23" id="5524" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="FEP_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="0" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5577" >
+<cdparam x="680" y="193" />
+<sizeparam width="238" height="185" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_PSS" value="name" />
+<TGConnectingPoint num="0" id="5553" />
+<TGConnectingPoint num="1" id="5554" />
+<TGConnectingPoint num="2" id="5555" />
+<TGConnectingPoint num="3" id="5556" />
+<TGConnectingPoint num="4" id="5557" />
+<TGConnectingPoint num="5" id="5558" />
+<TGConnectingPoint num="6" id="5559" />
+<TGConnectingPoint num="7" id="5560" />
+<TGConnectingPoint num="8" id="5561" />
+<TGConnectingPoint num="9" id="5562" />
+<TGConnectingPoint num="10" id="5563" />
+<TGConnectingPoint num="11" id="5564" />
+<TGConnectingPoint num="12" id="5565" />
+<TGConnectingPoint num="13" id="5566" />
+<TGConnectingPoint num="14" id="5567" />
+<TGConnectingPoint num="15" id="5568" />
+<TGConnectingPoint num="16" id="5569" />
+<TGConnectingPoint num="17" id="5570" />
+<TGConnectingPoint num="18" id="5571" />
+<TGConnectingPoint num="19" id="5572" />
+<TGConnectingPoint num="20" id="5573" />
+<TGConnectingPoint num="21" id="5574" />
+<TGConnectingPoint num="22" id="5575" />
+<TGConnectingPoint num="23" id="5576" />
+<extraparam>
+<info stereotype="CPURR" nodeName="FEP_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="2" execcTime="1" clockRatio="1" MECType="1" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="5534" >
+<father id="5577" num="0" />
+<cdparam x="700" y="233" />
+<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="93" minY="0" maxY="145" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_CWL" />
+<TGConnectingPoint num="0" id="5526" />
+<TGConnectingPoint num="1" id="5527" />
+<TGConnectingPoint num="2" id="5528" />
+<TGConnectingPoint num="3" id="5529" />
+<TGConnectingPoint num="4" id="5530" />
+<TGConnectingPoint num="5" id="5531" />
+<TGConnectingPoint num="6" id="5532" />
+<TGConnectingPoint num="7" id="5533" />
+<extraparam>
+<info value="Zigbee_TX::X_CWL" taskName="X_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="CWL" fatherComponentMECType="1" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="5543" >
+<father id="5577" num="1" />
+<cdparam x="701" y="329" />
+<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="76" minY="0" maxY="145" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_Q" />
+<TGConnectingPoint num="0" id="5535" />
+<TGConnectingPoint num="1" id="5536" />
+<TGConnectingPoint num="2" id="5537" />
+<TGConnectingPoint num="3" id="5538" />
+<TGConnectingPoint num="4" id="5539" />
+<TGConnectingPoint num="5" id="5540" />
+<TGConnectingPoint num="6" id="5541" />
+<TGConnectingPoint num="7" id="5542" />
+<extraparam>
+<info value="Zigbee_TX::X_CWP_Q" taskName="X_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="5552" >
+<father id="5577" num="2" />
+<cdparam x="732" y="283" />
+<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="82" minY="0" maxY="145" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_I" />
+<TGConnectingPoint num="0" id="5544" />
+<TGConnectingPoint num="1" id="5545" />
+<TGConnectingPoint num="2" id="5546" />
+<TGConnectingPoint num="3" id="5547" />
+<TGConnectingPoint num="4" id="5548" />
+<TGConnectingPoint num="5" id="5549" />
+<TGConnectingPoint num="6" id="5550" />
+<TGConnectingPoint num="7" id="5551" />
+<extraparam>
+<info value="Zigbee_TX::X_CWP_I" taskName="X_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1106" id="5602" >
+<cdparam x="910" y="531" />
+<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_Bridge" value="name" />
+<TGConnectingPoint num="0" id="5578" />
+<TGConnectingPoint num="1" id="5579" />
+<TGConnectingPoint num="2" id="5580" />
+<TGConnectingPoint num="3" id="5581" />
+<TGConnectingPoint num="4" id="5582" />
+<TGConnectingPoint num="5" id="5583" />
+<TGConnectingPoint num="6" id="5584" />
+<TGConnectingPoint num="7" id="5585" />
+<TGConnectingPoint num="8" id="5586" />
+<TGConnectingPoint num="9" id="5587" />
+<TGConnectingPoint num="10" id="5588" />
+<TGConnectingPoint num="11" id="5589" />
+<TGConnectingPoint num="12" id="5590" />
+<TGConnectingPoint num="13" id="5591" />
+<TGConnectingPoint num="14" id="5592" />
+<TGConnectingPoint num="15" id="5593" />
+<TGConnectingPoint num="16" id="5594" />
+<TGConnectingPoint num="17" id="5595" />
+<TGConnectingPoint num="18" id="5596" />
+<TGConnectingPoint num="19" id="5597" />
+<TGConnectingPoint num="20" id="5598" />
+<TGConnectingPoint num="21" id="5599" />
+<TGConnectingPoint num="22" id="5600" />
+<TGConnectingPoint num="23" id="5601" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="FEP_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="5627" >
+<cdparam x="835" y="433" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_Bus" value="name" />
+<TGConnectingPoint num="0" id="5603" />
+<TGConnectingPoint num="1" id="5604" />
+<TGConnectingPoint num="2" id="5605" />
+<TGConnectingPoint num="3" id="5606" />
+<TGConnectingPoint num="4" id="5607" />
+<TGConnectingPoint num="5" id="5608" />
+<TGConnectingPoint num="6" id="5609" />
+<TGConnectingPoint num="7" id="5610" />
+<TGConnectingPoint num="8" id="5611" />
+<TGConnectingPoint num="9" id="5612" />
+<TGConnectingPoint num="10" id="5613" />
+<TGConnectingPoint num="11" id="5614" />
+<TGConnectingPoint num="12" id="5615" />
+<TGConnectingPoint num="13" id="5616" />
+<TGConnectingPoint num="14" id="5617" />
+<TGConnectingPoint num="15" id="5618" />
+<TGConnectingPoint num="16" id="5619" />
+<TGConnectingPoint num="17" id="5620" />
+<TGConnectingPoint num="18" id="5621" />
+<TGConnectingPoint num="19" id="5622" />
+<TGConnectingPoint num="20" id="5623" />
+<TGConnectingPoint num="21" id="5624" />
+<TGConnectingPoint num="22" id="5625" />
+<TGConnectingPoint num="23" id="5626" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="FEP_Bus" />
+<attributes byteDataSize="8"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5652" >
+<cdparam x="1141" y="748" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_DMA" value="name" />
+<TGConnectingPoint num="0" id="5628" />
+<TGConnectingPoint num="1" id="5629" />
+<TGConnectingPoint num="2" id="5630" />
+<TGConnectingPoint num="3" id="5631" />
+<TGConnectingPoint num="4" id="5632" />
+<TGConnectingPoint num="5" id="5633" />
+<TGConnectingPoint num="6" id="5634" />
+<TGConnectingPoint num="7" id="5635" />
+<TGConnectingPoint num="8" id="5636" />
+<TGConnectingPoint num="9" id="5637" />
+<TGConnectingPoint num="10" id="5638" />
+<TGConnectingPoint num="11" id="5639" />
+<TGConnectingPoint num="12" id="5640" />
+<TGConnectingPoint num="13" id="5641" />
+<TGConnectingPoint num="14" id="5642" />
+<TGConnectingPoint num="15" id="5643" />
+<TGConnectingPoint num="16" id="5644" />
+<TGConnectingPoint num="17" id="5645" />
+<TGConnectingPoint num="18" id="5646" />
+<TGConnectingPoint num="19" id="5647" />
+<TGConnectingPoint num="20" id="5648" />
+<TGConnectingPoint num="21" id="5649" />
+<TGConnectingPoint num="22" id="5650" />
+<TGConnectingPoint num="23" id="5651" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MAPPER_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="5677" >
+<cdparam x="920" y="780" />
+<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_Bridge" value="name" />
+<TGConnectingPoint num="0" id="5653" />
+<TGConnectingPoint num="1" id="5654" />
+<TGConnectingPoint num="2" id="5655" />
+<TGConnectingPoint num="3" id="5656" />
+<TGConnectingPoint num="4" id="5657" />
+<TGConnectingPoint num="5" id="5658" />
+<TGConnectingPoint num="6" id="5659" />
+<TGConnectingPoint num="7" id="5660" />
+<TGConnectingPoint num="8" id="5661" />
+<TGConnectingPoint num="9" id="5662" />
+<TGConnectingPoint num="10" id="5663" />
+<TGConnectingPoint num="11" id="5664" />
+<TGConnectingPoint num="12" id="5665" />
+<TGConnectingPoint num="13" id="5666" />
+<TGConnectingPoint num="14" id="5667" />
+<TGConnectingPoint num="15" id="5668" />
+<TGConnectingPoint num="16" id="5669" />
+<TGConnectingPoint num="17" id="5670" />
+<TGConnectingPoint num="18" id="5671" />
+<TGConnectingPoint num="19" id="5672" />
+<TGConnectingPoint num="20" id="5673" />
+<TGConnectingPoint num="21" id="5674" />
+<TGConnectingPoint num="22" id="5675" />
+<TGConnectingPoint num="23" id="5676" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="MAPPER_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="5702" >
+<cdparam x="1043" y="978" />
+<sizeparam width="314" height="125" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_MSS" value="name" />
+<TGConnectingPoint num="0" id="5678" />
+<TGConnectingPoint num="1" id="5679" />
+<TGConnectingPoint num="2" id="5680" />
+<TGConnectingPoint num="3" id="5681" />
+<TGConnectingPoint num="4" id="5682" />
+<TGConnectingPoint num="5" id="5683" />
+<TGConnectingPoint num="6" id="5684" />
+<TGConnectingPoint num="7" id="5685" />
+<TGConnectingPoint num="8" id="5686" />
+<TGConnectingPoint num="9" id="5687" />
+<TGConnectingPoint num="10" id="5688" />
+<TGConnectingPoint num="11" id="5689" />
+<TGConnectingPoint num="12" id="5690" />
+<TGConnectingPoint num="13" id="5691" />
+<TGConnectingPoint num="14" id="5692" />
+<TGConnectingPoint num="15" id="5693" />
+<TGConnectingPoint num="16" id="5694" />
+<TGConnectingPoint num="17" id="5695" />
+<TGConnectingPoint num="18" id="5696" />
+<TGConnectingPoint num="19" id="5697" />
+<TGConnectingPoint num="20" id="5698" />
+<TGConnectingPoint num="21" id="5699" />
+<TGConnectingPoint num="22" id="5700" />
+<TGConnectingPoint num="23" id="5701" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="MAPPER_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5736" >
+<cdparam x="734" y="981" />
+<sizeparam width="244" height="158" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_PSS" value="name" />
+<TGConnectingPoint num="0" id="5712" />
+<TGConnectingPoint num="1" id="5713" />
+<TGConnectingPoint num="2" id="5714" />
+<TGConnectingPoint num="3" id="5715" />
+<TGConnectingPoint num="4" id="5716" />
+<TGConnectingPoint num="5" id="5717" />
+<TGConnectingPoint num="6" id="5718" />
+<TGConnectingPoint num="7" id="5719" />
+<TGConnectingPoint num="8" id="5720" />
+<TGConnectingPoint num="9" id="5721" />
+<TGConnectingPoint num="10" id="5722" />
+<TGConnectingPoint num="11" id="5723" />
+<TGConnectingPoint num="12" id="5724" />
+<TGConnectingPoint num="13" id="5725" />
+<TGConnectingPoint num="14" id="5726" />
+<TGConnectingPoint num="15" id="5727" />
+<TGConnectingPoint num="16" id="5728" />
+<TGConnectingPoint num="17" id="5729" />
+<TGConnectingPoint num="18" id="5730" />
+<TGConnectingPoint num="19" id="5731" />
+<TGConnectingPoint num="20" id="5732" />
+<TGConnectingPoint num="21" id="5733" />
+<TGConnectingPoint num="22" id="5734" />
+<TGConnectingPoint num="23" id="5735" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MAPPER_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="3" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="5711" >
+<father id="5736" num="0" />
+<cdparam x="743" y="1030" />
+<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="21" minY="0" maxY="118" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Symbol2ChipSeq" />
+<TGConnectingPoint num="0" id="5703" />
+<TGConnectingPoint num="1" id="5704" />
+<TGConnectingPoint num="2" id="5705" />
+<TGConnectingPoint num="3" id="5706" />
+<TGConnectingPoint num="4" id="5707" />
+<TGConnectingPoint num="5" id="5708" />
+<TGConnectingPoint num="6" id="5709" />
+<TGConnectingPoint num="7" id="5710" />
+<extraparam>
+<info value="Zigbee_TX::X_Symbol2ChipSeq" taskName="X_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="Mapper operation" fatherComponentMECType="3" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1102" id="5761" >
+<cdparam x="845" y="875" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_Bus" value="name" />
+<TGConnectingPoint num="0" id="5737" />
+<TGConnectingPoint num="1" id="5738" />
+<TGConnectingPoint num="2" id="5739" />
+<TGConnectingPoint num="3" id="5740" />
+<TGConnectingPoint num="4" id="5741" />
+<TGConnectingPoint num="5" id="5742" />
+<TGConnectingPoint num="6" id="5743" />
+<TGConnectingPoint num="7" id="5744" />
+<TGConnectingPoint num="8" id="5745" />
+<TGConnectingPoint num="9" id="5746" />
+<TGConnectingPoint num="10" id="5747" />
+<TGConnectingPoint num="11" id="5748" />
+<TGConnectingPoint num="12" id="5749" />
+<TGConnectingPoint num="13" id="5750" />
+<TGConnectingPoint num="14" id="5751" />
+<TGConnectingPoint num="15" id="5752" />
+<TGConnectingPoint num="16" id="5753" />
+<TGConnectingPoint num="17" id="5754" />
+<TGConnectingPoint num="18" id="5755" />
+<TGConnectingPoint num="19" id="5756" />
+<TGConnectingPoint num="20" id="5757" />
+<TGConnectingPoint num="21" id="5758" />
+<TGConnectingPoint num="22" id="5759" />
+<TGConnectingPoint num="23" id="5760" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="MAPPER_Bus" />
+<attributes byteDataSize="8"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1108" id="5779" >
+<cdparam x="106" y="1266" />
+<sizeparam width="419" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_Symbol2ChipSeq_Chips2Octet" value="CP0" />
+<TGConnectingPoint num="0" id="5771" />
+<TGConnectingPoint num="1" id="5772" />
+<TGConnectingPoint num="2" id="5773" />
+<TGConnectingPoint num="3" id="5774" />
+<TGConnectingPoint num="4" id="5775" />
+<TGConnectingPoint num="5" id="5776" />
+<TGConnectingPoint num="6" id="5777" />
+<TGConnectingPoint num="7" id="5778" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_Symbol2ChipSeq_Chips2Octet" cpMEC="Single DMA" transferType1="0" transferType2="0" />
+<attributes reference="DMA_transfer" />
+<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="MAPPER_DMA" />
+<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="MAPPER_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="INTL_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="Crossbar, INTL_Bridge, INTL_Bus, MAPPER_Bridge, MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<mappedAttributes type="int" name="counter" value="1" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="5770" >
+<father id="5779" num="0" />
+<cdparam x="295" y="1302" />
+<sizeparam width="212" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="207" minY="0" maxY="45" />
+<infoparam name="TGComponent" value="Zigbee_TX::chip2octet_ch_in" />
+<TGConnectingPoint num="0" id="5762" />
+<TGConnectingPoint num="1" id="5763" />
+<TGConnectingPoint num="2" id="5764" />
+<TGConnectingPoint num="3" id="5765" />
+<TGConnectingPoint num="4" id="5766" />
+<TGConnectingPoint num="5" id="5767" />
+<TGConnectingPoint num="6" id="5768" />
+<TGConnectingPoint num="7" id="5769" />
+<extraparam>
+<info value="Zigbee_TX::chip2octet_ch_in" portName="chip2octet_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="INTL_MSS" bufferType="3" packedBinaryIn="" width="" bitInOffset="" inputOffset="" packedBinaryOut="" bitOutOffset="" outputOffset="" offsetPerm="" lengthPerm="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1108" id="5797" >
+<cdparam x="105" y="1396" />
+<sizeparam width="405" height="88" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_Chip2Octet_CWL" value="CP0" />
+<TGConnectingPoint num="0" id="5789" />
+<TGConnectingPoint num="1" id="5790" />
+<TGConnectingPoint num="2" id="5791" />
+<TGConnectingPoint num="3" id="5792" />
+<TGConnectingPoint num="4" id="5793" />
+<TGConnectingPoint num="5" id="5794" />
+<TGConnectingPoint num="6" id="5795" />
+<TGConnectingPoint num="7" id="5796" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_Chip2Octet_CWL" cpMEC="Single DMA" transferType1="0" transferType2="0" />
+<attributes reference="DMA_transfer" />
+<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="INTL_DMA" />
+<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="INTL_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="FEP_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="INTL_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappedAttributes type="int" name="counter" value="1" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="5788" >
+<father id="5797" num="0" />
+<cdparam x="327" y="1437" />
+<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="241" minY="0" maxY="48" />
+<infoparam name="TGComponent" value="Zigbee_TX::cwl_ch_in" />
+<TGConnectingPoint num="0" id="5780" />
+<TGConnectingPoint num="1" id="5781" />
+<TGConnectingPoint num="2" id="5782" />
+<TGConnectingPoint num="3" id="5783" />
+<TGConnectingPoint num="4" id="5784" />
+<TGConnectingPoint num="5" id="5785" />
+<TGConnectingPoint num="6" id="5786" />
+<TGConnectingPoint num="7" id="5787" />
+<extraparam>
+<info value="Zigbee_TX::cwl_ch_in" portName="cwl_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="FEP_MSS" bufferType="0" baseAddress="0x2" numSamples="1" bank="0" dataType="int8" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1108" id="5815" >
+<cdparam x="626" y="1227" />
+<sizeparam width="295" height="145" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_sink" value="CP0" />
+<TGConnectingPoint num="0" id="5807" />
+<TGConnectingPoint num="1" id="5808" />
+<TGConnectingPoint num="2" id="5809" />
+<TGConnectingPoint num="3" id="5810" />
+<TGConnectingPoint num="4" id="5811" />
+<TGConnectingPoint num="5" id="5812" />
+<TGConnectingPoint num="6" id="5813" />
+<TGConnectingPoint num="7" id="5814" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_sink" cpMEC="Double DMA" transferType1="0" transferType2="0" />
+<attributes reference="Double_DMA_transfer" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_2" architectureUnit="MainCPU" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="FEP_DMA" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_2" architectureUnit="FEP_DMA" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="FEP_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_2" architectureUnit="FEP_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_2" architectureUnit="ADAIF_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="ADAIF_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_5" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_6" architectureUnit="FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_7" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_8" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappedAttributes type="int" name="counter1" value="2" />
+<mappedAttributes type="int" name="counter2" value="2" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="5806" >
+<father id="5815" num="0" />
+<cdparam x="700" y="1290" />
+<sizeparam width="170" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="125" minY="0" maxY="105" />
+<infoparam name="TGComponent" value="Zigbee_TX::sink_ch_in" />
+<TGConnectingPoint num="0" id="5798" />
+<TGConnectingPoint num="1" id="5799" />
+<TGConnectingPoint num="2" id="5800" />
+<TGConnectingPoint num="3" id="5801" />
+<TGConnectingPoint num="4" id="5802" />
+<TGConnectingPoint num="5" id="5803" />
+<TGConnectingPoint num="6" id="5804" />
+<TGConnectingPoint num="7" id="5805" />
+<extraparam>
+<info value="Zigbee_TX::sink_ch_in" portName="sink_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="ADAIF_MSS" bufferType="2" numSamples="1" baseAddress="0x2" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1108" id="5833" >
+<cdparam x="106" y="1143" />
+<sizeparam width="421" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_Source_to_Bits2Symbol" value="CP0" />
+<TGConnectingPoint num="0" id="5825" />
+<TGConnectingPoint num="1" id="5826" />
+<TGConnectingPoint num="2" id="5827" />
+<TGConnectingPoint num="3" id="5828" />
+<TGConnectingPoint num="4" id="5829" />
+<TGConnectingPoint num="5" id="5830" />
+<TGConnectingPoint num="6" id="5831" />
+<TGConnectingPoint num="7" id="5832" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_Source_to_Bits2Symbol" cpMEC="Memory Copy" transferType1="0" transferType2="0" />
+<attributes reference="CP_Memory_Copy" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="CPU_Controller" architectureUnit="MainCPU" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="Dst_Storage_Instance" architectureUnit="MAPPER_MSS" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="Src_Storage_Instance" architectureUnit="MainMemory" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="Transfer_Instance2" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<mappedAttributes type="int" name="counter" value="8" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="5824" >
+<father id="5833" num="0" />
+<cdparam x="157" y="1179" />
+<sizeparam width="247" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="174" minY="0" maxY="45" />
+<infoparam name="TGComponent" value="Zigbee_TX::symbol2ChipSeq_ch_in" />
+<TGConnectingPoint num="0" id="5816" />
+<TGConnectingPoint num="1" id="5817" />
+<TGConnectingPoint num="2" id="5818" />
+<TGConnectingPoint num="3" id="5819" />
+<TGConnectingPoint num="4" id="5820" />
+<TGConnectingPoint num="5" id="5821" />
+<TGConnectingPoint num="6" id="5822" />
+<TGConnectingPoint num="7" id="5823" />
+<extraparam>
+<info value="Zigbee_TX::symbol2ChipSeq_ch_in" portName="symbol2ChipSeq_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="MAPPER_MSS" bufferType="1" numSamplesDataIn="1" baseAddressDataIn="0x2" bitsPerSymbolDataIn="3" symmetricalValueDataIn="OFF" baseAddressDataOut="0x4" baseAddressLUT="0x5" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="125" id="5834" >
+<cdparam x="1367" y="660" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1367" y="660" id="5295" />
+<P2  x="1199" y="643" id="5321" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5835" >
+<cdparam x="1147" y="508" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1147" y="508" id="5481" />
+<P2  x="1199" y="618" id="5319" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5836" >
+<cdparam x="1298" y="875" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1216" y="748" id="5629" />
+<P2  x="1199" y="668" id="5324" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5837" >
+<cdparam x="1019" y="805" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="970" y="780" id="5654" />
+<P2  x="987" y="668" id="5332" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5838" >
+<cdparam x="1004" y="531" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="960" y="566" id="5584" />
+<P2  x="987" y="618" id="5326" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5839" >
+<cdparam x="1185" y="660" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1467" y="660" id="5296" />
+<P2  x="1527" y="660" id="5270" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5840" >
+<cdparam x="356" y="788" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="788" id="5348" />
+<P2  x="356" y="832" id="5427" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5841" >
+<cdparam x="554" y="806" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="560" y="807" id="5011" />
+<P2  x="565" y="668" id="5331" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5842" >
+<cdparam x="559" y="863" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="560" y="857" id="5014" />
+<P2  x="481" y="857" id="5430" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5843" >
+<cdparam x="586" y="970" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="541" y="949" id="5368" />
+<P2  x="418" y="882" id="5441" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5844" >
+<cdparam x="165" y="927" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="208" y="938" id="5402" />
+<P2  x="293" y="882" id="5440" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5845" >
+<cdparam x="355" y="576" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="580" id="5126" />
+<P2  x="354" y="618" id="5317" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5846" >
+<cdparam x="355" y="541" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="545" id="5121" />
+<P2  x="356" y="497" id="5457" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5847" >
+<cdparam x="543" y="522" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="543" y="522" id="5041" />
+<P2  x="565" y="618" id="5325" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5848" >
+<cdparam x="536" y="475" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="543" y="472" id="5039" />
+<P2  x="481" y="472" id="5455" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5849" >
+<cdparam x="549" y="337" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="477" y="377" id="5067" />
+<P2  x="418" y="447" id="5460" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5850" >
+<cdparam x="155" y="323" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="216" y="382" id="5101" />
+<P2  x="293" y="447" id="5459" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5851" >
+<cdparam x="357" y="778" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="737" id="5343" />
+<P2  x="354" y="668" id="5322" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5852" >
+<cdparam x="1654" y="758" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1652" y="737" id="5146" />
+<P2  x="1652" y="685" id="5273" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5853" >
+<cdparam x="1651" y="573" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1652" y="586" id="5248" />
+<P2  x="1652" y="635" id="5268" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5854" >
+<cdparam x="959" y="527" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="960" y="531" id="5579" />
+<P2  x="960" y="483" id="5609" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5855" >
+<cdparam x="1140" y="461" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1147" y="458" id="5479" />
+<P2  x="1085" y="458" id="5607" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5856" >
+<cdparam x="1189" y="374" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1118" y="370" id="5507" />
+<P2  x="1022" y="433" id="5612" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5857" >
+<cdparam x="795" y="360" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="799" y="378" id="5559" />
+<P2  x="897" y="433" id="5611" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5858" >
+<cdparam x="970" y="831" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="970" y="831" id="5659" />
+<P2  x="970" y="875" id="5738" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5859" >
+<cdparam x="1173" y="906" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1141" y="798" id="5631" />
+<P2  x="1095" y="900" id="5741" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5860" >
+<cdparam x="1200" y="1013" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1200" y="978" id="5679" />
+<P2  x="1032" y="925" id="5752" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="5861" >
+<cdparam x="779" y="970" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="856" y="981" id="5713" />
+<P2  x="907" y="925" id="5751" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+
+</TMLArchiDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML Architecture" nameTab="Mapping_1" >
+<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1900" minY="10" maxY="1900" attributes="0" masterClockFrequency="200" >
+<COMPONENT type="1100" id="5886" >
+<cdparam x="560" y="807" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_DMA" value="name" />
+<TGConnectingPoint num="0" id="5862" />
+<TGConnectingPoint num="1" id="5863" />
+<TGConnectingPoint num="2" id="5864" />
+<TGConnectingPoint num="3" id="5865" />
+<TGConnectingPoint num="4" id="5866" />
+<TGConnectingPoint num="5" id="5867" />
+<TGConnectingPoint num="6" id="5868" />
+<TGConnectingPoint num="7" id="5869" />
+<TGConnectingPoint num="8" id="5870" />
+<TGConnectingPoint num="9" id="5871" />
+<TGConnectingPoint num="10" id="5872" />
+<TGConnectingPoint num="11" id="5873" />
+<TGConnectingPoint num="12" id="5874" />
+<TGConnectingPoint num="13" id="5875" />
+<TGConnectingPoint num="14" id="5876" />
+<TGConnectingPoint num="15" id="5877" />
+<TGConnectingPoint num="16" id="5878" />
+<TGConnectingPoint num="17" id="5879" />
+<TGConnectingPoint num="18" id="5880" />
+<TGConnectingPoint num="19" id="5881" />
+<TGConnectingPoint num="20" id="5882" />
+<TGConnectingPoint num="21" id="5883" />
+<TGConnectingPoint num="22" id="5884" />
+<TGConnectingPoint num="23" id="5885" />
+<extraparam>
+<info stereotype="CPURR" nodeName="INTL_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5911" >
+<cdparam x="543" y="422" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_DMA" value="name" />
+<TGConnectingPoint num="0" id="5887" />
+<TGConnectingPoint num="1" id="5888" />
+<TGConnectingPoint num="2" id="5889" />
+<TGConnectingPoint num="3" id="5890" />
+<TGConnectingPoint num="4" id="5891" />
+<TGConnectingPoint num="5" id="5892" />
+<TGConnectingPoint num="6" id="5893" />
+<TGConnectingPoint num="7" id="5894" />
+<TGConnectingPoint num="8" id="5895" />
+<TGConnectingPoint num="9" id="5896" />
+<TGConnectingPoint num="10" id="5897" />
+<TGConnectingPoint num="11" id="5898" />
+<TGConnectingPoint num="12" id="5899" />
+<TGConnectingPoint num="13" id="5900" />
+<TGConnectingPoint num="14" id="5901" />
+<TGConnectingPoint num="15" id="5902" />
+<TGConnectingPoint num="16" id="5903" />
+<TGConnectingPoint num="17" id="5904" />
+<TGConnectingPoint num="18" id="5905" />
+<TGConnectingPoint num="19" id="5906" />
+<TGConnectingPoint num="20" id="5907" />
+<TGConnectingPoint num="21" id="5908" />
+<TGConnectingPoint num="22" id="5909" />
+<TGConnectingPoint num="23" id="5910" />
+<extraparam>
+<info stereotype="CPURR" nodeName="ADAIF_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="5936" >
+<cdparam x="354" y="243" />
+<sizeparam width="200" height="152" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_MSS" value="name" />
+<TGConnectingPoint num="0" id="5912" />
+<TGConnectingPoint num="1" id="5913" />
+<TGConnectingPoint num="2" id="5914" />
+<TGConnectingPoint num="3" id="5915" />
+<TGConnectingPoint num="4" id="5916" />
+<TGConnectingPoint num="5" id="5917" />
+<TGConnectingPoint num="6" id="5918" />
+<TGConnectingPoint num="7" id="5919" />
+<TGConnectingPoint num="8" id="5920" />
+<TGConnectingPoint num="9" id="5921" />
+<TGConnectingPoint num="10" id="5922" />
+<TGConnectingPoint num="11" id="5923" />
+<TGConnectingPoint num="12" id="5924" />
+<TGConnectingPoint num="13" id="5925" />
+<TGConnectingPoint num="14" id="5926" />
+<TGConnectingPoint num="15" id="5927" />
+<TGConnectingPoint num="16" id="5928" />
+<TGConnectingPoint num="17" id="5929" />
+<TGConnectingPoint num="18" id="5930" />
+<TGConnectingPoint num="19" id="5931" />
+<TGConnectingPoint num="20" id="5932" />
+<TGConnectingPoint num="21" id="5933" />
+<TGConnectingPoint num="22" id="5934" />
+<TGConnectingPoint num="23" id="5935" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="ADAIF_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="2" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="5970" >
+<cdparam x="29" y="215" />
+<sizeparam width="252" height="181" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_PSS" value="name" />
+<TGConnectingPoint num="0" id="5946" />
+<TGConnectingPoint num="1" id="5947" />
+<TGConnectingPoint num="2" id="5948" />
+<TGConnectingPoint num="3" id="5949" />
+<TGConnectingPoint num="4" id="5950" />
+<TGConnectingPoint num="5" id="5951" />
+<TGConnectingPoint num="6" id="5952" />
+<TGConnectingPoint num="7" id="5953" />
+<TGConnectingPoint num="8" id="5954" />
+<TGConnectingPoint num="9" id="5955" />
+<TGConnectingPoint num="10" id="5956" />
+<TGConnectingPoint num="11" id="5957" />
+<TGConnectingPoint num="12" id="5958" />
+<TGConnectingPoint num="13" id="5959" />
+<TGConnectingPoint num="14" id="5960" />
+<TGConnectingPoint num="15" id="5961" />
+<TGConnectingPoint num="16" id="5962" />
+<TGConnectingPoint num="17" id="5963" />
+<TGConnectingPoint num="18" id="5964" />
+<TGConnectingPoint num="19" id="5965" />
+<TGConnectingPoint num="20" id="5966" />
+<TGConnectingPoint num="21" id="5967" />
+<TGConnectingPoint num="22" id="5968" />
+<TGConnectingPoint num="23" id="5969" />
+<extraparam>
+<info stereotype="CPURR" nodeName="ADAIF_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="4" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="5945" >
+<father id="5970" num="0" />
+<cdparam x="48" y="315" />
+<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="106" minY="0" maxY="141" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Sink" />
+<TGConnectingPoint num="0" id="5937" />
+<TGConnectingPoint num="1" id="5938" />
+<TGConnectingPoint num="2" id="5939" />
+<TGConnectingPoint num="3" id="5940" />
+<TGConnectingPoint num="4" id="5941" />
+<TGConnectingPoint num="5" id="5942" />
+<TGConnectingPoint num="6" id="5943" />
+<TGConnectingPoint num="7" id="5944" />
+<extraparam>
+<info value="Zigbee_TX::X_Sink" taskName="X_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="Adaif operation" fatherComponentMECType="4" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1106" id="5995" >
+<cdparam x="306" y="545" />
+<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_Bridge" value="name" />
+<TGConnectingPoint num="0" id="5971" />
+<TGConnectingPoint num="1" id="5972" />
+<TGConnectingPoint num="2" id="5973" />
+<TGConnectingPoint num="3" id="5974" />
+<TGConnectingPoint num="4" id="5975" />
+<TGConnectingPoint num="5" id="5976" />
+<TGConnectingPoint num="6" id="5977" />
+<TGConnectingPoint num="7" id="5978" />
+<TGConnectingPoint num="8" id="5979" />
+<TGConnectingPoint num="9" id="5980" />
+<TGConnectingPoint num="10" id="5981" />
+<TGConnectingPoint num="11" id="5982" />
+<TGConnectingPoint num="12" id="5983" />
+<TGConnectingPoint num="13" id="5984" />
+<TGConnectingPoint num="14" id="5985" />
+<TGConnectingPoint num="15" id="5986" />
+<TGConnectingPoint num="16" id="5987" />
+<TGConnectingPoint num="17" id="5988" />
+<TGConnectingPoint num="18" id="5989" />
+<TGConnectingPoint num="19" id="5990" />
+<TGConnectingPoint num="20" id="5991" />
+<TGConnectingPoint num="21" id="5992" />
+<TGConnectingPoint num="22" id="5993" />
+<TGConnectingPoint num="23" id="5994" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="ADAIF_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="6020" >
+<cdparam x="1544" y="737" />
+<sizeparam width="216" height="140" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainMemory" value="name" />
+<TGConnectingPoint num="0" id="5996" />
+<TGConnectingPoint num="1" id="5997" />
+<TGConnectingPoint num="2" id="5998" />
+<TGConnectingPoint num="3" id="5999" />
+<TGConnectingPoint num="4" id="6000" />
+<TGConnectingPoint num="5" id="6001" />
+<TGConnectingPoint num="6" id="6002" />
+<TGConnectingPoint num="7" id="6003" />
+<TGConnectingPoint num="8" id="6004" />
+<TGConnectingPoint num="9" id="6005" />
+<TGConnectingPoint num="10" id="6006" />
+<TGConnectingPoint num="11" id="6007" />
+<TGConnectingPoint num="12" id="6008" />
+<TGConnectingPoint num="13" id="6009" />
+<TGConnectingPoint num="14" id="6010" />
+<TGConnectingPoint num="15" id="6011" />
+<TGConnectingPoint num="16" id="6012" />
+<TGConnectingPoint num="17" id="6013" />
+<TGConnectingPoint num="18" id="6014" />
+<TGConnectingPoint num="19" id="6015" />
+<TGConnectingPoint num="20" id="6016" />
+<TGConnectingPoint num="21" id="6017" />
+<TGConnectingPoint num="22" id="6018" />
+<TGConnectingPoint num="23" id="6019" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="MainMemory" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="4" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="6117" >
+<cdparam x="1444" y="293" />
+<sizeparam width="417" height="293" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainCPU" value="name" />
+<TGConnectingPoint num="0" id="6093" />
+<TGConnectingPoint num="1" id="6094" />
+<TGConnectingPoint num="2" id="6095" />
+<TGConnectingPoint num="3" id="6096" />
+<TGConnectingPoint num="4" id="6097" />
+<TGConnectingPoint num="5" id="6098" />
+<TGConnectingPoint num="6" id="6099" />
+<TGConnectingPoint num="7" id="6100" />
+<TGConnectingPoint num="8" id="6101" />
+<TGConnectingPoint num="9" id="6102" />
+<TGConnectingPoint num="10" id="6103" />
+<TGConnectingPoint num="11" id="6104" />
+<TGConnectingPoint num="12" id="6105" />
+<TGConnectingPoint num="13" id="6106" />
+<TGConnectingPoint num="14" id="6107" />
+<TGConnectingPoint num="15" id="6108" />
+<TGConnectingPoint num="16" id="6109" />
+<TGConnectingPoint num="17" id="6110" />
+<TGConnectingPoint num="18" id="6111" />
+<TGConnectingPoint num="19" id="6112" />
+<TGConnectingPoint num="20" id="6113" />
+<TGConnectingPoint num="21" id="6114" />
+<TGConnectingPoint num="22" id="6115" />
+<TGConnectingPoint num="23" id="6116" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MainCPU" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="6029" >
+<father id="6117" num="0" />
+<cdparam x="1465" y="339" />
+<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Source" />
+<TGConnectingPoint num="0" id="6021" />
+<TGConnectingPoint num="1" id="6022" />
+<TGConnectingPoint num="2" id="6023" />
+<TGConnectingPoint num="3" id="6024" />
+<TGConnectingPoint num="4" id="6025" />
+<TGConnectingPoint num="5" id="6026" />
+<TGConnectingPoint num="6" id="6027" />
+<TGConnectingPoint num="7" id="6028" />
+<extraparam>
+<info value="Zigbee_TX::F_Source" taskName="F_Source" referenceTaskName="Zigbee_TX" priority="0" operation="F_Source" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6038" >
+<father id="6117" num="1" />
+<cdparam x="1466" y="395" />
+<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Source" />
+<TGConnectingPoint num="0" id="6030" />
+<TGConnectingPoint num="1" id="6031" />
+<TGConnectingPoint num="2" id="6032" />
+<TGConnectingPoint num="3" id="6033" />
+<TGConnectingPoint num="4" id="6034" />
+<TGConnectingPoint num="5" id="6035" />
+<TGConnectingPoint num="6" id="6036" />
+<TGConnectingPoint num="7" id="6037" />
+<extraparam>
+<info value="Zigbee_TX::X_Source" taskName="X_Source" referenceTaskName="Zigbee_TX" priority="0" operation="X_Source" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6047" >
+<father id="6117" num="2" />
+<cdparam x="1466" y="456" />
+<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="194" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Symbol2ChipSeq" />
+<TGConnectingPoint num="0" id="6039" />
+<TGConnectingPoint num="1" id="6040" />
+<TGConnectingPoint num="2" id="6041" />
+<TGConnectingPoint num="3" id="6042" />
+<TGConnectingPoint num="4" id="6043" />
+<TGConnectingPoint num="5" id="6044" />
+<TGConnectingPoint num="6" id="6045" />
+<TGConnectingPoint num="7" id="6046" />
+<extraparam>
+<info value="Zigbee_TX::F_Symbol2ChipSeq" taskName="F_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="F_Symbol2ChipSeq" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6056" >
+<father id="6117" num="3" />
+<cdparam x="1466" y="518" />
+<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="228" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Chip2Octet" />
+<TGConnectingPoint num="0" id="6048" />
+<TGConnectingPoint num="1" id="6049" />
+<TGConnectingPoint num="2" id="6050" />
+<TGConnectingPoint num="3" id="6051" />
+<TGConnectingPoint num="4" id="6052" />
+<TGConnectingPoint num="5" id="6053" />
+<TGConnectingPoint num="6" id="6054" />
+<TGConnectingPoint num="7" id="6055" />
+<extraparam>
+<info value="Zigbee_TX::F_Chip2Octet" taskName="F_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="F_Chip2Octet" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6065" >
+<father id="6117" num="4" />
+<cdparam x="1688" y="405" />
+<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="271" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Sink" />
+<TGConnectingPoint num="0" id="6057" />
+<TGConnectingPoint num="1" id="6058" />
+<TGConnectingPoint num="2" id="6059" />
+<TGConnectingPoint num="3" id="6060" />
+<TGConnectingPoint num="4" id="6061" />
+<TGConnectingPoint num="5" id="6062" />
+<TGConnectingPoint num="6" id="6063" />
+<TGConnectingPoint num="7" id="6064" />
+<extraparam>
+<info value="Zigbee_TX::F_Sink" taskName="F_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="F_Sink" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6074" >
+<father id="6117" num="5" />
+<cdparam x="1691" y="345" />
+<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="272" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_CWL" />
+<TGConnectingPoint num="0" id="6066" />
+<TGConnectingPoint num="1" id="6067" />
+<TGConnectingPoint num="2" id="6068" />
+<TGConnectingPoint num="3" id="6069" />
+<TGConnectingPoint num="4" id="6070" />
+<TGConnectingPoint num="5" id="6071" />
+<TGConnectingPoint num="6" id="6072" />
+<TGConnectingPoint num="7" id="6073" />
+<extraparam>
+<info value="Zigbee_TX::F_CWL" taskName="F_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWL" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6083" >
+<father id="6117" num="6" />
+<cdparam x="1696" y="456" />
+<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="255" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_Q" />
+<TGConnectingPoint num="0" id="6075" />
+<TGConnectingPoint num="1" id="6076" />
+<TGConnectingPoint num="2" id="6077" />
+<TGConnectingPoint num="3" id="6078" />
+<TGConnectingPoint num="4" id="6079" />
+<TGConnectingPoint num="5" id="6080" />
+<TGConnectingPoint num="6" id="6081" />
+<TGConnectingPoint num="7" id="6082" />
+<extraparam>
+<info value="Zigbee_TX::F_CWP_Q" taskName="F_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_Q" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6092" >
+<father id="6117" num="7" />
+<cdparam x="1686" y="522" />
+<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="261" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_I" />
+<TGConnectingPoint num="0" id="6084" />
+<TGConnectingPoint num="1" id="6085" />
+<TGConnectingPoint num="2" id="6086" />
+<TGConnectingPoint num="3" id="6087" />
+<TGConnectingPoint num="4" id="6088" />
+<TGConnectingPoint num="5" id="6089" />
+<TGConnectingPoint num="6" id="6090" />
+<TGConnectingPoint num="7" id="6091" />
+<extraparam>
+<info value="Zigbee_TX::F_CWP_I" taskName="F_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_I" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1102" id="6142" >
+<cdparam x="1527" y="635" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainBus" value="name" />
+<TGConnectingPoint num="0" id="6118" />
+<TGConnectingPoint num="1" id="6119" />
+<TGConnectingPoint num="2" id="6120" />
+<TGConnectingPoint num="3" id="6121" />
+<TGConnectingPoint num="4" id="6122" />
+<TGConnectingPoint num="5" id="6123" />
+<TGConnectingPoint num="6" id="6124" />
+<TGConnectingPoint num="7" id="6125" />
+<TGConnectingPoint num="8" id="6126" />
+<TGConnectingPoint num="9" id="6127" />
+<TGConnectingPoint num="10" id="6128" />
+<TGConnectingPoint num="11" id="6129" />
+<TGConnectingPoint num="12" id="6130" />
+<TGConnectingPoint num="13" id="6131" />
+<TGConnectingPoint num="14" id="6132" />
+<TGConnectingPoint num="15" id="6133" />
+<TGConnectingPoint num="16" id="6134" />
+<TGConnectingPoint num="17" id="6135" />
+<TGConnectingPoint num="18" id="6136" />
+<TGConnectingPoint num="19" id="6137" />
+<TGConnectingPoint num="20" id="6138" />
+<TGConnectingPoint num="21" id="6139" />
+<TGConnectingPoint num="22" id="6140" />
+<TGConnectingPoint num="23" id="6141" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="MainBus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="6167" >
+<cdparam x="1367" y="610" />
+<sizeparam width="100" height="100" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainBridge" value="name" />
+<TGConnectingPoint num="0" id="6143" />
+<TGConnectingPoint num="1" id="6144" />
+<TGConnectingPoint num="2" id="6145" />
+<TGConnectingPoint num="3" id="6146" />
+<TGConnectingPoint num="4" id="6147" />
+<TGConnectingPoint num="5" id="6148" />
+<TGConnectingPoint num="6" id="6149" />
+<TGConnectingPoint num="7" id="6150" />
+<TGConnectingPoint num="8" id="6151" />
+<TGConnectingPoint num="9" id="6152" />
+<TGConnectingPoint num="10" id="6153" />
+<TGConnectingPoint num="11" id="6154" />
+<TGConnectingPoint num="12" id="6155" />
+<TGConnectingPoint num="13" id="6156" />
+<TGConnectingPoint num="14" id="6157" />
+<TGConnectingPoint num="15" id="6158" />
+<TGConnectingPoint num="16" id="6159" />
+<TGConnectingPoint num="17" id="6160" />
+<TGConnectingPoint num="18" id="6161" />
+<TGConnectingPoint num="19" id="6162" />
+<TGConnectingPoint num="20" id="6163" />
+<TGConnectingPoint num="21" id="6164" />
+<TGConnectingPoint num="22" id="6165" />
+<TGConnectingPoint num="23" id="6166" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="MainBridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="6192" >
+<cdparam x="231" y="635" />
+<sizeparam width="845" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="Crossbar" value="name" />
+<TGConnectingPoint num="0" id="6168" />
+<TGConnectingPoint num="1" id="6169" />
+<TGConnectingPoint num="2" id="6170" />
+<TGConnectingPoint num="3" id="6171" />
+<TGConnectingPoint num="4" id="6172" />
+<TGConnectingPoint num="5" id="6173" />
+<TGConnectingPoint num="6" id="6174" />
+<TGConnectingPoint num="7" id="6175" />
+<TGConnectingPoint num="8" id="6176" />
+<TGConnectingPoint num="9" id="6177" />
+<TGConnectingPoint num="10" id="6178" />
+<TGConnectingPoint num="11" id="6179" />
+<TGConnectingPoint num="12" id="6180" />
+<TGConnectingPoint num="13" id="6181" />
+<TGConnectingPoint num="14" id="6182" />
+<TGConnectingPoint num="15" id="6183" />
+<TGConnectingPoint num="16" id="6184" />
+<TGConnectingPoint num="17" id="6185" />
+<TGConnectingPoint num="18" id="6186" />
+<TGConnectingPoint num="19" id="6187" />
+<TGConnectingPoint num="20" id="6188" />
+<TGConnectingPoint num="21" id="6189" />
+<TGConnectingPoint num="22" id="6190" />
+<TGConnectingPoint num="23" id="6191" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="Crossbar" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="6217" >
+<cdparam x="306" y="737" />
+<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_Bridge" value="name" />
+<TGConnectingPoint num="0" id="6193" />
+<TGConnectingPoint num="1" id="6194" />
+<TGConnectingPoint num="2" id="6195" />
+<TGConnectingPoint num="3" id="6196" />
+<TGConnectingPoint num="4" id="6197" />
+<TGConnectingPoint num="5" id="6198" />
+<TGConnectingPoint num="6" id="6199" />
+<TGConnectingPoint num="7" id="6200" />
+<TGConnectingPoint num="8" id="6201" />
+<TGConnectingPoint num="9" id="6202" />
+<TGConnectingPoint num="10" id="6203" />
+<TGConnectingPoint num="11" id="6204" />
+<TGConnectingPoint num="12" id="6205" />
+<TGConnectingPoint num="13" id="6206" />
+<TGConnectingPoint num="14" id="6207" />
+<TGConnectingPoint num="15" id="6208" />
+<TGConnectingPoint num="16" id="6209" />
+<TGConnectingPoint num="17" id="6210" />
+<TGConnectingPoint num="18" id="6211" />
+<TGConnectingPoint num="19" id="6212" />
+<TGConnectingPoint num="20" id="6213" />
+<TGConnectingPoint num="21" id="6214" />
+<TGConnectingPoint num="22" id="6215" />
+<TGConnectingPoint num="23" id="6216" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="INTL_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="6242" >
+<cdparam x="376" y="949" />
+<sizeparam width="331" height="135" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_MSS" value="name" />
+<TGConnectingPoint num="0" id="6218" />
+<TGConnectingPoint num="1" id="6219" />
+<TGConnectingPoint num="2" id="6220" />
+<TGConnectingPoint num="3" id="6221" />
+<TGConnectingPoint num="4" id="6222" />
+<TGConnectingPoint num="5" id="6223" />
+<TGConnectingPoint num="6" id="6224" />
+<TGConnectingPoint num="7" id="6225" />
+<TGConnectingPoint num="8" id="6226" />
+<TGConnectingPoint num="9" id="6227" />
+<TGConnectingPoint num="10" id="6228" />
+<TGConnectingPoint num="11" id="6229" />
+<TGConnectingPoint num="12" id="6230" />
+<TGConnectingPoint num="13" id="6231" />
+<TGConnectingPoint num="14" id="6232" />
+<TGConnectingPoint num="15" id="6233" />
+<TGConnectingPoint num="16" id="6234" />
+<TGConnectingPoint num="17" id="6235" />
+<TGConnectingPoint num="18" id="6236" />
+<TGConnectingPoint num="19" id="6237" />
+<TGConnectingPoint num="20" id="6238" />
+<TGConnectingPoint num="21" id="6239" />
+<TGConnectingPoint num="22" id="6240" />
+<TGConnectingPoint num="23" id="6241" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="INTL_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="3" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="6276" >
+<cdparam x="91" y="938" />
+<sizeparam width="234" height="140" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_PSS" value="name" />
+<TGConnectingPoint num="0" id="6252" />
+<TGConnectingPoint num="1" id="6253" />
+<TGConnectingPoint num="2" id="6254" />
+<TGConnectingPoint num="3" id="6255" />
+<TGConnectingPoint num="4" id="6256" />
+<TGConnectingPoint num="5" id="6257" />
+<TGConnectingPoint num="6" id="6258" />
+<TGConnectingPoint num="7" id="6259" />
+<TGConnectingPoint num="8" id="6260" />
+<TGConnectingPoint num="9" id="6261" />
+<TGConnectingPoint num="10" id="6262" />
+<TGConnectingPoint num="11" id="6263" />
+<TGConnectingPoint num="12" id="6264" />
+<TGConnectingPoint num="13" id="6265" />
+<TGConnectingPoint num="14" id="6266" />
+<TGConnectingPoint num="15" id="6267" />
+<TGConnectingPoint num="16" id="6268" />
+<TGConnectingPoint num="17" id="6269" />
+<TGConnectingPoint num="18" id="6270" />
+<TGConnectingPoint num="19" id="6271" />
+<TGConnectingPoint num="20" id="6272" />
+<TGConnectingPoint num="21" id="6273" />
+<TGConnectingPoint num="22" id="6274" />
+<TGConnectingPoint num="23" id="6275" />
+<extraparam>
+<info stereotype="CPURR" nodeName="INTL_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="2" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="6251" >
+<father id="6276" num="0" />
+<cdparam x="105" y="993" />
+<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="45" minY="0" maxY="100" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Chip2Octet" />
+<TGConnectingPoint num="0" id="6243" />
+<TGConnectingPoint num="1" id="6244" />
+<TGConnectingPoint num="2" id="6245" />
+<TGConnectingPoint num="3" id="6246" />
+<TGConnectingPoint num="4" id="6247" />
+<TGConnectingPoint num="5" id="6248" />
+<TGConnectingPoint num="6" id="6249" />
+<TGConnectingPoint num="7" id="6250" />
+<extraparam>
+<info value="Zigbee_TX::X_Chip2Octet" taskName="X_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="Interleaver operation" fatherComponentMECType="2" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1102" id="6301" >
+<cdparam x="231" y="832" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_Bus" value="name" />
+<TGConnectingPoint num="0" id="6277" />
+<TGConnectingPoint num="1" id="6278" />
+<TGConnectingPoint num="2" id="6279" />
+<TGConnectingPoint num="3" id="6280" />
+<TGConnectingPoint num="4" id="6281" />
+<TGConnectingPoint num="5" id="6282" />
+<TGConnectingPoint num="6" id="6283" />
+<TGConnectingPoint num="7" id="6284" />
+<TGConnectingPoint num="8" id="6285" />
+<TGConnectingPoint num="9" id="6286" />
+<TGConnectingPoint num="10" id="6287" />
+<TGConnectingPoint num="11" id="6288" />
+<TGConnectingPoint num="12" id="6289" />
+<TGConnectingPoint num="13" id="6290" />
+<TGConnectingPoint num="14" id="6291" />
+<TGConnectingPoint num="15" id="6292" />
+<TGConnectingPoint num="16" id="6293" />
+<TGConnectingPoint num="17" id="6294" />
+<TGConnectingPoint num="18" id="6295" />
+<TGConnectingPoint num="19" id="6296" />
+<TGConnectingPoint num="20" id="6297" />
+<TGConnectingPoint num="21" id="6298" />
+<TGConnectingPoint num="22" id="6299" />
+<TGConnectingPoint num="23" id="6300" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="INTL_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="6326" >
+<cdparam x="231" y="447" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_Bus" value="name" />
+<TGConnectingPoint num="0" id="6302" />
+<TGConnectingPoint num="1" id="6303" />
+<TGConnectingPoint num="2" id="6304" />
+<TGConnectingPoint num="3" id="6305" />
+<TGConnectingPoint num="4" id="6306" />
+<TGConnectingPoint num="5" id="6307" />
+<TGConnectingPoint num="6" id="6308" />
+<TGConnectingPoint num="7" id="6309" />
+<TGConnectingPoint num="8" id="6310" />
+<TGConnectingPoint num="9" id="6311" />
+<TGConnectingPoint num="10" id="6312" />
+<TGConnectingPoint num="11" id="6313" />
+<TGConnectingPoint num="12" id="6314" />
+<TGConnectingPoint num="13" id="6315" />
+<TGConnectingPoint num="14" id="6316" />
+<TGConnectingPoint num="15" id="6317" />
+<TGConnectingPoint num="16" id="6318" />
+<TGConnectingPoint num="17" id="6319" />
+<TGConnectingPoint num="18" id="6320" />
+<TGConnectingPoint num="19" id="6321" />
+<TGConnectingPoint num="20" id="6322" />
+<TGConnectingPoint num="21" id="6323" />
+<TGConnectingPoint num="22" id="6324" />
+<TGConnectingPoint num="23" id="6325" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="ADAIF_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="6351" >
+<cdparam x="1147" y="408" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_DMA" value="name" />
+<TGConnectingPoint num="0" id="6327" />
+<TGConnectingPoint num="1" id="6328" />
+<TGConnectingPoint num="2" id="6329" />
+<TGConnectingPoint num="3" id="6330" />
+<TGConnectingPoint num="4" id="6331" />
+<TGConnectingPoint num="5" id="6332" />
+<TGConnectingPoint num="6" id="6333" />
+<TGConnectingPoint num="7" id="6334" />
+<TGConnectingPoint num="8" id="6335" />
+<TGConnectingPoint num="9" id="6336" />
+<TGConnectingPoint num="10" id="6337" />
+<TGConnectingPoint num="11" id="6338" />
+<TGConnectingPoint num="12" id="6339" />
+<TGConnectingPoint num="13" id="6340" />
+<TGConnectingPoint num="14" id="6341" />
+<TGConnectingPoint num="15" id="6342" />
+<TGConnectingPoint num="16" id="6343" />
+<TGConnectingPoint num="17" id="6344" />
+<TGConnectingPoint num="18" id="6345" />
+<TGConnectingPoint num="19" id="6346" />
+<TGConnectingPoint num="20" id="6347" />
+<TGConnectingPoint num="21" id="6348" />
+<TGConnectingPoint num="22" id="6349" />
+<TGConnectingPoint num="23" id="6350" />
+<extraparam>
+<info stereotype="CPURR" nodeName="FEP_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="6376" >
+<cdparam x="895" y="193" />
+<sizeparam width="255" height="183" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_MSS" value="name" />
+<TGConnectingPoint num="0" id="6352" />
+<TGConnectingPoint num="1" id="6353" />
+<TGConnectingPoint num="2" id="6354" />
+<TGConnectingPoint num="3" id="6355" />
+<TGConnectingPoint num="4" id="6356" />
+<TGConnectingPoint num="5" id="6357" />
+<TGConnectingPoint num="6" id="6358" />
+<TGConnectingPoint num="7" id="6359" />
+<TGConnectingPoint num="8" id="6360" />
+<TGConnectingPoint num="9" id="6361" />
+<TGConnectingPoint num="10" id="6362" />
+<TGConnectingPoint num="11" id="6363" />
+<TGConnectingPoint num="12" id="6364" />
+<TGConnectingPoint num="13" id="6365" />
+<TGConnectingPoint num="14" id="6366" />
+<TGConnectingPoint num="15" id="6367" />
+<TGConnectingPoint num="16" id="6368" />
+<TGConnectingPoint num="17" id="6369" />
+<TGConnectingPoint num="18" id="6370" />
+<TGConnectingPoint num="19" id="6371" />
+<TGConnectingPoint num="20" id="6372" />
+<TGConnectingPoint num="21" id="6373" />
+<TGConnectingPoint num="22" id="6374" />
+<TGConnectingPoint num="23" id="6375" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="FEP_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="0" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="6428" >
+<cdparam x="619" y="199" />
+<sizeparam width="238" height="185" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_PSS" value="name" />
+<TGConnectingPoint num="0" id="6404" />
+<TGConnectingPoint num="1" id="6405" />
+<TGConnectingPoint num="2" id="6406" />
+<TGConnectingPoint num="3" id="6407" />
+<TGConnectingPoint num="4" id="6408" />
+<TGConnectingPoint num="5" id="6409" />
+<TGConnectingPoint num="6" id="6410" />
+<TGConnectingPoint num="7" id="6411" />
+<TGConnectingPoint num="8" id="6412" />
+<TGConnectingPoint num="9" id="6413" />
+<TGConnectingPoint num="10" id="6414" />
+<TGConnectingPoint num="11" id="6415" />
+<TGConnectingPoint num="12" id="6416" />
+<TGConnectingPoint num="13" id="6417" />
+<TGConnectingPoint num="14" id="6418" />
+<TGConnectingPoint num="15" id="6419" />
+<TGConnectingPoint num="16" id="6420" />
+<TGConnectingPoint num="17" id="6421" />
+<TGConnectingPoint num="18" id="6422" />
+<TGConnectingPoint num="19" id="6423" />
+<TGConnectingPoint num="20" id="6424" />
+<TGConnectingPoint num="21" id="6425" />
+<TGConnectingPoint num="22" id="6426" />
+<TGConnectingPoint num="23" id="6427" />
+<extraparam>
+<info stereotype="CPURR" nodeName="FEP_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="2" execcTime="1" clockRatio="1" MECType="1" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="6385" >
+<father id="6428" num="0" />
+<cdparam x="671" y="289" />
+<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="82" minY="0" maxY="145" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_I" />
+<TGConnectingPoint num="0" id="6377" />
+<TGConnectingPoint num="1" id="6378" />
+<TGConnectingPoint num="2" id="6379" />
+<TGConnectingPoint num="3" id="6380" />
+<TGConnectingPoint num="4" id="6381" />
+<TGConnectingPoint num="5" id="6382" />
+<TGConnectingPoint num="6" id="6383" />
+<TGConnectingPoint num="7" id="6384" />
+<extraparam>
+<info value="Zigbee_TX::X_CWP_I" taskName="X_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6394" >
+<father id="6428" num="1" />
+<cdparam x="640" y="335" />
+<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="76" minY="0" maxY="145" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_Q" />
+<TGConnectingPoint num="0" id="6386" />
+<TGConnectingPoint num="1" id="6387" />
+<TGConnectingPoint num="2" id="6388" />
+<TGConnectingPoint num="3" id="6389" />
+<TGConnectingPoint num="4" id="6390" />
+<TGConnectingPoint num="5" id="6391" />
+<TGConnectingPoint num="6" id="6392" />
+<TGConnectingPoint num="7" id="6393" />
+<extraparam>
+<info value="Zigbee_TX::X_CWP_Q" taskName="X_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6403" >
+<father id="6428" num="2" />
+<cdparam x="639" y="239" />
+<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="93" minY="0" maxY="145" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_CWL" />
+<TGConnectingPoint num="0" id="6395" />
+<TGConnectingPoint num="1" id="6396" />
+<TGConnectingPoint num="2" id="6397" />
+<TGConnectingPoint num="3" id="6398" />
+<TGConnectingPoint num="4" id="6399" />
+<TGConnectingPoint num="5" id="6400" />
+<TGConnectingPoint num="6" id="6401" />
+<TGConnectingPoint num="7" id="6402" />
+<extraparam>
+<info value="Zigbee_TX::X_CWL" taskName="X_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="CWL" fatherComponentMECType="1" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1106" id="6453" >
+<cdparam x="910" y="531" />
+<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_Bridge" value="name" />
+<TGConnectingPoint num="0" id="6429" />
+<TGConnectingPoint num="1" id="6430" />
+<TGConnectingPoint num="2" id="6431" />
+<TGConnectingPoint num="3" id="6432" />
+<TGConnectingPoint num="4" id="6433" />
+<TGConnectingPoint num="5" id="6434" />
+<TGConnectingPoint num="6" id="6435" />
+<TGConnectingPoint num="7" id="6436" />
+<TGConnectingPoint num="8" id="6437" />
+<TGConnectingPoint num="9" id="6438" />
+<TGConnectingPoint num="10" id="6439" />
+<TGConnectingPoint num="11" id="6440" />
+<TGConnectingPoint num="12" id="6441" />
+<TGConnectingPoint num="13" id="6442" />
+<TGConnectingPoint num="14" id="6443" />
+<TGConnectingPoint num="15" id="6444" />
+<TGConnectingPoint num="16" id="6445" />
+<TGConnectingPoint num="17" id="6446" />
+<TGConnectingPoint num="18" id="6447" />
+<TGConnectingPoint num="19" id="6448" />
+<TGConnectingPoint num="20" id="6449" />
+<TGConnectingPoint num="21" id="6450" />
+<TGConnectingPoint num="22" id="6451" />
+<TGConnectingPoint num="23" id="6452" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="FEP_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="6478" >
+<cdparam x="835" y="433" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_Bus" value="name" />
+<TGConnectingPoint num="0" id="6454" />
+<TGConnectingPoint num="1" id="6455" />
+<TGConnectingPoint num="2" id="6456" />
+<TGConnectingPoint num="3" id="6457" />
+<TGConnectingPoint num="4" id="6458" />
+<TGConnectingPoint num="5" id="6459" />
+<TGConnectingPoint num="6" id="6460" />
+<TGConnectingPoint num="7" id="6461" />
+<TGConnectingPoint num="8" id="6462" />
+<TGConnectingPoint num="9" id="6463" />
+<TGConnectingPoint num="10" id="6464" />
+<TGConnectingPoint num="11" id="6465" />
+<TGConnectingPoint num="12" id="6466" />
+<TGConnectingPoint num="13" id="6467" />
+<TGConnectingPoint num="14" id="6468" />
+<TGConnectingPoint num="15" id="6469" />
+<TGConnectingPoint num="16" id="6470" />
+<TGConnectingPoint num="17" id="6471" />
+<TGConnectingPoint num="18" id="6472" />
+<TGConnectingPoint num="19" id="6473" />
+<TGConnectingPoint num="20" id="6474" />
+<TGConnectingPoint num="21" id="6475" />
+<TGConnectingPoint num="22" id="6476" />
+<TGConnectingPoint num="23" id="6477" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="FEP_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="6503" >
+<cdparam x="1174" y="850" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_DMA" value="name" />
+<TGConnectingPoint num="0" id="6479" />
+<TGConnectingPoint num="1" id="6480" />
+<TGConnectingPoint num="2" id="6481" />
+<TGConnectingPoint num="3" id="6482" />
+<TGConnectingPoint num="4" id="6483" />
+<TGConnectingPoint num="5" id="6484" />
+<TGConnectingPoint num="6" id="6485" />
+<TGConnectingPoint num="7" id="6486" />
+<TGConnectingPoint num="8" id="6487" />
+<TGConnectingPoint num="9" id="6488" />
+<TGConnectingPoint num="10" id="6489" />
+<TGConnectingPoint num="11" id="6490" />
+<TGConnectingPoint num="12" id="6491" />
+<TGConnectingPoint num="13" id="6492" />
+<TGConnectingPoint num="14" id="6493" />
+<TGConnectingPoint num="15" id="6494" />
+<TGConnectingPoint num="16" id="6495" />
+<TGConnectingPoint num="17" id="6496" />
+<TGConnectingPoint num="18" id="6497" />
+<TGConnectingPoint num="19" id="6498" />
+<TGConnectingPoint num="20" id="6499" />
+<TGConnectingPoint num="21" id="6500" />
+<TGConnectingPoint num="22" id="6501" />
+<TGConnectingPoint num="23" id="6502" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MAPPER_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="6528" >
+<cdparam x="920" y="780" />
+<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_Bridge" value="name" />
+<TGConnectingPoint num="0" id="6504" />
+<TGConnectingPoint num="1" id="6505" />
+<TGConnectingPoint num="2" id="6506" />
+<TGConnectingPoint num="3" id="6507" />
+<TGConnectingPoint num="4" id="6508" />
+<TGConnectingPoint num="5" id="6509" />
+<TGConnectingPoint num="6" id="6510" />
+<TGConnectingPoint num="7" id="6511" />
+<TGConnectingPoint num="8" id="6512" />
+<TGConnectingPoint num="9" id="6513" />
+<TGConnectingPoint num="10" id="6514" />
+<TGConnectingPoint num="11" id="6515" />
+<TGConnectingPoint num="12" id="6516" />
+<TGConnectingPoint num="13" id="6517" />
+<TGConnectingPoint num="14" id="6518" />
+<TGConnectingPoint num="15" id="6519" />
+<TGConnectingPoint num="16" id="6520" />
+<TGConnectingPoint num="17" id="6521" />
+<TGConnectingPoint num="18" id="6522" />
+<TGConnectingPoint num="19" id="6523" />
+<TGConnectingPoint num="20" id="6524" />
+<TGConnectingPoint num="21" id="6525" />
+<TGConnectingPoint num="22" id="6526" />
+<TGConnectingPoint num="23" id="6527" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="MAPPER_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="6553" >
+<cdparam x="1043" y="978" />
+<sizeparam width="314" height="125" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_MSS" value="name" />
+<TGConnectingPoint num="0" id="6529" />
+<TGConnectingPoint num="1" id="6530" />
+<TGConnectingPoint num="2" id="6531" />
+<TGConnectingPoint num="3" id="6532" />
+<TGConnectingPoint num="4" id="6533" />
+<TGConnectingPoint num="5" id="6534" />
+<TGConnectingPoint num="6" id="6535" />
+<TGConnectingPoint num="7" id="6536" />
+<TGConnectingPoint num="8" id="6537" />
+<TGConnectingPoint num="9" id="6538" />
+<TGConnectingPoint num="10" id="6539" />
+<TGConnectingPoint num="11" id="6540" />
+<TGConnectingPoint num="12" id="6541" />
+<TGConnectingPoint num="13" id="6542" />
+<TGConnectingPoint num="14" id="6543" />
+<TGConnectingPoint num="15" id="6544" />
+<TGConnectingPoint num="16" id="6545" />
+<TGConnectingPoint num="17" id="6546" />
+<TGConnectingPoint num="18" id="6547" />
+<TGConnectingPoint num="19" id="6548" />
+<TGConnectingPoint num="20" id="6549" />
+<TGConnectingPoint num="21" id="6550" />
+<TGConnectingPoint num="22" id="6551" />
+<TGConnectingPoint num="23" id="6552" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="MAPPER_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="6587" >
+<cdparam x="743" y="984" />
+<sizeparam width="237" height="159" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_PSS" value="name" />
+<TGConnectingPoint num="0" id="6563" />
+<TGConnectingPoint num="1" id="6564" />
+<TGConnectingPoint num="2" id="6565" />
+<TGConnectingPoint num="3" id="6566" />
+<TGConnectingPoint num="4" id="6567" />
+<TGConnectingPoint num="5" id="6568" />
+<TGConnectingPoint num="6" id="6569" />
+<TGConnectingPoint num="7" id="6570" />
+<TGConnectingPoint num="8" id="6571" />
+<TGConnectingPoint num="9" id="6572" />
+<TGConnectingPoint num="10" id="6573" />
+<TGConnectingPoint num="11" id="6574" />
+<TGConnectingPoint num="12" id="6575" />
+<TGConnectingPoint num="13" id="6576" />
+<TGConnectingPoint num="14" id="6577" />
+<TGConnectingPoint num="15" id="6578" />
+<TGConnectingPoint num="16" id="6579" />
+<TGConnectingPoint num="17" id="6580" />
+<TGConnectingPoint num="18" id="6581" />
+<TGConnectingPoint num="19" id="6582" />
+<TGConnectingPoint num="20" id="6583" />
+<TGConnectingPoint num="21" id="6584" />
+<TGConnectingPoint num="22" id="6585" />
+<TGConnectingPoint num="23" id="6586" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MAPPER_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="3" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="6562" >
+<father id="6587" num="0" />
+<cdparam x="749" y="1029" />
+<sizeparam width="223" height="45" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="14" minY="0" maxY="119" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Symbol2ChipSeq" />
+<TGConnectingPoint num="0" id="6554" />
+<TGConnectingPoint num="1" id="6555" />
+<TGConnectingPoint num="2" id="6556" />
+<TGConnectingPoint num="3" id="6557" />
+<TGConnectingPoint num="4" id="6558" />
+<TGConnectingPoint num="5" id="6559" />
+<TGConnectingPoint num="6" id="6560" />
+<TGConnectingPoint num="7" id="6561" />
+<extraparam>
+<info value="Zigbee_TX::X_Symbol2ChipSeq" taskName="X_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="Mapper operation" fatherComponentMECType="3" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1102" id="6612" >
+<cdparam x="845" y="875" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_Bus" value="name" />
+<TGConnectingPoint num="0" id="6588" />
+<TGConnectingPoint num="1" id="6589" />
+<TGConnectingPoint num="2" id="6590" />
+<TGConnectingPoint num="3" id="6591" />
+<TGConnectingPoint num="4" id="6592" />
+<TGConnectingPoint num="5" id="6593" />
+<TGConnectingPoint num="6" id="6594" />
+<TGConnectingPoint num="7" id="6595" />
+<TGConnectingPoint num="8" id="6596" />
+<TGConnectingPoint num="9" id="6597" />
+<TGConnectingPoint num="10" id="6598" />
+<TGConnectingPoint num="11" id="6599" />
+<TGConnectingPoint num="12" id="6600" />
+<TGConnectingPoint num="13" id="6601" />
+<TGConnectingPoint num="14" id="6602" />
+<TGConnectingPoint num="15" id="6603" />
+<TGConnectingPoint num="16" id="6604" />
+<TGConnectingPoint num="17" id="6605" />
+<TGConnectingPoint num="18" id="6606" />
+<TGConnectingPoint num="19" id="6607" />
+<TGConnectingPoint num="20" id="6608" />
+<TGConnectingPoint num="21" id="6609" />
+<TGConnectingPoint num="22" id="6610" />
+<TGConnectingPoint num="23" id="6611" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="MAPPER_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1108" id="6630" >
+<cdparam x="103" y="1267" />
+<sizeparam width="419" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_Symbol2ChipSeq_Chips2Octet" value="CP0" />
+<TGConnectingPoint num="0" id="6622" />
+<TGConnectingPoint num="1" id="6623" />
+<TGConnectingPoint num="2" id="6624" />
+<TGConnectingPoint num="3" id="6625" />
+<TGConnectingPoint num="4" id="6626" />
+<TGConnectingPoint num="5" id="6627" />
+<TGConnectingPoint num="6" id="6628" />
+<TGConnectingPoint num="7" id="6629" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_Symbol2ChipSeq_Chips2Octet" cpMEC="Single DMA" transferType1="0" transferType2="0" />
+<attributes reference="DMA_transfer" />
+<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="MAPPER_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="INTL_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="ADAIF_DMA" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="ADAIF_Bridge, MainBus, MainBridge, Crossbar, ADAIF_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="ADAIF_Bridge, MainBus, MainBridge, Crossbar, ADAIF_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, MAPPER_Bridge, MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, INTL_Bridge, INTL_Bus, ADAIF_Bus" />
+<mappedAttributes type="int" name="destinationAddress" value="123" />
+<mappedAttributes type="int" name="sourceAddress" value="123" />
+<mappedAttributes type="int" name="counter" value="123" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="6621" >
+<father id="6630" num="0" />
+<cdparam x="292" y="1303" />
+<sizeparam width="212" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="207" minY="0" maxY="45" />
+<infoparam name="TGComponent" value="Zigbee_TX::chip2octet_ch_in" />
+<TGConnectingPoint num="0" id="6613" />
+<TGConnectingPoint num="1" id="6614" />
+<TGConnectingPoint num="2" id="6615" />
+<TGConnectingPoint num="3" id="6616" />
+<TGConnectingPoint num="4" id="6617" />
+<TGConnectingPoint num="5" id="6618" />
+<TGConnectingPoint num="6" id="6619" />
+<TGConnectingPoint num="7" id="6620" />
+<extraparam>
+<info value="Zigbee_TX::chip2octet_ch_in" portName="chip2octet_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="INTL_MSS" bufferType="3" packedBinaryIn="" width="" bitInOffset="" inputOffset="" packedBinaryOut="" bitOutOffset="" outputOffset="" offsetPerm="" lengthPerm="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1108" id="6648" >
+<cdparam x="105" y="1396" />
+<sizeparam width="405" height="88" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_Chip2Octet_CWL" value="CP0" />
+<TGConnectingPoint num="0" id="6640" />
+<TGConnectingPoint num="1" id="6641" />
+<TGConnectingPoint num="2" id="6642" />
+<TGConnectingPoint num="3" id="6643" />
+<TGConnectingPoint num="4" id="6644" />
+<TGConnectingPoint num="5" id="6645" />
+<TGConnectingPoint num="6" id="6646" />
+<TGConnectingPoint num="7" id="6647" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_Chip2Octet_CWL" cpMEC="Single DMA" transferType1="0" transferType2="0" />
+<attributes reference="DMA_transfer" />
+<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="INTL_DMA" />
+<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="INTL_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="FEP_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="INTL_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="Crossbar, INTL_Bridge, INTL_Bus, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="6639" >
+<father id="6648" num="0" />
+<cdparam x="327" y="1437" />
+<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="241" minY="0" maxY="48" />
+<infoparam name="TGComponent" value="Zigbee_TX::cwl_ch_in" />
+<TGConnectingPoint num="0" id="6631" />
+<TGConnectingPoint num="1" id="6632" />
+<TGConnectingPoint num="2" id="6633" />
+<TGConnectingPoint num="3" id="6634" />
+<TGConnectingPoint num="4" id="6635" />
+<TGConnectingPoint num="5" id="6636" />
+<TGConnectingPoint num="6" id="6637" />
+<TGConnectingPoint num="7" id="6638" />
+<extraparam>
+<info value="Zigbee_TX::cwl_ch_in" portName="cwl_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="FEP_MSS" bufferType="0" baseAddress="0x123" numSamples="1234" bank="0" dataType="int8" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1108" id="6666" >
+<cdparam x="627" y="1252" />
+<sizeparam width="295" height="145" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_sink" value="CP0" />
+<TGConnectingPoint num="0" id="6658" />
+<TGConnectingPoint num="1" id="6659" />
+<TGConnectingPoint num="2" id="6660" />
+<TGConnectingPoint num="3" id="6661" />
+<TGConnectingPoint num="4" id="6662" />
+<TGConnectingPoint num="5" id="6663" />
+<TGConnectingPoint num="6" id="6664" />
+<TGConnectingPoint num="7" id="6665" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_sink" cpMEC="Double DMA" transferType1="0" transferType2="0" />
+<attributes reference="Double_DMA_transfer" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="FEP_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_2" architectureUnit="FEP_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="FEP_DMA" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_2" architectureUnit="FEP_DMA" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_2" architectureUnit="ADAIF_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="ADAIF_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_2" architectureUnit="MainCPU" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_6" architectureUnit="FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_5" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_8" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_7" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="6657" >
+<father id="6666" num="0" />
+<cdparam x="701" y="1315" />
+<sizeparam width="170" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="125" minY="0" maxY="105" />
+<infoparam name="TGComponent" value="Zigbee_TX::sink_ch_in" />
+<TGConnectingPoint num="0" id="6649" />
+<TGConnectingPoint num="1" id="6650" />
+<TGConnectingPoint num="2" id="6651" />
+<TGConnectingPoint num="3" id="6652" />
+<TGConnectingPoint num="4" id="6653" />
+<TGConnectingPoint num="5" id="6654" />
+<TGConnectingPoint num="6" id="6655" />
+<TGConnectingPoint num="7" id="6656" />
+<extraparam>
+<info value="Zigbee_TX::sink_ch_in" portName="sink_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="ADAIF_MSS" bufferType="2" numSamples="123" baseAddress="0x123" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1108" id="6684" >
+<cdparam x="106" y="1143" />
+<sizeparam width="421" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_Source_to_Bits2Symbol" value="CP0" />
+<TGConnectingPoint num="0" id="6676" />
+<TGConnectingPoint num="1" id="6677" />
+<TGConnectingPoint num="2" id="6678" />
+<TGConnectingPoint num="3" id="6679" />
+<TGConnectingPoint num="4" id="6680" />
+<TGConnectingPoint num="5" id="6681" />
+<TGConnectingPoint num="6" id="6682" />
+<TGConnectingPoint num="7" id="6683" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_Source_to_Bits2Symbol" cpMEC="Memory Copy" transferType1="0" transferType2="0" />
+<attributes reference="CP_Memory_Copy" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="Dst_Storage_Instance" architectureUnit="MAPPER_MSS" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="CPU_Controller" architectureUnit="MainCPU" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="Transfer_Instance_1" architectureUnit="MainBus" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="Transfer_Instance2" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<mappingInfo CPname="CP_Memory_Copy" instanceName="Src_Storage_Instance" architectureUnit="ADAIF_MSS" />
+<mappedAttributes type="addr" name="sourceAddress" value="0x123" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="6675" >
+<father id="6684" num="0" />
+<cdparam x="280" y="1181" />
+<sizeparam width="247" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="174" minY="0" maxY="45" />
+<infoparam name="TGComponent" value="Zigbee_TX::symbol2ChipSeq_ch_in" />
+<TGConnectingPoint num="0" id="6667" />
+<TGConnectingPoint num="1" id="6668" />
+<TGConnectingPoint num="2" id="6669" />
+<TGConnectingPoint num="3" id="6670" />
+<TGConnectingPoint num="4" id="6671" />
+<TGConnectingPoint num="5" id="6672" />
+<TGConnectingPoint num="6" id="6673" />
+<TGConnectingPoint num="7" id="6674" />
+<extraparam>
+<info value="Zigbee_TX::symbol2ChipSeq_ch_in" portName="symbol2ChipSeq_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="MAPPER_MSS" bufferType="1" numSamplesDataIn="123" baseAddressDataIn="0x123" bitsPerSymbolDataIn="123" symmetricalValueDataIn="OFF" baseAddressDataOut="0x123" baseAddressLUT="0x123" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="125" id="6685" >
+<cdparam x="1367" y="660" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1367" y="660" id="6146" />
+<P2  x="1076" y="660" id="6172" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6686" >
+<cdparam x="1147" y="508" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1147" y="508" id="6332" />
+<P2  x="1076" y="635" id="6170" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6687" >
+<cdparam x="1298" y="875" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1249" y="850" id="6480" />
+<P2  x="1076" y="685" id="6175" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6688" >
+<cdparam x="1019" y="805" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="970" y="780" id="6505" />
+<P2  x="864" y="685" id="6183" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6689" >
+<cdparam x="1004" y="531" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="960" y="566" id="6435" />
+<P2  x="864" y="635" id="6177" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6690" >
+<cdparam x="1185" y="660" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1467" y="660" id="6147" />
+<P2  x="1527" y="660" id="6121" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6691" >
+<cdparam x="356" y="788" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="788" id="6199" />
+<P2  x="356" y="832" id="6278" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6692" >
+<cdparam x="554" y="806" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="560" y="807" id="5862" />
+<P2  x="442" y="685" id="6182" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6693" >
+<cdparam x="559" y="863" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="560" y="857" id="5865" />
+<P2  x="481" y="857" id="6281" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6694" >
+<cdparam x="586" y="970" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="541" y="949" id="6219" />
+<P2  x="418" y="882" id="6292" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6695" >
+<cdparam x="165" y="927" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="208" y="938" id="6253" />
+<P2  x="293" y="882" id="6291" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6696" >
+<cdparam x="355" y="576" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="580" id="5977" />
+<P2  x="231" y="635" id="6168" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6697" >
+<cdparam x="355" y="541" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="545" id="5972" />
+<P2  x="356" y="497" id="6308" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6698" >
+<cdparam x="543" y="522" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="543" y="522" id="5892" />
+<P2  x="442" y="635" id="6176" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6699" >
+<cdparam x="536" y="475" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="543" y="472" id="5890" />
+<P2  x="481" y="472" id="6306" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6700" >
+<cdparam x="549" y="337" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="454" y="395" id="5918" />
+<P2  x="418" y="447" id="6311" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6701" >
+<cdparam x="155" y="323" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="155" y="396" id="5952" />
+<P2  x="293" y="447" id="6310" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6702" >
+<cdparam x="357" y="778" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="737" id="6194" />
+<P2  x="231" y="685" id="6173" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6703" >
+<cdparam x="1654" y="758" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1652" y="737" id="5997" />
+<P2  x="1652" y="685" id="6124" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6704" >
+<cdparam x="1651" y="573" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1652" y="586" id="6099" />
+<P2  x="1652" y="635" id="6119" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6705" >
+<cdparam x="959" y="527" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="960" y="531" id="6430" />
+<P2  x="960" y="483" id="6460" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6706" >
+<cdparam x="1140" y="461" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1147" y="458" id="6330" />
+<P2  x="1085" y="458" id="6458" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6707" >
+<cdparam x="1189" y="374" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1022" y="376" id="6358" />
+<P2  x="1022" y="433" id="6463" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6708" >
+<cdparam x="795" y="360" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="738" y="384" id="6410" />
+<P2  x="897" y="433" id="6462" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6709" >
+<cdparam x="970" y="831" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="970" y="831" id="6510" />
+<P2  x="970" y="875" id="6589" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6710" >
+<cdparam x="1173" y="906" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1174" y="900" id="6482" />
+<P2  x="1095" y="900" id="6592" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6711" >
+<cdparam x="1200" y="1013" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1200" y="978" id="6530" />
+<P2  x="1032" y="925" id="6603" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="6712" >
+<cdparam x="779" y="970" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="861" y="984" id="6564" />
+<P2  x="907" y="925" id="6602" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+
+</TMLArchiDiagramPanel>
+
+</Modeling>
+
+
+
+
+<Modeling type="TML Architecture" nameTab="Mapping_2" >
+<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1900" minY="10" maxY="1900" attributes="0" masterClockFrequency="200" >
+<COMPONENT type="1100" id="6737" >
+<cdparam x="560" y="807" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_DMA" value="name" />
+<TGConnectingPoint num="0" id="6713" />
+<TGConnectingPoint num="1" id="6714" />
+<TGConnectingPoint num="2" id="6715" />
+<TGConnectingPoint num="3" id="6716" />
+<TGConnectingPoint num="4" id="6717" />
+<TGConnectingPoint num="5" id="6718" />
+<TGConnectingPoint num="6" id="6719" />
+<TGConnectingPoint num="7" id="6720" />
+<TGConnectingPoint num="8" id="6721" />
+<TGConnectingPoint num="9" id="6722" />
+<TGConnectingPoint num="10" id="6723" />
+<TGConnectingPoint num="11" id="6724" />
+<TGConnectingPoint num="12" id="6725" />
+<TGConnectingPoint num="13" id="6726" />
+<TGConnectingPoint num="14" id="6727" />
+<TGConnectingPoint num="15" id="6728" />
+<TGConnectingPoint num="16" id="6729" />
+<TGConnectingPoint num="17" id="6730" />
+<TGConnectingPoint num="18" id="6731" />
+<TGConnectingPoint num="19" id="6732" />
+<TGConnectingPoint num="20" id="6733" />
+<TGConnectingPoint num="21" id="6734" />
+<TGConnectingPoint num="22" id="6735" />
+<TGConnectingPoint num="23" id="6736" />
+<extraparam>
+<info stereotype="CPURR" nodeName="INTL_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="6762" >
+<cdparam x="543" y="422" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_DMA" value="name" />
+<TGConnectingPoint num="0" id="6738" />
+<TGConnectingPoint num="1" id="6739" />
+<TGConnectingPoint num="2" id="6740" />
+<TGConnectingPoint num="3" id="6741" />
+<TGConnectingPoint num="4" id="6742" />
+<TGConnectingPoint num="5" id="6743" />
+<TGConnectingPoint num="6" id="6744" />
+<TGConnectingPoint num="7" id="6745" />
+<TGConnectingPoint num="8" id="6746" />
+<TGConnectingPoint num="9" id="6747" />
+<TGConnectingPoint num="10" id="6748" />
+<TGConnectingPoint num="11" id="6749" />
+<TGConnectingPoint num="12" id="6750" />
+<TGConnectingPoint num="13" id="6751" />
+<TGConnectingPoint num="14" id="6752" />
+<TGConnectingPoint num="15" id="6753" />
+<TGConnectingPoint num="16" id="6754" />
+<TGConnectingPoint num="17" id="6755" />
+<TGConnectingPoint num="18" id="6756" />
+<TGConnectingPoint num="19" id="6757" />
+<TGConnectingPoint num="20" id="6758" />
+<TGConnectingPoint num="21" id="6759" />
+<TGConnectingPoint num="22" id="6760" />
+<TGConnectingPoint num="23" id="6761" />
+<extraparam>
+<info stereotype="CPURR" nodeName="ADAIF_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="6787" >
+<cdparam x="354" y="243" />
+<sizeparam width="200" height="152" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_MSS" value="name" />
+<TGConnectingPoint num="0" id="6763" />
+<TGConnectingPoint num="1" id="6764" />
+<TGConnectingPoint num="2" id="6765" />
+<TGConnectingPoint num="3" id="6766" />
+<TGConnectingPoint num="4" id="6767" />
+<TGConnectingPoint num="5" id="6768" />
+<TGConnectingPoint num="6" id="6769" />
+<TGConnectingPoint num="7" id="6770" />
+<TGConnectingPoint num="8" id="6771" />
+<TGConnectingPoint num="9" id="6772" />
+<TGConnectingPoint num="10" id="6773" />
+<TGConnectingPoint num="11" id="6774" />
+<TGConnectingPoint num="12" id="6775" />
+<TGConnectingPoint num="13" id="6776" />
+<TGConnectingPoint num="14" id="6777" />
+<TGConnectingPoint num="15" id="6778" />
+<TGConnectingPoint num="16" id="6779" />
+<TGConnectingPoint num="17" id="6780" />
+<TGConnectingPoint num="18" id="6781" />
+<TGConnectingPoint num="19" id="6782" />
+<TGConnectingPoint num="20" id="6783" />
+<TGConnectingPoint num="21" id="6784" />
+<TGConnectingPoint num="22" id="6785" />
+<TGConnectingPoint num="23" id="6786" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="ADAIF_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="2" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="6821" >
+<cdparam x="29" y="215" />
+<sizeparam width="252" height="181" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_PSS" value="name" />
+<TGConnectingPoint num="0" id="6797" />
+<TGConnectingPoint num="1" id="6798" />
+<TGConnectingPoint num="2" id="6799" />
+<TGConnectingPoint num="3" id="6800" />
+<TGConnectingPoint num="4" id="6801" />
+<TGConnectingPoint num="5" id="6802" />
+<TGConnectingPoint num="6" id="6803" />
+<TGConnectingPoint num="7" id="6804" />
+<TGConnectingPoint num="8" id="6805" />
+<TGConnectingPoint num="9" id="6806" />
+<TGConnectingPoint num="10" id="6807" />
+<TGConnectingPoint num="11" id="6808" />
+<TGConnectingPoint num="12" id="6809" />
+<TGConnectingPoint num="13" id="6810" />
+<TGConnectingPoint num="14" id="6811" />
+<TGConnectingPoint num="15" id="6812" />
+<TGConnectingPoint num="16" id="6813" />
+<TGConnectingPoint num="17" id="6814" />
+<TGConnectingPoint num="18" id="6815" />
+<TGConnectingPoint num="19" id="6816" />
+<TGConnectingPoint num="20" id="6817" />
+<TGConnectingPoint num="21" id="6818" />
+<TGConnectingPoint num="22" id="6819" />
+<TGConnectingPoint num="23" id="6820" />
+<extraparam>
+<info stereotype="CPURR" nodeName="ADAIF_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="4" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="6796" >
+<father id="6821" num="0" />
+<cdparam x="48" y="315" />
+<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="106" minY="0" maxY="141" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Sink" />
+<TGConnectingPoint num="0" id="6788" />
+<TGConnectingPoint num="1" id="6789" />
+<TGConnectingPoint num="2" id="6790" />
+<TGConnectingPoint num="3" id="6791" />
+<TGConnectingPoint num="4" id="6792" />
+<TGConnectingPoint num="5" id="6793" />
+<TGConnectingPoint num="6" id="6794" />
+<TGConnectingPoint num="7" id="6795" />
+<extraparam>
+<info value="Zigbee_TX::X_Sink" taskName="X_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="Adaif operation" fatherComponentMECType="4" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1106" id="6846" >
+<cdparam x="306" y="545" />
+<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_Bridge" value="name" />
+<TGConnectingPoint num="0" id="6822" />
+<TGConnectingPoint num="1" id="6823" />
+<TGConnectingPoint num="2" id="6824" />
+<TGConnectingPoint num="3" id="6825" />
+<TGConnectingPoint num="4" id="6826" />
+<TGConnectingPoint num="5" id="6827" />
+<TGConnectingPoint num="6" id="6828" />
+<TGConnectingPoint num="7" id="6829" />
+<TGConnectingPoint num="8" id="6830" />
+<TGConnectingPoint num="9" id="6831" />
+<TGConnectingPoint num="10" id="6832" />
+<TGConnectingPoint num="11" id="6833" />
+<TGConnectingPoint num="12" id="6834" />
+<TGConnectingPoint num="13" id="6835" />
+<TGConnectingPoint num="14" id="6836" />
+<TGConnectingPoint num="15" id="6837" />
+<TGConnectingPoint num="16" id="6838" />
+<TGConnectingPoint num="17" id="6839" />
+<TGConnectingPoint num="18" id="6840" />
+<TGConnectingPoint num="19" id="6841" />
+<TGConnectingPoint num="20" id="6842" />
+<TGConnectingPoint num="21" id="6843" />
+<TGConnectingPoint num="22" id="6844" />
+<TGConnectingPoint num="23" id="6845" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="ADAIF_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="6871" >
+<cdparam x="1544" y="737" />
+<sizeparam width="216" height="140" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainMemory" value="name" />
+<TGConnectingPoint num="0" id="6847" />
+<TGConnectingPoint num="1" id="6848" />
+<TGConnectingPoint num="2" id="6849" />
+<TGConnectingPoint num="3" id="6850" />
+<TGConnectingPoint num="4" id="6851" />
+<TGConnectingPoint num="5" id="6852" />
+<TGConnectingPoint num="6" id="6853" />
+<TGConnectingPoint num="7" id="6854" />
+<TGConnectingPoint num="8" id="6855" />
+<TGConnectingPoint num="9" id="6856" />
+<TGConnectingPoint num="10" id="6857" />
+<TGConnectingPoint num="11" id="6858" />
+<TGConnectingPoint num="12" id="6859" />
+<TGConnectingPoint num="13" id="6860" />
+<TGConnectingPoint num="14" id="6861" />
+<TGConnectingPoint num="15" id="6862" />
+<TGConnectingPoint num="16" id="6863" />
+<TGConnectingPoint num="17" id="6864" />
+<TGConnectingPoint num="18" id="6865" />
+<TGConnectingPoint num="19" id="6866" />
+<TGConnectingPoint num="20" id="6867" />
+<TGConnectingPoint num="21" id="6868" />
+<TGConnectingPoint num="22" id="6869" />
+<TGConnectingPoint num="23" id="6870" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="MainMemory" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="4" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="6968" >
+<cdparam x="1444" y="293" />
+<sizeparam width="417" height="293" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainCPU" value="name" />
+<TGConnectingPoint num="0" id="6944" />
+<TGConnectingPoint num="1" id="6945" />
+<TGConnectingPoint num="2" id="6946" />
+<TGConnectingPoint num="3" id="6947" />
+<TGConnectingPoint num="4" id="6948" />
+<TGConnectingPoint num="5" id="6949" />
+<TGConnectingPoint num="6" id="6950" />
+<TGConnectingPoint num="7" id="6951" />
+<TGConnectingPoint num="8" id="6952" />
+<TGConnectingPoint num="9" id="6953" />
+<TGConnectingPoint num="10" id="6954" />
+<TGConnectingPoint num="11" id="6955" />
+<TGConnectingPoint num="12" id="6956" />
+<TGConnectingPoint num="13" id="6957" />
+<TGConnectingPoint num="14" id="6958" />
+<TGConnectingPoint num="15" id="6959" />
+<TGConnectingPoint num="16" id="6960" />
+<TGConnectingPoint num="17" id="6961" />
+<TGConnectingPoint num="18" id="6962" />
+<TGConnectingPoint num="19" id="6963" />
+<TGConnectingPoint num="20" id="6964" />
+<TGConnectingPoint num="21" id="6965" />
+<TGConnectingPoint num="22" id="6966" />
+<TGConnectingPoint num="23" id="6967" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MainCPU" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="6880" >
+<father id="6968" num="0" />
+<cdparam x="1686" y="522" />
+<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="261" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_I" />
+<TGConnectingPoint num="0" id="6872" />
+<TGConnectingPoint num="1" id="6873" />
+<TGConnectingPoint num="2" id="6874" />
+<TGConnectingPoint num="3" id="6875" />
+<TGConnectingPoint num="4" id="6876" />
+<TGConnectingPoint num="5" id="6877" />
+<TGConnectingPoint num="6" id="6878" />
+<TGConnectingPoint num="7" id="6879" />
+<extraparam>
+<info value="Zigbee_TX::F_CWP_I" taskName="F_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_I" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6889" >
+<father id="6968" num="1" />
+<cdparam x="1685" y="459" />
+<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="255" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_Q" />
+<TGConnectingPoint num="0" id="6881" />
+<TGConnectingPoint num="1" id="6882" />
+<TGConnectingPoint num="2" id="6883" />
+<TGConnectingPoint num="3" id="6884" />
+<TGConnectingPoint num="4" id="6885" />
+<TGConnectingPoint num="5" id="6886" />
+<TGConnectingPoint num="6" id="6887" />
+<TGConnectingPoint num="7" id="6888" />
+<extraparam>
+<info value="Zigbee_TX::F_CWP_Q" taskName="F_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_Q" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6898" >
+<father id="6968" num="2" />
+<cdparam x="1691" y="345" />
+<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="272" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_CWL" />
+<TGConnectingPoint num="0" id="6890" />
+<TGConnectingPoint num="1" id="6891" />
+<TGConnectingPoint num="2" id="6892" />
+<TGConnectingPoint num="3" id="6893" />
+<TGConnectingPoint num="4" id="6894" />
+<TGConnectingPoint num="5" id="6895" />
+<TGConnectingPoint num="6" id="6896" />
+<TGConnectingPoint num="7" id="6897" />
+<extraparam>
+<info value="Zigbee_TX::F_CWL" taskName="F_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWL" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6907" >
+<father id="6968" num="3" />
+<cdparam x="1688" y="405" />
+<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="271" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Sink" />
+<TGConnectingPoint num="0" id="6899" />
+<TGConnectingPoint num="1" id="6900" />
+<TGConnectingPoint num="2" id="6901" />
+<TGConnectingPoint num="3" id="6902" />
+<TGConnectingPoint num="4" id="6903" />
+<TGConnectingPoint num="5" id="6904" />
+<TGConnectingPoint num="6" id="6905" />
+<TGConnectingPoint num="7" id="6906" />
+<extraparam>
+<info value="Zigbee_TX::F_Sink" taskName="F_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="F_Sink" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6916" >
+<father id="6968" num="4" />
+<cdparam x="1466" y="518" />
+<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="228" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Chip2Octet" />
+<TGConnectingPoint num="0" id="6908" />
+<TGConnectingPoint num="1" id="6909" />
+<TGConnectingPoint num="2" id="6910" />
+<TGConnectingPoint num="3" id="6911" />
+<TGConnectingPoint num="4" id="6912" />
+<TGConnectingPoint num="5" id="6913" />
+<TGConnectingPoint num="6" id="6914" />
+<TGConnectingPoint num="7" id="6915" />
+<extraparam>
+<info value="Zigbee_TX::F_Chip2Octet" taskName="F_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="F_Chip2Octet" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6925" >
+<father id="6968" num="5" />
+<cdparam x="1466" y="456" />
+<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="194" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Symbol2ChipSeq" />
+<TGConnectingPoint num="0" id="6917" />
+<TGConnectingPoint num="1" id="6918" />
+<TGConnectingPoint num="2" id="6919" />
+<TGConnectingPoint num="3" id="6920" />
+<TGConnectingPoint num="4" id="6921" />
+<TGConnectingPoint num="5" id="6922" />
+<TGConnectingPoint num="6" id="6923" />
+<TGConnectingPoint num="7" id="6924" />
+<extraparam>
+<info value="Zigbee_TX::F_Symbol2ChipSeq" taskName="F_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="F_Symbol2ChipSeq" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6934" >
+<father id="6968" num="6" />
+<cdparam x="1466" y="395" />
+<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Source" />
+<TGConnectingPoint num="0" id="6926" />
+<TGConnectingPoint num="1" id="6927" />
+<TGConnectingPoint num="2" id="6928" />
+<TGConnectingPoint num="3" id="6929" />
+<TGConnectingPoint num="4" id="6930" />
+<TGConnectingPoint num="5" id="6931" />
+<TGConnectingPoint num="6" id="6932" />
+<TGConnectingPoint num="7" id="6933" />
+<extraparam>
+<info value="Zigbee_TX::X_Source" taskName="X_Source" referenceTaskName="Zigbee_TX" priority="0" operation="X_Source" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="6943" >
+<father id="6968" num="7" />
+<cdparam x="1465" y="339" />
+<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" />
+<infoparam name="TGComponent" value="Zigbee_TX::F_Source" />
+<TGConnectingPoint num="0" id="6935" />
+<TGConnectingPoint num="1" id="6936" />
+<TGConnectingPoint num="2" id="6937" />
+<TGConnectingPoint num="3" id="6938" />
+<TGConnectingPoint num="4" id="6939" />
+<TGConnectingPoint num="5" id="6940" />
+<TGConnectingPoint num="6" id="6941" />
+<TGConnectingPoint num="7" id="6942" />
+<extraparam>
+<info value="Zigbee_TX::F_Source" taskName="F_Source" referenceTaskName="Zigbee_TX" priority="0" operation="F_Source" fatherComponentMECType="0" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1102" id="6993" >
+<cdparam x="1527" y="635" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainBus" value="name" />
+<TGConnectingPoint num="0" id="6969" />
+<TGConnectingPoint num="1" id="6970" />
+<TGConnectingPoint num="2" id="6971" />
+<TGConnectingPoint num="3" id="6972" />
+<TGConnectingPoint num="4" id="6973" />
+<TGConnectingPoint num="5" id="6974" />
+<TGConnectingPoint num="6" id="6975" />
+<TGConnectingPoint num="7" id="6976" />
+<TGConnectingPoint num="8" id="6977" />
+<TGConnectingPoint num="9" id="6978" />
+<TGConnectingPoint num="10" id="6979" />
+<TGConnectingPoint num="11" id="6980" />
+<TGConnectingPoint num="12" id="6981" />
+<TGConnectingPoint num="13" id="6982" />
+<TGConnectingPoint num="14" id="6983" />
+<TGConnectingPoint num="15" id="6984" />
+<TGConnectingPoint num="16" id="6985" />
+<TGConnectingPoint num="17" id="6986" />
+<TGConnectingPoint num="18" id="6987" />
+<TGConnectingPoint num="19" id="6988" />
+<TGConnectingPoint num="20" id="6989" />
+<TGConnectingPoint num="21" id="6990" />
+<TGConnectingPoint num="22" id="6991" />
+<TGConnectingPoint num="23" id="6992" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="MainBus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="7018" >
+<cdparam x="1367" y="610" />
+<sizeparam width="100" height="100" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MainBridge" value="name" />
+<TGConnectingPoint num="0" id="6994" />
+<TGConnectingPoint num="1" id="6995" />
+<TGConnectingPoint num="2" id="6996" />
+<TGConnectingPoint num="3" id="6997" />
+<TGConnectingPoint num="4" id="6998" />
+<TGConnectingPoint num="5" id="6999" />
+<TGConnectingPoint num="6" id="7000" />
+<TGConnectingPoint num="7" id="7001" />
+<TGConnectingPoint num="8" id="7002" />
+<TGConnectingPoint num="9" id="7003" />
+<TGConnectingPoint num="10" id="7004" />
+<TGConnectingPoint num="11" id="7005" />
+<TGConnectingPoint num="12" id="7006" />
+<TGConnectingPoint num="13" id="7007" />
+<TGConnectingPoint num="14" id="7008" />
+<TGConnectingPoint num="15" id="7009" />
+<TGConnectingPoint num="16" id="7010" />
+<TGConnectingPoint num="17" id="7011" />
+<TGConnectingPoint num="18" id="7012" />
+<TGConnectingPoint num="19" id="7013" />
+<TGConnectingPoint num="20" id="7014" />
+<TGConnectingPoint num="21" id="7015" />
+<TGConnectingPoint num="22" id="7016" />
+<TGConnectingPoint num="23" id="7017" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="MainBridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="7043" >
+<cdparam x="231" y="635" />
+<sizeparam width="845" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="Crossbar" value="name" />
+<TGConnectingPoint num="0" id="7019" />
+<TGConnectingPoint num="1" id="7020" />
+<TGConnectingPoint num="2" id="7021" />
+<TGConnectingPoint num="3" id="7022" />
+<TGConnectingPoint num="4" id="7023" />
+<TGConnectingPoint num="5" id="7024" />
+<TGConnectingPoint num="6" id="7025" />
+<TGConnectingPoint num="7" id="7026" />
+<TGConnectingPoint num="8" id="7027" />
+<TGConnectingPoint num="9" id="7028" />
+<TGConnectingPoint num="10" id="7029" />
+<TGConnectingPoint num="11" id="7030" />
+<TGConnectingPoint num="12" id="7031" />
+<TGConnectingPoint num="13" id="7032" />
+<TGConnectingPoint num="14" id="7033" />
+<TGConnectingPoint num="15" id="7034" />
+<TGConnectingPoint num="16" id="7035" />
+<TGConnectingPoint num="17" id="7036" />
+<TGConnectingPoint num="18" id="7037" />
+<TGConnectingPoint num="19" id="7038" />
+<TGConnectingPoint num="20" id="7039" />
+<TGConnectingPoint num="21" id="7040" />
+<TGConnectingPoint num="22" id="7041" />
+<TGConnectingPoint num="23" id="7042" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="Crossbar" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="7068" >
+<cdparam x="306" y="737" />
+<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_Bridge" value="name" />
+<TGConnectingPoint num="0" id="7044" />
+<TGConnectingPoint num="1" id="7045" />
+<TGConnectingPoint num="2" id="7046" />
+<TGConnectingPoint num="3" id="7047" />
+<TGConnectingPoint num="4" id="7048" />
+<TGConnectingPoint num="5" id="7049" />
+<TGConnectingPoint num="6" id="7050" />
+<TGConnectingPoint num="7" id="7051" />
+<TGConnectingPoint num="8" id="7052" />
+<TGConnectingPoint num="9" id="7053" />
+<TGConnectingPoint num="10" id="7054" />
+<TGConnectingPoint num="11" id="7055" />
+<TGConnectingPoint num="12" id="7056" />
+<TGConnectingPoint num="13" id="7057" />
+<TGConnectingPoint num="14" id="7058" />
+<TGConnectingPoint num="15" id="7059" />
+<TGConnectingPoint num="16" id="7060" />
+<TGConnectingPoint num="17" id="7061" />
+<TGConnectingPoint num="18" id="7062" />
+<TGConnectingPoint num="19" id="7063" />
+<TGConnectingPoint num="20" id="7064" />
+<TGConnectingPoint num="21" id="7065" />
+<TGConnectingPoint num="22" id="7066" />
+<TGConnectingPoint num="23" id="7067" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="INTL_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="7093" >
+<cdparam x="376" y="949" />
+<sizeparam width="331" height="135" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_MSS" value="name" />
+<TGConnectingPoint num="0" id="7069" />
+<TGConnectingPoint num="1" id="7070" />
+<TGConnectingPoint num="2" id="7071" />
+<TGConnectingPoint num="3" id="7072" />
+<TGConnectingPoint num="4" id="7073" />
+<TGConnectingPoint num="5" id="7074" />
+<TGConnectingPoint num="6" id="7075" />
+<TGConnectingPoint num="7" id="7076" />
+<TGConnectingPoint num="8" id="7077" />
+<TGConnectingPoint num="9" id="7078" />
+<TGConnectingPoint num="10" id="7079" />
+<TGConnectingPoint num="11" id="7080" />
+<TGConnectingPoint num="12" id="7081" />
+<TGConnectingPoint num="13" id="7082" />
+<TGConnectingPoint num="14" id="7083" />
+<TGConnectingPoint num="15" id="7084" />
+<TGConnectingPoint num="16" id="7085" />
+<TGConnectingPoint num="17" id="7086" />
+<TGConnectingPoint num="18" id="7087" />
+<TGConnectingPoint num="19" id="7088" />
+<TGConnectingPoint num="20" id="7089" />
+<TGConnectingPoint num="21" id="7090" />
+<TGConnectingPoint num="22" id="7091" />
+<TGConnectingPoint num="23" id="7092" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="INTL_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="3" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="7127" >
+<cdparam x="91" y="938" />
+<sizeparam width="234" height="140" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_PSS" value="name" />
+<TGConnectingPoint num="0" id="7103" />
+<TGConnectingPoint num="1" id="7104" />
+<TGConnectingPoint num="2" id="7105" />
+<TGConnectingPoint num="3" id="7106" />
+<TGConnectingPoint num="4" id="7107" />
+<TGConnectingPoint num="5" id="7108" />
+<TGConnectingPoint num="6" id="7109" />
+<TGConnectingPoint num="7" id="7110" />
+<TGConnectingPoint num="8" id="7111" />
+<TGConnectingPoint num="9" id="7112" />
+<TGConnectingPoint num="10" id="7113" />
+<TGConnectingPoint num="11" id="7114" />
+<TGConnectingPoint num="12" id="7115" />
+<TGConnectingPoint num="13" id="7116" />
+<TGConnectingPoint num="14" id="7117" />
+<TGConnectingPoint num="15" id="7118" />
+<TGConnectingPoint num="16" id="7119" />
+<TGConnectingPoint num="17" id="7120" />
+<TGConnectingPoint num="18" id="7121" />
+<TGConnectingPoint num="19" id="7122" />
+<TGConnectingPoint num="20" id="7123" />
+<TGConnectingPoint num="21" id="7124" />
+<TGConnectingPoint num="22" id="7125" />
+<TGConnectingPoint num="23" id="7126" />
+<extraparam>
+<info stereotype="CPURR" nodeName="INTL_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="2" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="7102" >
+<father id="7127" num="0" />
+<cdparam x="105" y="993" />
+<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="45" minY="0" maxY="100" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Chip2Octet" />
+<TGConnectingPoint num="0" id="7094" />
+<TGConnectingPoint num="1" id="7095" />
+<TGConnectingPoint num="2" id="7096" />
+<TGConnectingPoint num="3" id="7097" />
+<TGConnectingPoint num="4" id="7098" />
+<TGConnectingPoint num="5" id="7099" />
+<TGConnectingPoint num="6" id="7100" />
+<TGConnectingPoint num="7" id="7101" />
+<extraparam>
+<info value="Zigbee_TX::X_Chip2Octet" taskName="X_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="Interleaver operation" fatherComponentMECType="2" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1102" id="7152" >
+<cdparam x="231" y="832" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="INTL_Bus" value="name" />
+<TGConnectingPoint num="0" id="7128" />
+<TGConnectingPoint num="1" id="7129" />
+<TGConnectingPoint num="2" id="7130" />
+<TGConnectingPoint num="3" id="7131" />
+<TGConnectingPoint num="4" id="7132" />
+<TGConnectingPoint num="5" id="7133" />
+<TGConnectingPoint num="6" id="7134" />
+<TGConnectingPoint num="7" id="7135" />
+<TGConnectingPoint num="8" id="7136" />
+<TGConnectingPoint num="9" id="7137" />
+<TGConnectingPoint num="10" id="7138" />
+<TGConnectingPoint num="11" id="7139" />
+<TGConnectingPoint num="12" id="7140" />
+<TGConnectingPoint num="13" id="7141" />
+<TGConnectingPoint num="14" id="7142" />
+<TGConnectingPoint num="15" id="7143" />
+<TGConnectingPoint num="16" id="7144" />
+<TGConnectingPoint num="17" id="7145" />
+<TGConnectingPoint num="18" id="7146" />
+<TGConnectingPoint num="19" id="7147" />
+<TGConnectingPoint num="20" id="7148" />
+<TGConnectingPoint num="21" id="7149" />
+<TGConnectingPoint num="22" id="7150" />
+<TGConnectingPoint num="23" id="7151" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="INTL_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="7177" >
+<cdparam x="231" y="447" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="ADAIF_Bus" value="name" />
+<TGConnectingPoint num="0" id="7153" />
+<TGConnectingPoint num="1" id="7154" />
+<TGConnectingPoint num="2" id="7155" />
+<TGConnectingPoint num="3" id="7156" />
+<TGConnectingPoint num="4" id="7157" />
+<TGConnectingPoint num="5" id="7158" />
+<TGConnectingPoint num="6" id="7159" />
+<TGConnectingPoint num="7" id="7160" />
+<TGConnectingPoint num="8" id="7161" />
+<TGConnectingPoint num="9" id="7162" />
+<TGConnectingPoint num="10" id="7163" />
+<TGConnectingPoint num="11" id="7164" />
+<TGConnectingPoint num="12" id="7165" />
+<TGConnectingPoint num="13" id="7166" />
+<TGConnectingPoint num="14" id="7167" />
+<TGConnectingPoint num="15" id="7168" />
+<TGConnectingPoint num="16" id="7169" />
+<TGConnectingPoint num="17" id="7170" />
+<TGConnectingPoint num="18" id="7171" />
+<TGConnectingPoint num="19" id="7172" />
+<TGConnectingPoint num="20" id="7173" />
+<TGConnectingPoint num="21" id="7174" />
+<TGConnectingPoint num="22" id="7175" />
+<TGConnectingPoint num="23" id="7176" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="ADAIF_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="7202" >
+<cdparam x="1147" y="408" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_DMA" value="name" />
+<TGConnectingPoint num="0" id="7178" />
+<TGConnectingPoint num="1" id="7179" />
+<TGConnectingPoint num="2" id="7180" />
+<TGConnectingPoint num="3" id="7181" />
+<TGConnectingPoint num="4" id="7182" />
+<TGConnectingPoint num="5" id="7183" />
+<TGConnectingPoint num="6" id="7184" />
+<TGConnectingPoint num="7" id="7185" />
+<TGConnectingPoint num="8" id="7186" />
+<TGConnectingPoint num="9" id="7187" />
+<TGConnectingPoint num="10" id="7188" />
+<TGConnectingPoint num="11" id="7189" />
+<TGConnectingPoint num="12" id="7190" />
+<TGConnectingPoint num="13" id="7191" />
+<TGConnectingPoint num="14" id="7192" />
+<TGConnectingPoint num="15" id="7193" />
+<TGConnectingPoint num="16" id="7194" />
+<TGConnectingPoint num="17" id="7195" />
+<TGConnectingPoint num="18" id="7196" />
+<TGConnectingPoint num="19" id="7197" />
+<TGConnectingPoint num="20" id="7198" />
+<TGConnectingPoint num="21" id="7199" />
+<TGConnectingPoint num="22" id="7200" />
+<TGConnectingPoint num="23" id="7201" />
+<extraparam>
+<info stereotype="CPURR" nodeName="FEP_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="7227" >
+<cdparam x="895" y="193" />
+<sizeparam width="255" height="183" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_MSS" value="name" />
+<TGConnectingPoint num="0" id="7203" />
+<TGConnectingPoint num="1" id="7204" />
+<TGConnectingPoint num="2" id="7205" />
+<TGConnectingPoint num="3" id="7206" />
+<TGConnectingPoint num="4" id="7207" />
+<TGConnectingPoint num="5" id="7208" />
+<TGConnectingPoint num="6" id="7209" />
+<TGConnectingPoint num="7" id="7210" />
+<TGConnectingPoint num="8" id="7211" />
+<TGConnectingPoint num="9" id="7212" />
+<TGConnectingPoint num="10" id="7213" />
+<TGConnectingPoint num="11" id="7214" />
+<TGConnectingPoint num="12" id="7215" />
+<TGConnectingPoint num="13" id="7216" />
+<TGConnectingPoint num="14" id="7217" />
+<TGConnectingPoint num="15" id="7218" />
+<TGConnectingPoint num="16" id="7219" />
+<TGConnectingPoint num="17" id="7220" />
+<TGConnectingPoint num="18" id="7221" />
+<TGConnectingPoint num="19" id="7222" />
+<TGConnectingPoint num="20" id="7223" />
+<TGConnectingPoint num="21" id="7224" />
+<TGConnectingPoint num="22" id="7225" />
+<TGConnectingPoint num="23" id="7226" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="FEP_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="0" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="7279" >
+<cdparam x="619" y="199" />
+<sizeparam width="238" height="185" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_PSS" value="name" />
+<TGConnectingPoint num="0" id="7255" />
+<TGConnectingPoint num="1" id="7256" />
+<TGConnectingPoint num="2" id="7257" />
+<TGConnectingPoint num="3" id="7258" />
+<TGConnectingPoint num="4" id="7259" />
+<TGConnectingPoint num="5" id="7260" />
+<TGConnectingPoint num="6" id="7261" />
+<TGConnectingPoint num="7" id="7262" />
+<TGConnectingPoint num="8" id="7263" />
+<TGConnectingPoint num="9" id="7264" />
+<TGConnectingPoint num="10" id="7265" />
+<TGConnectingPoint num="11" id="7266" />
+<TGConnectingPoint num="12" id="7267" />
+<TGConnectingPoint num="13" id="7268" />
+<TGConnectingPoint num="14" id="7269" />
+<TGConnectingPoint num="15" id="7270" />
+<TGConnectingPoint num="16" id="7271" />
+<TGConnectingPoint num="17" id="7272" />
+<TGConnectingPoint num="18" id="7273" />
+<TGConnectingPoint num="19" id="7274" />
+<TGConnectingPoint num="20" id="7275" />
+<TGConnectingPoint num="21" id="7276" />
+<TGConnectingPoint num="22" id="7277" />
+<TGConnectingPoint num="23" id="7278" />
+<extraparam>
+<info stereotype="CPURR" nodeName="FEP_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="2" execcTime="1" clockRatio="1" MECType="1" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="7236" >
+<father id="7279" num="0" />
+<cdparam x="639" y="239" />
+<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="93" minY="0" maxY="145" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_CWL" />
+<TGConnectingPoint num="0" id="7228" />
+<TGConnectingPoint num="1" id="7229" />
+<TGConnectingPoint num="2" id="7230" />
+<TGConnectingPoint num="3" id="7231" />
+<TGConnectingPoint num="4" id="7232" />
+<TGConnectingPoint num="5" id="7233" />
+<TGConnectingPoint num="6" id="7234" />
+<TGConnectingPoint num="7" id="7235" />
+<extraparam>
+<info value="Zigbee_TX::X_CWL" taskName="X_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="CWL" fatherComponentMECType="1" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="7245" >
+<father id="7279" num="1" />
+<cdparam x="640" y="335" />
+<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="76" minY="0" maxY="145" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_Q" />
+<TGConnectingPoint num="0" id="7237" />
+<TGConnectingPoint num="1" id="7238" />
+<TGConnectingPoint num="2" id="7239" />
+<TGConnectingPoint num="3" id="7240" />
+<TGConnectingPoint num="4" id="7241" />
+<TGConnectingPoint num="5" id="7242" />
+<TGConnectingPoint num="6" id="7243" />
+<TGConnectingPoint num="7" id="7244" />
+<extraparam>
+<info value="Zigbee_TX::X_CWP_Q" taskName="X_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" />
+</extraparam>
+</SUBCOMPONENT>
+<SUBCOMPONENT type="1101" id="7254" >
+<father id="7279" num="2" />
+<cdparam x="671" y="289" />
+<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="82" minY="0" maxY="145" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_I" />
+<TGConnectingPoint num="0" id="7246" />
+<TGConnectingPoint num="1" id="7247" />
+<TGConnectingPoint num="2" id="7248" />
+<TGConnectingPoint num="3" id="7249" />
+<TGConnectingPoint num="4" id="7250" />
+<TGConnectingPoint num="5" id="7251" />
+<TGConnectingPoint num="6" id="7252" />
+<TGConnectingPoint num="7" id="7253" />
+<extraparam>
+<info value="Zigbee_TX::X_CWP_I" taskName="X_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1106" id="7304" >
+<cdparam x="910" y="531" />
+<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_Bridge" value="name" />
+<TGConnectingPoint num="0" id="7280" />
+<TGConnectingPoint num="1" id="7281" />
+<TGConnectingPoint num="2" id="7282" />
+<TGConnectingPoint num="3" id="7283" />
+<TGConnectingPoint num="4" id="7284" />
+<TGConnectingPoint num="5" id="7285" />
+<TGConnectingPoint num="6" id="7286" />
+<TGConnectingPoint num="7" id="7287" />
+<TGConnectingPoint num="8" id="7288" />
+<TGConnectingPoint num="9" id="7289" />
+<TGConnectingPoint num="10" id="7290" />
+<TGConnectingPoint num="11" id="7291" />
+<TGConnectingPoint num="12" id="7292" />
+<TGConnectingPoint num="13" id="7293" />
+<TGConnectingPoint num="14" id="7294" />
+<TGConnectingPoint num="15" id="7295" />
+<TGConnectingPoint num="16" id="7296" />
+<TGConnectingPoint num="17" id="7297" />
+<TGConnectingPoint num="18" id="7298" />
+<TGConnectingPoint num="19" id="7299" />
+<TGConnectingPoint num="20" id="7300" />
+<TGConnectingPoint num="21" id="7301" />
+<TGConnectingPoint num="22" id="7302" />
+<TGConnectingPoint num="23" id="7303" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="FEP_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1102" id="7329" >
+<cdparam x="835" y="433" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="FEP_Bus" value="name" />
+<TGConnectingPoint num="0" id="7305" />
+<TGConnectingPoint num="1" id="7306" />
+<TGConnectingPoint num="2" id="7307" />
+<TGConnectingPoint num="3" id="7308" />
+<TGConnectingPoint num="4" id="7309" />
+<TGConnectingPoint num="5" id="7310" />
+<TGConnectingPoint num="6" id="7311" />
+<TGConnectingPoint num="7" id="7312" />
+<TGConnectingPoint num="8" id="7313" />
+<TGConnectingPoint num="9" id="7314" />
+<TGConnectingPoint num="10" id="7315" />
+<TGConnectingPoint num="11" id="7316" />
+<TGConnectingPoint num="12" id="7317" />
+<TGConnectingPoint num="13" id="7318" />
+<TGConnectingPoint num="14" id="7319" />
+<TGConnectingPoint num="15" id="7320" />
+<TGConnectingPoint num="16" id="7321" />
+<TGConnectingPoint num="17" id="7322" />
+<TGConnectingPoint num="18" id="7323" />
+<TGConnectingPoint num="19" id="7324" />
+<TGConnectingPoint num="20" id="7325" />
+<TGConnectingPoint num="21" id="7326" />
+<TGConnectingPoint num="22" id="7327" />
+<TGConnectingPoint num="23" id="7328" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="FEP_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="7354" >
+<cdparam x="1174" y="850" />
+<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_DMA" value="name" />
+<TGConnectingPoint num="0" id="7330" />
+<TGConnectingPoint num="1" id="7331" />
+<TGConnectingPoint num="2" id="7332" />
+<TGConnectingPoint num="3" id="7333" />
+<TGConnectingPoint num="4" id="7334" />
+<TGConnectingPoint num="5" id="7335" />
+<TGConnectingPoint num="6" id="7336" />
+<TGConnectingPoint num="7" id="7337" />
+<TGConnectingPoint num="8" id="7338" />
+<TGConnectingPoint num="9" id="7339" />
+<TGConnectingPoint num="10" id="7340" />
+<TGConnectingPoint num="11" id="7341" />
+<TGConnectingPoint num="12" id="7342" />
+<TGConnectingPoint num="13" id="7343" />
+<TGConnectingPoint num="14" id="7344" />
+<TGConnectingPoint num="15" id="7345" />
+<TGConnectingPoint num="16" id="7346" />
+<TGConnectingPoint num="17" id="7347" />
+<TGConnectingPoint num="18" id="7348" />
+<TGConnectingPoint num="19" id="7349" />
+<TGConnectingPoint num="20" id="7350" />
+<TGConnectingPoint num="21" id="7351" />
+<TGConnectingPoint num="22" id="7352" />
+<TGConnectingPoint num="23" id="7353" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MAPPER_DMA" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/>
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1106" id="7379" >
+<cdparam x="920" y="780" />
+<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_Bridge" value="name" />
+<TGConnectingPoint num="0" id="7355" />
+<TGConnectingPoint num="1" id="7356" />
+<TGConnectingPoint num="2" id="7357" />
+<TGConnectingPoint num="3" id="7358" />
+<TGConnectingPoint num="4" id="7359" />
+<TGConnectingPoint num="5" id="7360" />
+<TGConnectingPoint num="6" id="7361" />
+<TGConnectingPoint num="7" id="7362" />
+<TGConnectingPoint num="8" id="7363" />
+<TGConnectingPoint num="9" id="7364" />
+<TGConnectingPoint num="10" id="7365" />
+<TGConnectingPoint num="11" id="7366" />
+<TGConnectingPoint num="12" id="7367" />
+<TGConnectingPoint num="13" id="7368" />
+<TGConnectingPoint num="14" id="7369" />
+<TGConnectingPoint num="15" id="7370" />
+<TGConnectingPoint num="16" id="7371" />
+<TGConnectingPoint num="17" id="7372" />
+<TGConnectingPoint num="18" id="7373" />
+<TGConnectingPoint num="19" id="7374" />
+<TGConnectingPoint num="20" id="7375" />
+<TGConnectingPoint num="21" id="7376" />
+<TGConnectingPoint num="22" id="7377" />
+<TGConnectingPoint num="23" id="7378" />
+<extraparam>
+<info stereotype="BRIDGE" nodeName="MAPPER_Bridge" />
+<attributes bufferByteDataSize="4"  clockRatio="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1105" id="7404" >
+<cdparam x="1043" y="978" />
+<sizeparam width="314" height="125" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_MSS" value="name" />
+<TGConnectingPoint num="0" id="7380" />
+<TGConnectingPoint num="1" id="7381" />
+<TGConnectingPoint num="2" id="7382" />
+<TGConnectingPoint num="3" id="7383" />
+<TGConnectingPoint num="4" id="7384" />
+<TGConnectingPoint num="5" id="7385" />
+<TGConnectingPoint num="6" id="7386" />
+<TGConnectingPoint num="7" id="7387" />
+<TGConnectingPoint num="8" id="7388" />
+<TGConnectingPoint num="9" id="7389" />
+<TGConnectingPoint num="10" id="7390" />
+<TGConnectingPoint num="11" id="7391" />
+<TGConnectingPoint num="12" id="7392" />
+<TGConnectingPoint num="13" id="7393" />
+<TGConnectingPoint num="14" id="7394" />
+<TGConnectingPoint num="15" id="7395" />
+<TGConnectingPoint num="16" id="7396" />
+<TGConnectingPoint num="17" id="7397" />
+<TGConnectingPoint num="18" id="7398" />
+<TGConnectingPoint num="19" id="7399" />
+<TGConnectingPoint num="20" id="7400" />
+<TGConnectingPoint num="21" id="7401" />
+<TGConnectingPoint num="22" id="7402" />
+<TGConnectingPoint num="23" id="7403" />
+<extraparam>
+<info stereotype="MEMORY" nodeName="MAPPER_MSS" />
+<attributes byteDataSize="4"  clockRatio="1"  bufferType="1" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1100" id="7438" >
+<cdparam x="759" y="981" />
+<sizeparam width="219" height="158" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_PSS" value="name" />
+<TGConnectingPoint num="0" id="7414" />
+<TGConnectingPoint num="1" id="7415" />
+<TGConnectingPoint num="2" id="7416" />
+<TGConnectingPoint num="3" id="7417" />
+<TGConnectingPoint num="4" id="7418" />
+<TGConnectingPoint num="5" id="7419" />
+<TGConnectingPoint num="6" id="7420" />
+<TGConnectingPoint num="7" id="7421" />
+<TGConnectingPoint num="8" id="7422" />
+<TGConnectingPoint num="9" id="7423" />
+<TGConnectingPoint num="10" id="7424" />
+<TGConnectingPoint num="11" id="7425" />
+<TGConnectingPoint num="12" id="7426" />
+<TGConnectingPoint num="13" id="7427" />
+<TGConnectingPoint num="14" id="7428" />
+<TGConnectingPoint num="15" id="7429" />
+<TGConnectingPoint num="16" id="7430" />
+<TGConnectingPoint num="17" id="7431" />
+<TGConnectingPoint num="18" id="7432" />
+<TGConnectingPoint num="19" id="7433" />
+<TGConnectingPoint num="20" id="7434" />
+<TGConnectingPoint num="21" id="7435" />
+<TGConnectingPoint num="22" id="7436" />
+<TGConnectingPoint num="23" id="7437" />
+<extraparam>
+<info stereotype="CPURR" nodeName="MAPPER_PSS" />
+<attributes nbOfCores="1" byteDataSize="4"  schedulingPolicy="0"  sliceTime="10000"  goIdleTime="10"  maxConsecutiveIdleCycles="10"  pipelineSize="5"  taskSwitchingTime="20"  branchingPredictionPenalty="2"  cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="3" encryption="0"/>
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1101" id="7413" >
+<father id="7438" num="0" />
+<cdparam x="755" y="1028" />
+<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="-4" minY="0" maxY="118" />
+<infoparam name="TGComponent" value="Zigbee_TX::X_Symbol2ChipSeq" />
+<TGConnectingPoint num="0" id="7405" />
+<TGConnectingPoint num="1" id="7406" />
+<TGConnectingPoint num="2" id="7407" />
+<TGConnectingPoint num="3" id="7408" />
+<TGConnectingPoint num="4" id="7409" />
+<TGConnectingPoint num="5" id="7410" />
+<TGConnectingPoint num="6" id="7411" />
+<TGConnectingPoint num="7" id="7412" />
+<extraparam>
+<info value="Zigbee_TX::X_Symbol2ChipSeq" taskName="X_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="Mapper operation" fatherComponentMECType="3" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1102" id="7463" >
+<cdparam x="845" y="875" />
+<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="MAPPER_Bus" value="name" />
+<TGConnectingPoint num="0" id="7439" />
+<TGConnectingPoint num="1" id="7440" />
+<TGConnectingPoint num="2" id="7441" />
+<TGConnectingPoint num="3" id="7442" />
+<TGConnectingPoint num="4" id="7443" />
+<TGConnectingPoint num="5" id="7444" />
+<TGConnectingPoint num="6" id="7445" />
+<TGConnectingPoint num="7" id="7446" />
+<TGConnectingPoint num="8" id="7447" />
+<TGConnectingPoint num="9" id="7448" />
+<TGConnectingPoint num="10" id="7449" />
+<TGConnectingPoint num="11" id="7450" />
+<TGConnectingPoint num="12" id="7451" />
+<TGConnectingPoint num="13" id="7452" />
+<TGConnectingPoint num="14" id="7453" />
+<TGConnectingPoint num="15" id="7454" />
+<TGConnectingPoint num="16" id="7455" />
+<TGConnectingPoint num="17" id="7456" />
+<TGConnectingPoint num="18" id="7457" />
+<TGConnectingPoint num="19" id="7458" />
+<TGConnectingPoint num="20" id="7459" />
+<TGConnectingPoint num="21" id="7460" />
+<TGConnectingPoint num="22" id="7461" />
+<TGConnectingPoint num="23" id="7462" />
+<extraparam>
+<info stereotype="BUS-RR" nodeName="MAPPER_Bus" />
+<attributes byteDataSize="4"  arbitrationPolicy="0"  sliceTime="10000"  pipelineSize="1"  clockRatio="1"  privacy="0"  referenceAttack="" />
+</extraparam>
+</COMPONENT>
+
+<COMPONENT type="1108" id="7481" >
+<cdparam x="103" y="1267" />
+<sizeparam width="419" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_Symbol2ChipSeq_Chips2Octet" value="CP0" />
+<TGConnectingPoint num="0" id="7473" />
+<TGConnectingPoint num="1" id="7474" />
+<TGConnectingPoint num="2" id="7475" />
+<TGConnectingPoint num="3" id="7476" />
+<TGConnectingPoint num="4" id="7477" />
+<TGConnectingPoint num="5" id="7478" />
+<TGConnectingPoint num="6" id="7479" />
+<TGConnectingPoint num="7" id="7480" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_Symbol2ChipSeq_Chips2Octet" cpMEC="Single DMA" transferType1="0" transferType2="0" />
+<attributes reference="DMA_transfer" />
+<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="MAPPER_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="INTL_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="MAPPER_DMA" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="Crossbar, INTL_Bridge, INTL_Bus, MAPPER_Bridge, MAPPER_Bus" />
+<mappedAttributes type="int" name="destinationAddress" value="123" />
+<mappedAttributes type="int" name="sourceAddress" value="123" />
+<mappedAttributes type="int" name="counter" value="123" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="7472" >
+<father id="7481" num="0" />
+<cdparam x="292" y="1303" />
+<sizeparam width="212" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="207" minY="0" maxY="45" />
+<infoparam name="TGComponent" value="Zigbee_TX::chip2octet_ch_in" />
+<TGConnectingPoint num="0" id="7464" />
+<TGConnectingPoint num="1" id="7465" />
+<TGConnectingPoint num="2" id="7466" />
+<TGConnectingPoint num="3" id="7467" />
+<TGConnectingPoint num="4" id="7468" />
+<TGConnectingPoint num="5" id="7469" />
+<TGConnectingPoint num="6" id="7470" />
+<TGConnectingPoint num="7" id="7471" />
+<extraparam>
+<info value="Zigbee_TX::chip2octet_ch_in" portName="chip2octet_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="INTL_MSS" bufferType="3" packedBinaryIn="" width="" bitInOffset="" inputOffset="" packedBinaryOut="" bitOutOffset="" outputOffset="" offsetPerm="" lengthPerm="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1108" id="7499" >
+<cdparam x="105" y="1396" />
+<sizeparam width="405" height="88" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_Chip2Octet_CWL" value="CP0" />
+<TGConnectingPoint num="0" id="7491" />
+<TGConnectingPoint num="1" id="7492" />
+<TGConnectingPoint num="2" id="7493" />
+<TGConnectingPoint num="3" id="7494" />
+<TGConnectingPoint num="4" id="7495" />
+<TGConnectingPoint num="5" id="7496" />
+<TGConnectingPoint num="6" id="7497" />
+<TGConnectingPoint num="7" id="7498" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_Chip2Octet_CWL" cpMEC="Single DMA" transferType1="0" transferType2="0" />
+<attributes reference="DMA_transfer" />
+<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="INTL_DMA" />
+<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="INTL_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="FEP_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="INTL_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="Crossbar, INTL_Bridge, INTL_Bus, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="7490" >
+<father id="7499" num="0" />
+<cdparam x="327" y="1437" />
+<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="241" minY="0" maxY="48" />
+<infoparam name="TGComponent" value="Zigbee_TX::cwl_ch_in" />
+<TGConnectingPoint num="0" id="7482" />
+<TGConnectingPoint num="1" id="7483" />
+<TGConnectingPoint num="2" id="7484" />
+<TGConnectingPoint num="3" id="7485" />
+<TGConnectingPoint num="4" id="7486" />
+<TGConnectingPoint num="5" id="7487" />
+<TGConnectingPoint num="6" id="7488" />
+<TGConnectingPoint num="7" id="7489" />
+<extraparam>
+<info value="Zigbee_TX::cwl_ch_in" portName="cwl_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="FEP_MSS" bufferType="0" baseAddress="0x123" numSamples="1234" bank="0" dataType="int8" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1108" id="7517" >
+<cdparam x="627" y="1252" />
+<sizeparam width="295" height="145" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_sink" value="CP0" />
+<TGConnectingPoint num="0" id="7509" />
+<TGConnectingPoint num="1" id="7510" />
+<TGConnectingPoint num="2" id="7511" />
+<TGConnectingPoint num="3" id="7512" />
+<TGConnectingPoint num="4" id="7513" />
+<TGConnectingPoint num="5" id="7514" />
+<TGConnectingPoint num="6" id="7515" />
+<TGConnectingPoint num="7" id="7516" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_sink" cpMEC="Double DMA" transferType1="0" transferType2="0" />
+<attributes reference="Double_DMA_transfer" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="FEP_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_2" architectureUnit="FEP_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="FEP_DMA" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_2" architectureUnit="FEP_DMA" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_2" architectureUnit="ADAIF_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="ADAIF_MSS" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_2" architectureUnit="MainCPU" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_6" architectureUnit="FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_5" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_8" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_7" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="7508" >
+<father id="7517" num="0" />
+<cdparam x="701" y="1315" />
+<sizeparam width="170" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="125" minY="0" maxY="105" />
+<infoparam name="TGComponent" value="Zigbee_TX::sink_ch_in" />
+<TGConnectingPoint num="0" id="7500" />
+<TGConnectingPoint num="1" id="7501" />
+<TGConnectingPoint num="2" id="7502" />
+<TGConnectingPoint num="3" id="7503" />
+<TGConnectingPoint num="4" id="7504" />
+<TGConnectingPoint num="5" id="7505" />
+<TGConnectingPoint num="6" id="7506" />
+<TGConnectingPoint num="7" id="7507" />
+<extraparam>
+<info value="Zigbee_TX::sink_ch_in" portName="sink_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="ADAIF_MSS" bufferType="2" numSamples="" baseAddress="" />
+</extraparam>
+</SUBCOMPONENT>
+
+<COMPONENT type="1108" id="7535" >
+<cdparam x="106" y="1143" />
+<sizeparam width="421" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" />
+<infoparam name="CP_Source_to_Bits2Symbol" value="CP0" />
+<TGConnectingPoint num="0" id="7527" />
+<TGConnectingPoint num="1" id="7528" />
+<TGConnectingPoint num="2" id="7529" />
+<TGConnectingPoint num="3" id="7530" />
+<TGConnectingPoint num="4" id="7531" />
+<TGConnectingPoint num="5" id="7532" />
+<TGConnectingPoint num="6" id="7533" />
+<TGConnectingPoint num="7" id="7534" />
+<extraparam>
+<info stereotype="CP" nodeName="CP_Source_to_Bits2Symbol" cpMEC="Memory Copy" transferType1="0" transferType2="0" />
+<attributes reference="DMA_transfer" />
+<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="MAPPER_MSS" />
+<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="MAPPER_DMA" />
+<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" />
+<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="ADAIF_MSS" />
+<mappedAttributes type="addr" name="sourceAddress" value="0x123" />
+</extraparam>
+</COMPONENT>
+<SUBCOMPONENT type="1110" id="7526" >
+<father id="7535" num="0" />
+<cdparam x="280" y="1181" />
+<sizeparam width="247" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<hidden value="false" />
+<cdrectangleparam minX="0" maxX="174" minY="0" maxY="45" />
+<infoparam name="TGComponent" value="Zigbee_TX::symbol2ChipSeq_ch_in" />
+<TGConnectingPoint num="0" id="7518" />
+<TGConnectingPoint num="1" id="7519" />
+<TGConnectingPoint num="2" id="7520" />
+<TGConnectingPoint num="3" id="7521" />
+<TGConnectingPoint num="4" id="7522" />
+<TGConnectingPoint num="5" id="7523" />
+<TGConnectingPoint num="6" id="7524" />
+<TGConnectingPoint num="7" id="7525" />
+<extraparam>
+<info value="Zigbee_TX::symbol2ChipSeq_ch_in" portName="symbol2ChipSeq_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="MAPPER_MSS" bufferType="1" numSamplesDataIn="" baseAddressDataIn="" bitsPerSymbolDataIn="" symmetricalValueDataIn="OFF" baseAddressDataOut="0x123" baseAddressLUT="0x123" />
+</extraparam>
+</SUBCOMPONENT>
+
+<CONNECTOR type="125" id="7536" >
+<cdparam x="1367" y="660" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1367" y="660" id="6997" />
+<P2  x="1076" y="660" id="7023" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7537" >
+<cdparam x="1147" y="508" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1147" y="508" id="7183" />
+<P2  x="1076" y="635" id="7021" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7538" >
+<cdparam x="1298" y="875" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1249" y="850" id="7331" />
+<P2  x="1076" y="685" id="7026" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7539" >
+<cdparam x="1019" y="805" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="970" y="780" id="7356" />
+<P2  x="864" y="685" id="7034" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7540" >
+<cdparam x="1004" y="531" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="960" y="566" id="7286" />
+<P2  x="864" y="635" id="7028" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7541" >
+<cdparam x="1185" y="660" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1467" y="660" id="6998" />
+<P2  x="1527" y="660" id="6972" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7542" >
+<cdparam x="356" y="788" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="788" id="7050" />
+<P2  x="356" y="832" id="7129" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7543" >
+<cdparam x="554" y="806" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="560" y="807" id="6713" />
+<P2  x="442" y="685" id="7033" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7544" >
+<cdparam x="559" y="863" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="560" y="857" id="6716" />
+<P2  x="481" y="857" id="7132" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7545" >
+<cdparam x="586" y="970" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="541" y="949" id="7070" />
+<P2  x="418" y="882" id="7143" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7546" >
+<cdparam x="165" y="927" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="208" y="938" id="7104" />
+<P2  x="293" y="882" id="7142" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7547" >
+<cdparam x="355" y="576" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="580" id="6828" />
+<P2  x="231" y="635" id="7019" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7548" >
+<cdparam x="355" y="541" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="545" id="6823" />
+<P2  x="356" y="497" id="7159" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7549" >
+<cdparam x="543" y="522" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="543" y="522" id="6743" />
+<P2  x="442" y="635" id="7027" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7550" >
+<cdparam x="536" y="475" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="543" y="472" id="6741" />
+<P2  x="481" y="472" id="7157" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7551" >
+<cdparam x="549" y="337" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="454" y="395" id="6769" />
+<P2  x="418" y="447" id="7162" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7552" >
+<cdparam x="155" y="323" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="155" y="396" id="6803" />
+<P2  x="293" y="447" id="7161" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7553" >
+<cdparam x="357" y="778" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="356" y="737" id="7045" />
+<P2  x="231" y="685" id="7024" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7554" >
+<cdparam x="1654" y="758" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1652" y="737" id="6848" />
+<P2  x="1652" y="685" id="6975" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7555" >
+<cdparam x="1651" y="573" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1652" y="586" id="6950" />
+<P2  x="1652" y="635" id="6970" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7556" >
+<cdparam x="959" y="527" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="960" y="531" id="7281" />
+<P2  x="960" y="483" id="7311" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7557" >
+<cdparam x="1140" y="461" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1147" y="458" id="7181" />
+<P2  x="1085" y="458" id="7309" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7558" >
+<cdparam x="1189" y="374" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1022" y="376" id="7209" />
+<P2  x="1022" y="433" id="7314" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7559" >
+<cdparam x="795" y="360" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="738" y="384" id="7261" />
+<P2  x="897" y="433" id="7313" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7560" >
+<cdparam x="970" y="831" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="970" y="831" id="7361" />
+<P2  x="970" y="875" id="7440" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7561" >
+<cdparam x="1173" y="906" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1174" y="900" id="7333" />
+<P2  x="1095" y="900" id="7443" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7562" >
+<cdparam x="1200" y="1013" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="1200" y="978" id="7381" />
+<P2  x="1032" y="925" id="7454" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+<CONNECTOR type="125" id="7563" >
+<cdparam x="779" y="970" />
+<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<infoparam name="connector" value="{info}" />
+<P1  x="868" y="981" id="7415" />
+<P2  x="907" y="925" id="7453" />
+<AutomaticDrawing  data="true" />
+<extraparam>
+<info priority="0" />
+<spy value="false" />
+</extraparam>
+</CONNECTOR>
+
+</TMLArchiDiagramPanel>
+
+</Modeling>
+
+
+
+
+</TURTLEGMODELING>
\ No newline at end of file