diff --git a/modeling/AVATAR/CoffeeMachine_Avatar.xml b/modeling/AVATAR/CoffeeMachine_Avatar.xml
index 418d8e038cee46aac1524e425394411adb36a950..4b806f16364b010281c0cdd8ea4121daef1f4501 100644
--- a/modeling/AVATAR/CoffeeMachine_Avatar.xml
+++ b/modeling/AVATAR/CoffeeMachine_Avatar.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
 
-<TURTLEGMODELING version="0.99">
+<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" >
@@ -578,7 +578,7 @@
 <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="368" />
+<P1  x="313" y="261" id="381" />
 <P2  x="361" y="261" id="356" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
@@ -596,7 +596,7 @@
 <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="381" />
+<P1  x="309" y="211" id="368" />
 <P2  x="361" y="211" id="355" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR>
@@ -685,11 +685,11 @@
 </COMPONENT>
 <SUBCOMPONENT type="5304" id="378" >
 <father id="416" num="0" />
-<cdparam x="165" y="241" />
-<sizeparam width="148" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="20" minY="0" maxY="114" />
-<infoparam name="TGComponent" value="WaitingForFirstCoin_enter" />
+<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" />
@@ -705,11 +705,11 @@
 </SUBCOMPONENT>
 <SUBCOMPONENT type="5304" id="391" >
 <father id="416" num="1" />
-<cdparam x="170" y="191" />
-<sizeparam width="139" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<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="29" minY="0" maxY="114" />
-<infoparam name="TGComponent" value="WaitingForFirstCoin_exit" />
+<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" />
@@ -839,7 +839,7 @@
 <TGConnectingPoint num="0" id="475" />
 <TGConnectingPoint num="1" id="476" />
 <TGConnectingPoint num="2" id="477" />
-<P1  x="581" y="154" id="564" />
+<P1  x="581" y="154" id="551" />
 <P2  x="546" y="305" id="621" />
 <Point x="518" y="154" />
 <Point x="518" y="305" />
@@ -867,7 +867,7 @@
 <infoparam name="connector from TGComponent to TGComponent" value="" />
 <TGConnectingPoint num="0" id="480" />
 <TGConnectingPoint num="1" id="481" />
-<P1  x="631" y="164" id="559" />
+<P1  x="631" y="164" id="546" />
 <P2  x="667" y="310" id="608" />
 <Point x="631" y="310" />
 <AutomaticDrawing  data="true" />
@@ -895,7 +895,7 @@
 <infoparam name="connector from TGComponent to TGComponent" value="" />
 <TGConnectingPoint num="0" id="486" />
 <TGConnectingPoint num="1" id="487" />
-<P1  x="721" y="158" id="544" />
+<P1  x="721" y="158" id="557" />
 <P2  x="700" y="204" id="598" />
 <Point x="700" y="158" />
 <AutomaticDrawing  data="true" />
@@ -1050,13 +1050,13 @@
 <TGConnectingPoint num="22" id="591" />
 <TGConnectingPoint num="23" id="592" />
 </COMPONENT>
-<SUBCOMPONENT type="5303" id="555" >
+<SUBCOMPONENT type="5304" id="555" >
 <father id="593" num="0" />
-<cdparam x="721" y="133" />
-<sizeparam width="100" height="50" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="65" />
-<infoparam name="TGComponent" value="nbOfCoins" />
+<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" />
@@ -1069,17 +1069,14 @@
 <TGConnectingPoint num="9" id="552" />
 <TGConnectingPoint num="10" id="553" />
 <TGConnectingPoint num="11" id="554" />
-<extraparam>
-<Toggle value="" />
-</extraparam>
 </SUBCOMPONENT>
-<SUBCOMPONENT type="5304" id="568" >
+<SUBCOMPONENT type="5303" id="568" >
 <father id="593" num="1" />
-<cdparam x="581" y="125" />
-<sizeparam width="100" height="39" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<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="76" />
-<infoparam name="TGComponent" value="Start" />
+<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" />
@@ -1092,6 +1089,9 @@
 <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" >
@@ -1221,7 +1221,7 @@
 <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="695" />
+<P1  x="559" y="330" id="720" />
 <P2  x="560" y="377" id="753" />
 <AutomaticDrawing  data="true" />
 <extraparam>
@@ -1251,7 +1251,7 @@
 <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="720" />
+<P1  x="789" y="326" id="695" />
 <P2  x="790" y="377" id="754" />
 <AutomaticDrawing  data="true" />
 <extraparam>
@@ -1350,11 +1350,11 @@
 </COMPONENT>
 <SUBCOMPONENT type="5000" id="713" >
 <father id="763" num="0" />
-<cdparam x="464" y="228" />
-<sizeparam width="190" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="271" minY="0" maxY="256" />
-<infoparam name="Block1" value="CoffeeButton" />
+<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" />
@@ -1381,17 +1381,17 @@
 <TGConnectingPoint num="23" id="712" />
 <extraparam>
 <CryptoBlock value="false" />
-<Attribute access="0" id="mechanicalDelay" value="80" type="8" typeOther="" />
+<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="695" y="224" />
-<sizeparam width="189" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="272" minY="0" maxY="256" />
-<infoparam name="Block1" value="TeaButton" />
+<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" />
@@ -1418,7 +1418,7 @@
 <TGConnectingPoint num="23" id="737" />
 <extraparam>
 <CryptoBlock value="false" />
-<Attribute access="0" id="mechanicalDelay" value="10" type="8" typeOther="" />
+<Attribute access="0" id="mechanicalDelay" value="80" type="8" typeOther="" />
 <Signal value="out push()" attached="false" />
 </extraparam>
 </SUBCOMPONENT>
@@ -1804,7 +1804,7 @@
 <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="1357" />
+<P1  x="437" y="525" id="1292" />
 <P2  x="323" y="748" id="1218" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR><SUBCOMPONENT type="-1" id="957" >
@@ -1833,8 +1833,8 @@
 <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="1306" />
-<P2  x="437" y="495" id="1356" />
+<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" />
@@ -1861,7 +1861,7 @@
 <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="1292" />
+<P1  x="293" y="552" id="1357" />
 <P2  x="289" y="748" id="1210" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR><SUBCOMPONENT type="-1" id="971" >
@@ -1891,8 +1891,8 @@
 <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="1317" />
-<P2  x="293" y="522" id="1291" />
+<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" />
@@ -1919,7 +1919,7 @@
 <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="1346" />
+<P1  x="121" y="552" id="1303" />
 <P2  x="255" y="748" id="1217" />
 <AutomaticDrawing  data="true" />
 </CONNECTOR><SUBCOMPONENT type="-1" id="985" >
@@ -1949,8 +1949,8 @@
 <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="1316" />
-<P2  x="121" y="522" id="1345" />
+<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" />
@@ -1977,8 +1977,8 @@
 <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="1343" />
-<P2  x="255" y="435" id="1303" />
+<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" />
@@ -2561,13 +2561,13 @@
 <extraparam>
 </extraparam>
 </COMPONENT>
-<SUBCOMPONENT type="5104" id="1301" >
+<SUBCOMPONENT type="5103" id="1301" >
 <father id="1407" num="0" />
-<cdparam x="231" y="527" />
-<sizeparam width="124" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="465" minY="0" maxY="334" />
-<infoparam name="Send signal" value="pushTeaButton()" />
+<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" />
@@ -2580,13 +2580,13 @@
 <TGConnectingPoint num="9" id="1300" />
 <accessibility />
 </SUBCOMPONENT>
-<SUBCOMPONENT type="5106" id="1342" >
+<SUBCOMPONENT type="5104" id="1312" >
 <father id="1407" num="1" />
-<cdparam x="189" y="435" />
-<sizeparam width="132" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<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="445" minY="0" maxY="314" />
-<infoparam name="state0" value="WaitingForSelection" />
+<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" />
@@ -2597,74 +2597,74 @@
 <TGConnectingPoint num="7" id="1309" />
 <TGConnectingPoint num="8" id="1310" />
 <TGConnectingPoint num="9" id="1311" />
-<TGConnectingPoint num="10" id="1312" />
-<TGConnectingPoint num="11" id="1313" />
-<TGConnectingPoint num="12" id="1314" />
-<TGConnectingPoint num="13" id="1315" />
-<TGConnectingPoint num="14" id="1316" />
-<TGConnectingPoint num="15" id="1317" />
-<TGConnectingPoint num="16" id="1318" />
-<TGConnectingPoint num="17" id="1319" />
-<TGConnectingPoint num="18" id="1320" />
-<TGConnectingPoint num="19" id="1321" />
-<TGConnectingPoint num="20" id="1322" />
-<TGConnectingPoint num="21" id="1323" />
-<TGConnectingPoint num="22" id="1324" />
-<TGConnectingPoint num="23" id="1325" />
-<TGConnectingPoint num="24" id="1326" />
-<TGConnectingPoint num="25" id="1327" />
-<TGConnectingPoint num="26" id="1328" />
-<TGConnectingPoint num="27" id="1329" />
-<TGConnectingPoint num="28" id="1330" />
-<TGConnectingPoint num="29" id="1331" />
-<TGConnectingPoint num="30" id="1332" />
-<TGConnectingPoint num="31" id="1333" />
-<TGConnectingPoint num="32" id="1334" />
-<TGConnectingPoint num="33" id="1335" />
-<TGConnectingPoint num="34" id="1336" />
-<TGConnectingPoint num="35" id="1337" />
-<TGConnectingPoint num="36" id="1338" />
-<TGConnectingPoint num="37" id="1339" />
-<TGConnectingPoint num="38" id="1340" />
-<TGConnectingPoint num="39" id="1341" />
-<extraparam>
-</extraparam>
+<accessibility />
 </SUBCOMPONENT>
-<SUBCOMPONENT type="5100" id="1344" >
+<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="1343" />
+<TGConnectingPoint num="0" id="1313" />
 </SUBCOMPONENT>
-<SUBCOMPONENT type="5104" id="1355" >
+<SUBCOMPONENT type="5106" id="1355" >
 <father id="1407" num="3" />
-<cdparam x="51" y="527" />
-<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<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="450" minY="0" maxY="334" />
-<infoparam name="Send signal" value="pushCoffeeButton()" />
-<TGConnectingPoint num="0" id="1345" />
-<TGConnectingPoint num="1" id="1346" />
-<TGConnectingPoint num="2" id="1347" />
-<TGConnectingPoint num="3" id="1348" />
-<TGConnectingPoint num="4" id="1349" />
-<TGConnectingPoint num="5" id="1350" />
-<TGConnectingPoint num="6" id="1351" />
-<TGConnectingPoint num="7" id="1352" />
-<TGConnectingPoint num="8" id="1353" />
-<TGConnectingPoint num="9" id="1354" />
-<accessibility />
+<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="5103" id="1366" >
+<SUBCOMPONENT type="5104" id="1366" >
 <father id="1407" num="4" />
-<cdparam x="367" y="500" />
-<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<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="447" minY="0" maxY="334" />
-<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" />
+<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" />
@@ -2681,19 +2681,19 @@
 
 </AVATARStateMachineDiagramPanel>
 
-<AVATARStateMachineDiagramPanel name="TeaButton" minX="10" maxX="1400" minY="10" maxY="900" >
+<AVATARStateMachineDiagramPanel name="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" >
 <CONNECTOR type="5102" id="1414" >
-<cdparam x="363" y="193" />
+<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 Send signal to state0" value="null" />
+<infoparam name="connector from start state to Send signal" value="null" />
 <TGConnectingPoint num="0" id="1413" />
-<P1  x="363" y="204" id="1430" />
-<P2  x="362" y="257" id="1441" />
+<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="380" y="228" />
-<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="" />
@@ -2703,7 +2703,7 @@
 <TGConnectingPoint num="3" id="1411" />
 <extraparam>
 <guard value="[ ]" />
-<afterMin value="mechanicalDelay" />
+<afterMin value="" />
 <afterMax value="" />
 <computeMin value="" />
 <computeMax value="" />
@@ -2711,16 +2711,16 @@
 </SUBCOMPONENT>
 
 <CONNECTOR type="5102" id="1421" >
-<cdparam x="363" y="150" />
+<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 state0 to Send signal" value="null" />
+<infoparam name="connector from start state to state0" value="null" />
 <TGConnectingPoint num="0" id="1420" />
-<P1  x="363" y="150" id="1487" />
-<P2  x="363" y="174" id="1429" />
+<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="363" y="190" />
+<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" />
@@ -2739,16 +2739,16 @@
 </SUBCOMPONENT>
 
 <CONNECTOR type="5102" id="1428" >
-<cdparam x="362" y="101" />
+<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 start state to state0" value="null" />
+<infoparam name="connector from state0 to Send signal" value="null" />
 <TGConnectingPoint num="0" id="1427" />
-<P1  x="362" y="101" id="1522" />
-<P2  x="363" y="120" id="1482" />
+<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="362" y="141" />
+<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" />
@@ -2766,184 +2766,271 @@
 </extraparam>
 </SUBCOMPONENT>
 
-<COMPONENT type="5103" id="1439" >
-<cdparam x="338" y="179" />
-<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<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="Send signal" value="push()" />
+<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" />
-<TGConnectingPoint num="4" id="1433" />
-<TGConnectingPoint num="5" id="1434" />
-<TGConnectingPoint num="6" id="1435" />
-<TGConnectingPoint num="7" id="1436" />
-<TGConnectingPoint num="8" id="1437" />
-<TGConnectingPoint num="9" id="1438" />
-</COMPONENT>
+<extraparam>
+<guard value="[ ]" />
+<afterMin value="mechanicalDelay" />
+<afterMax value="" />
+<computeMin value="" />
+<computeMax value="" />
+</extraparam>
+</SUBCOMPONENT>
 
-<COMPONENT type="5106" id="1480" >
-<cdparam x="337" y="257" />
+<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="1440" />
-<TGConnectingPoint num="1" id="1441" />
-<TGConnectingPoint num="2" id="1442" />
-<TGConnectingPoint num="3" id="1443" />
-<TGConnectingPoint num="4" id="1444" />
-<TGConnectingPoint num="5" id="1445" />
-<TGConnectingPoint num="6" id="1446" />
-<TGConnectingPoint num="7" id="1447" />
-<TGConnectingPoint num="8" id="1448" />
-<TGConnectingPoint num="9" id="1449" />
-<TGConnectingPoint num="10" id="1450" />
-<TGConnectingPoint num="11" id="1451" />
-<TGConnectingPoint num="12" id="1452" />
-<TGConnectingPoint num="13" id="1453" />
-<TGConnectingPoint num="14" id="1454" />
-<TGConnectingPoint num="15" id="1455" />
-<TGConnectingPoint num="16" id="1456" />
-<TGConnectingPoint num="17" id="1457" />
-<TGConnectingPoint num="18" id="1458" />
-<TGConnectingPoint num="19" id="1459" />
-<TGConnectingPoint num="20" id="1460" />
-<TGConnectingPoint num="21" id="1461" />
-<TGConnectingPoint num="22" id="1462" />
-<TGConnectingPoint num="23" id="1463" />
-<TGConnectingPoint num="24" id="1464" />
-<TGConnectingPoint num="25" id="1465" />
-<TGConnectingPoint num="26" id="1466" />
-<TGConnectingPoint num="27" id="1467" />
-<TGConnectingPoint num="28" id="1468" />
-<TGConnectingPoint num="29" id="1469" />
-<TGConnectingPoint num="30" id="1470" />
-<TGConnectingPoint num="31" id="1471" />
-<TGConnectingPoint num="32" id="1472" />
-<TGConnectingPoint num="33" id="1473" />
-<TGConnectingPoint num="34" id="1474" />
-<TGConnectingPoint num="35" id="1475" />
-<TGConnectingPoint num="36" id="1476" />
-<TGConnectingPoint num="37" id="1477" />
-<TGConnectingPoint num="38" id="1478" />
-<TGConnectingPoint num="39" id="1479" />
+<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="1521" >
-<cdparam x="338" y="120" />
+<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="1481" />
-<TGConnectingPoint num="1" id="1482" />
-<TGConnectingPoint num="2" id="1483" />
-<TGConnectingPoint num="3" id="1484" />
-<TGConnectingPoint num="4" id="1485" />
-<TGConnectingPoint num="5" id="1486" />
-<TGConnectingPoint num="6" id="1487" />
-<TGConnectingPoint num="7" id="1488" />
-<TGConnectingPoint num="8" id="1489" />
-<TGConnectingPoint num="9" id="1490" />
-<TGConnectingPoint num="10" id="1491" />
-<TGConnectingPoint num="11" id="1492" />
-<TGConnectingPoint num="12" id="1493" />
-<TGConnectingPoint num="13" id="1494" />
-<TGConnectingPoint num="14" id="1495" />
-<TGConnectingPoint num="15" id="1496" />
-<TGConnectingPoint num="16" id="1497" />
-<TGConnectingPoint num="17" id="1498" />
-<TGConnectingPoint num="18" id="1499" />
-<TGConnectingPoint num="19" id="1500" />
-<TGConnectingPoint num="20" id="1501" />
-<TGConnectingPoint num="21" id="1502" />
-<TGConnectingPoint num="22" id="1503" />
-<TGConnectingPoint num="23" id="1504" />
-<TGConnectingPoint num="24" id="1505" />
-<TGConnectingPoint num="25" id="1506" />
-<TGConnectingPoint num="26" id="1507" />
-<TGConnectingPoint num="27" id="1508" />
-<TGConnectingPoint num="28" id="1509" />
-<TGConnectingPoint num="29" id="1510" />
-<TGConnectingPoint num="30" id="1511" />
-<TGConnectingPoint num="31" id="1512" />
-<TGConnectingPoint num="32" id="1513" />
-<TGConnectingPoint num="33" id="1514" />
-<TGConnectingPoint num="34" id="1515" />
-<TGConnectingPoint num="35" id="1516" />
-<TGConnectingPoint num="36" id="1517" />
-<TGConnectingPoint num="37" id="1518" />
-<TGConnectingPoint num="38" id="1519" />
-<TGConnectingPoint num="39" id="1520" />
+<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="1523" >
-<cdparam x="355" y="81" />
+<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="1522" />
+<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="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" >
-<CONNECTOR type="5102" id="1530" >
-<cdparam x="177" y="199" />
+<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 start state to Send signal" value="null" />
-<TGConnectingPoint num="0" id="1529" />
-<P1  x="340" y="233" id="1647" />
-<P2  x="353" y="252" id="1636" />
+<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="1528" >
-<father id="1530" num="0" />
-<cdparam x="177" y="239" />
-<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+</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="1524" />
-<TGConnectingPoint num="1" id="1525" />
-<TGConnectingPoint num="2" id="1526" />
-<TGConnectingPoint num="3" id="1527" />
+<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="" />
+<afterMin value="mechanicalDelay" />
 <afterMax value="" />
 <computeMin value="" />
 <computeMax value="" />
 </extraparam>
 </SUBCOMPONENT>
 
-<CONNECTOR type="5102" id="1537" >
-<cdparam x="322" y="69" />
+<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 start state to state0" value="null" />
-<TGConnectingPoint num="0" id="1536" />
-<P1  x="322" y="69" id="1634" />
-<P2  x="323" y="88" id="1594" />
+<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="1535" >
-<father id="1537" num="0" />
-<cdparam x="322" y="109" />
+</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="1531" />
-<TGConnectingPoint num="1" id="1532" />
-<TGConnectingPoint num="2" id="1533" />
-<TGConnectingPoint num="3" id="1534" />
+<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="" />
@@ -2953,25 +3040,25 @@
 </extraparam>
 </SUBCOMPONENT>
 
-<CONNECTOR type="5102" id="1544" >
-<cdparam x="377" y="144" />
+<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 state0 to Send signal" value="null" />
-<TGConnectingPoint num="0" id="1543" />
-<P1  x="323" y="118" id="1599" />
-<P2  x="356" y="174" id="1650" />
+<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="1542" >
-<father id="1544" num="0" />
-<cdparam x="377" y="184" />
+</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="1538" />
-<TGConnectingPoint num="1" id="1539" />
-<TGConnectingPoint num="2" id="1540" />
-<TGConnectingPoint num="3" id="1541" />
+<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="" />
@@ -2981,220 +3068,133 @@
 </extraparam>
 </SUBCOMPONENT>
 
-<CONNECTOR type="5102" id="1551" >
-<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="1550" />
-<P1  x="353" y="282" id="1637" />
-<P2  x="399" y="352" id="1553" />
-<AutomaticDrawing  data="true" />
-</CONNECTOR><SUBCOMPONENT type="-1" id="1549" >
-<father id="1551" num="0" />
-<cdparam x="417" y="335" />
-<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<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="List of all parameters of an Avatar SMD transition" value="" />
-<TGConnectingPoint num="0" id="1545" />
-<TGConnectingPoint num="1" id="1546" />
-<TGConnectingPoint num="2" id="1547" />
-<TGConnectingPoint num="3" id="1548" />
-<extraparam>
-<guard value="[ ]" />
-<afterMin value="mechanicalDelay" />
-<afterMax value="" />
-<computeMin value="" />
-<computeMax value="" />
-</extraparam>
-</SUBCOMPONENT>
+<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="1592" >
-<cdparam x="374" y="352" />
+<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="1552" />
-<TGConnectingPoint num="1" id="1553" />
-<TGConnectingPoint num="2" id="1554" />
-<TGConnectingPoint num="3" id="1555" />
-<TGConnectingPoint num="4" id="1556" />
-<TGConnectingPoint num="5" id="1557" />
-<TGConnectingPoint num="6" id="1558" />
-<TGConnectingPoint num="7" id="1559" />
-<TGConnectingPoint num="8" id="1560" />
-<TGConnectingPoint num="9" id="1561" />
-<TGConnectingPoint num="10" id="1562" />
-<TGConnectingPoint num="11" id="1563" />
-<TGConnectingPoint num="12" id="1564" />
-<TGConnectingPoint num="13" id="1565" />
-<TGConnectingPoint num="14" id="1566" />
-<TGConnectingPoint num="15" id="1567" />
-<TGConnectingPoint num="16" id="1568" />
-<TGConnectingPoint num="17" id="1569" />
-<TGConnectingPoint num="18" id="1570" />
-<TGConnectingPoint num="19" id="1571" />
-<TGConnectingPoint num="20" id="1572" />
-<TGConnectingPoint num="21" id="1573" />
-<TGConnectingPoint num="22" id="1574" />
-<TGConnectingPoint num="23" id="1575" />
-<TGConnectingPoint num="24" id="1576" />
-<TGConnectingPoint num="25" id="1577" />
-<TGConnectingPoint num="26" id="1578" />
-<TGConnectingPoint num="27" id="1579" />
-<TGConnectingPoint num="28" id="1580" />
-<TGConnectingPoint num="29" id="1581" />
-<TGConnectingPoint num="30" id="1582" />
-<TGConnectingPoint num="31" id="1583" />
-<TGConnectingPoint num="32" id="1584" />
-<TGConnectingPoint num="33" id="1585" />
-<TGConnectingPoint num="34" id="1586" />
-<TGConnectingPoint num="35" id="1587" />
-<TGConnectingPoint num="36" id="1588" />
-<TGConnectingPoint num="37" id="1589" />
-<TGConnectingPoint num="38" id="1590" />
-<TGConnectingPoint num="39" id="1591" />
+<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="1633" >
-<cdparam x="298" y="88" />
+<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="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" />
-<TGConnectingPoint num="10" id="1603" />
-<TGConnectingPoint num="11" id="1604" />
-<TGConnectingPoint num="12" id="1605" />
-<TGConnectingPoint num="13" id="1606" />
-<TGConnectingPoint num="14" id="1607" />
-<TGConnectingPoint num="15" id="1608" />
-<TGConnectingPoint num="16" id="1609" />
-<TGConnectingPoint num="17" id="1610" />
-<TGConnectingPoint num="18" id="1611" />
-<TGConnectingPoint num="19" id="1612" />
-<TGConnectingPoint num="20" id="1613" />
-<TGConnectingPoint num="21" id="1614" />
-<TGConnectingPoint num="22" id="1615" />
-<TGConnectingPoint num="23" id="1616" />
-<TGConnectingPoint num="24" id="1617" />
-<TGConnectingPoint num="25" id="1618" />
-<TGConnectingPoint num="26" id="1619" />
-<TGConnectingPoint num="27" id="1620" />
-<TGConnectingPoint num="28" id="1621" />
-<TGConnectingPoint num="29" id="1622" />
-<TGConnectingPoint num="30" id="1623" />
-<TGConnectingPoint num="31" id="1624" />
-<TGConnectingPoint num="32" id="1625" />
-<TGConnectingPoint num="33" id="1626" />
-<TGConnectingPoint num="34" id="1627" />
-<TGConnectingPoint num="35" id="1628" />
-<TGConnectingPoint num="36" id="1629" />
-<TGConnectingPoint num="37" id="1630" />
-<TGConnectingPoint num="38" id="1631" />
-<TGConnectingPoint num="39" id="1632" />
+<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="1635" >
-<cdparam x="315" y="49" />
+<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="1634" />
+<TGConnectingPoint num="0" id="1688" />
 </COMPONENT>
 
-<COMPONENT type="5106" id="1689" >
-<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="1649" />
-<TGConnectingPoint num="1" id="1650" />
-<TGConnectingPoint num="2" id="1651" />
-<TGConnectingPoint num="3" id="1652" />
-<TGConnectingPoint num="4" id="1653" />
-<TGConnectingPoint num="5" id="1654" />
-<TGConnectingPoint num="6" id="1655" />
-<TGConnectingPoint num="7" id="1656" />
-<TGConnectingPoint num="8" id="1657" />
-<TGConnectingPoint num="9" id="1658" />
-<TGConnectingPoint num="10" id="1659" />
-<TGConnectingPoint num="11" id="1660" />
-<TGConnectingPoint num="12" id="1661" />
-<TGConnectingPoint num="13" id="1662" />
-<TGConnectingPoint num="14" id="1663" />
-<TGConnectingPoint num="15" id="1664" />
-<TGConnectingPoint num="16" id="1665" />
-<TGConnectingPoint num="17" id="1666" />
-<TGConnectingPoint num="18" id="1667" />
-<TGConnectingPoint num="19" id="1668" />
-<TGConnectingPoint num="20" id="1669" />
-<TGConnectingPoint num="21" id="1670" />
-<TGConnectingPoint num="22" id="1671" />
-<TGConnectingPoint num="23" id="1672" />
-<TGConnectingPoint num="24" id="1673" />
-<TGConnectingPoint num="25" id="1674" />
-<TGConnectingPoint num="26" id="1675" />
-<TGConnectingPoint num="27" id="1676" />
-<TGConnectingPoint num="28" id="1677" />
-<TGConnectingPoint num="29" id="1678" />
-<TGConnectingPoint num="30" id="1679" />
-<TGConnectingPoint num="31" id="1680" />
-<TGConnectingPoint num="32" id="1681" />
-<TGConnectingPoint num="33" id="1682" />
-<TGConnectingPoint num="34" id="1683" />
-<TGConnectingPoint num="35" id="1684" />
-<TGConnectingPoint num="36" id="1685" />
-<TGConnectingPoint num="37" id="1686" />
-<TGConnectingPoint num="38" id="1687" />
-<TGConnectingPoint num="39" id="1688" />
-<extraparam>
-</extraparam>
-</COMPONENT>
-<SUBCOMPONENT type="5103" id="1646" >
-<father id="1689" num="0" />
-<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="1636" />
-<TGConnectingPoint num="1" id="1637" />
-<TGConnectingPoint num="2" id="1638" />
-<TGConnectingPoint num="3" id="1639" />
-<TGConnectingPoint num="4" id="1640" />
-<TGConnectingPoint num="5" id="1641" />
-<TGConnectingPoint num="6" id="1642" />
-<TGConnectingPoint num="7" id="1643" />
-<TGConnectingPoint num="8" id="1644" />
-<TGConnectingPoint num="9" id="1645" />
-</SUBCOMPONENT>
-<SUBCOMPONENT type="5100" id="1648" >
-<father id="1689" num="1" />
-<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="1647" />
-</SUBCOMPONENT>
-
 
 </AVATARStateMachineDiagramPanel>
 
@@ -3216,7 +3216,7 @@
 <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="1803" />
+<P1  x="559" y="330" id="1778" />
 <P2  x="560" y="377" id="1836" />
 <AutomaticDrawing  data="true" />
 <extraparam>
@@ -3246,7 +3246,7 @@
 <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="1778" />
+<P1  x="789" y="326" id="1803" />
 <P2  x="790" y="377" id="1837" />
 <AutomaticDrawing  data="true" />
 <extraparam>
@@ -3255,73 +3255,17 @@
 <FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" />
 </extraparam>
 </CONNECTOR>
-<COMPONENT type="302" id="1712" >
-<cdparam x="498" y="455" />
-<sizeparam width="274" height="71" 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="Proverif Pragma" value="SecreyAssymptions Wallet.nbOfCoins
-" />
-<TGConnectingPoint num="0" id="1696" />
-<TGConnectingPoint num="1" id="1697" />
-<TGConnectingPoint num="2" id="1698" />
-<TGConnectingPoint num="3" id="1699" />
-<TGConnectingPoint num="4" id="1700" />
-<TGConnectingPoint num="5" id="1701" />
-<TGConnectingPoint num="6" id="1702" />
-<TGConnectingPoint num="7" id="1703" />
-<TGConnectingPoint num="8" id="1704" />
-<TGConnectingPoint num="9" id="1705" />
-<TGConnectingPoint num="10" id="1706" />
-<TGConnectingPoint num="11" id="1707" />
-<TGConnectingPoint num="12" id="1708" />
-<TGConnectingPoint num="13" id="1709" />
-<TGConnectingPoint num="14" id="1710" />
-<TGConnectingPoint num="15" id="1711" />
-<extraparam>
-<Line value="SecreyAssymptions Wallet.nbOfCoins" />
-</extraparam>
-</COMPONENT>
-
-<COMPONENT type="307" id="1729" >
-<cdparam x="94" y="513" />
-<sizeparam width="342" height="45" 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="Performance Pragma" value="Latenc(Block1.state, block2.state)
-" />
-<TGConnectingPoint num="0" id="1713" />
-<TGConnectingPoint num="1" id="1714" />
-<TGConnectingPoint num="2" id="1715" />
-<TGConnectingPoint num="3" id="1716" />
-<TGConnectingPoint num="4" id="1717" />
-<TGConnectingPoint num="5" id="1718" />
-<TGConnectingPoint num="6" id="1719" />
-<TGConnectingPoint num="7" id="1720" />
-<TGConnectingPoint num="8" id="1721" />
-<TGConnectingPoint num="9" id="1722" />
-<TGConnectingPoint num="10" id="1723" />
-<TGConnectingPoint num="11" id="1724" />
-<TGConnectingPoint num="12" id="1725" />
-<TGConnectingPoint num="13" id="1726" />
-<TGConnectingPoint num="14" id="1727" />
-<TGConnectingPoint num="15" id="1728" />
-<extraparam>
-<Line value="Latenc(Block1.state, block2.state)" />
-</extraparam>
-</COMPONENT>
-
 <COMPONENT type="303" id="1746" >
 <cdparam x="92" y="385" />
-<sizeparam width="390" height="110" minWidth="80" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" />
+<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;1
+<infoparam name="UPPAAL Pragma" value="A[] Wallet.nbOfCoins&lt;3
 A[] CoffeeButton.main
-A[] CoffeeMachine.WaitingForSelection
+A&lt;&gt; CoffeeMachine.WaitingForSelection
 E&lt;&gt; CoffeeMachine.WaitingForSelection
-A[] Wallet.b == true &amp;&amp; Wallet.b == false
-A[]Wallet.b== true" />
+
+" />
 <TGConnectingPoint num="0" id="1730" />
 <TGConnectingPoint num="1" id="1731" />
 <TGConnectingPoint num="2" id="1732" />
@@ -3339,12 +3283,10 @@ A[]Wallet.b== true" />
 <TGConnectingPoint num="14" id="1744" />
 <TGConnectingPoint num="15" id="1745" />
 <extraparam>
-<Line value="A[] Wallet.nbOfCoins&lt;1" />
+<Line value="A[] Wallet.nbOfCoins&lt;3" />
 <Line value="A[] CoffeeButton.main" />
-<Line value="A[] CoffeeMachine.WaitingForSelection" />
+<Line value="A&lt;&gt; CoffeeMachine.WaitingForSelection" />
 <Line value="E&lt;&gt; CoffeeMachine.WaitingForSelection" />
-<Line value="A[] Wallet.b == true &amp;&amp; Wallet.b == false" />
-<Line value="A[]Wallet.b== true" />
 </extraparam>
 </COMPONENT>
 
@@ -3384,7 +3326,6 @@ A[]Wallet.b== true" />
 <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="" />
-<Attribute access="0" id="b" value="" type="4" typeOther="" />
 <Method value="contentOfWallet(int nbOfCoins)" />
 <Signal value="in getCoin(int nbOfCoins)" attached="true" />
 <Signal value="out putCoin(int nbOfCoins)" attached="true" />
@@ -3439,11 +3380,11 @@ A[]Wallet.b== true" />
 </COMPONENT>
 <SUBCOMPONENT type="5000" id="1796" >
 <father id="1846" num="0" />
-<cdparam x="695" y="224" />
-<sizeparam width="189" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="272" minY="0" maxY="256" />
-<infoparam name="Block1" value="TeaButton" />
+<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" />
@@ -3470,17 +3411,17 @@ A[]Wallet.b== true" />
 <TGConnectingPoint num="23" id="1795" />
 <extraparam>
 <CryptoBlock value="false" />
-<Attribute access="0" id="mechanicalDelay" value="10" type="8" typeOther="" />
+<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="464" y="228" />
-<sizeparam width="190" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="271" minY="0" maxY="256" />
-<infoparam name="Block1" value="CoffeeButton" />
+<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" />
@@ -3507,7 +3448,7 @@ A[]Wallet.b== true" />
 <TGConnectingPoint num="23" id="1820" />
 <extraparam>
 <CryptoBlock value="false" />
-<Attribute access="0" id="mechanicalDelay" value="80" type="8" typeOther="" />
+<Attribute access="0" id="mechanicalDelay" value="10" type="8" typeOther="" />
 <Signal value="out push()" attached="true" />
 </extraparam>
 </SUBCOMPONENT>
@@ -4683,19 +4624,19 @@ A[]Wallet.b== true" />
 
 </AVATARStateMachineDiagramPanel>
 
-<AVATARStateMachineDiagramPanel name="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" >
+<AVATARStateMachineDiagramPanel name="TeaButton" minX="10" maxX="1400" minY="10" maxY="900" >
 <CONNECTOR type="5102" id="2447" >
-<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" />
+<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="323" y="118" id="2520" />
-<P2  x="341" y="200" id="2462" />
+<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="323" y="158" />
-<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="" />
@@ -4705,7 +4646,7 @@ A[]Wallet.b== true" />
 <TGConnectingPoint num="3" id="2444" />
 <extraparam>
 <guard value="[ ]" />
-<afterMin value="" />
+<afterMin value="mechanicalDelay" />
 <afterMax value="" />
 <computeMin value="" />
 <computeMax value="" />
@@ -4713,16 +4654,16 @@ A[]Wallet.b== true" />
 </SUBCOMPONENT>
 
 <CONNECTOR type="5102" id="2454" >
-<cdparam x="322" y="69" />
+<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 start state to state0" value="null" />
+<infoparam name="connector from state0 to Send signal" value="null" />
 <TGConnectingPoint num="0" id="2453" />
-<P1  x="322" y="69" id="2555" />
-<P2  x="323" y="88" id="2515" />
+<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="322" y="109" />
+<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" />
@@ -4741,17 +4682,17 @@ A[]Wallet.b== true" />
 </SUBCOMPONENT>
 
 <CONNECTOR type="5102" id="2461" >
-<cdparam x="365" y="135" />
+<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 Send signal to state0" value="null" />
+<infoparam name="connector from start state to state0" value="null" />
 <TGConnectingPoint num="0" id="2460" />
-<P1  x="341" y="230" id="2463" />
-<P2  x="387" y="300" id="2474" />
+<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="405" y="283" />
-<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="" />
@@ -4761,7 +4702,7 @@ A[]Wallet.b== true" />
 <TGConnectingPoint num="3" id="2458" />
 <extraparam>
 <guard value="[ ]" />
-<afterMin value="mechanicalDelay" />
+<afterMin value="" />
 <afterMax value="" />
 <computeMin value="" />
 <computeMax value="" />
@@ -4769,7 +4710,7 @@ A[]Wallet.b== true" />
 </SUBCOMPONENT>
 
 <COMPONENT type="5103" id="2472" >
-<cdparam x="316" y="205" />
+<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" />
@@ -4787,7 +4728,7 @@ A[]Wallet.b== true" />
 </COMPONENT>
 
 <COMPONENT type="5106" id="2513" >
-<cdparam x="362" y="300" />
+<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" />
@@ -4837,7 +4778,7 @@ A[]Wallet.b== true" />
 </COMPONENT>
 
 <COMPONENT type="5106" id="2554" >
-<cdparam x="298" y="88" />
+<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" />
@@ -4887,7 +4828,7 @@ A[]Wallet.b== true" />
 </COMPONENT>
 
 <COMPONENT type="5100" id="2556" >
-<cdparam x="315" y="49" />
+<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" />
@@ -4898,19 +4839,19 @@ A[]Wallet.b== true" />
 
 </AVATARStateMachineDiagramPanel>
 
-<AVATARStateMachineDiagramPanel name="TeaButton" minX="10" maxX="1400" minY="10" maxY="900" >
+<AVATARStateMachineDiagramPanel name="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" >
 <CONNECTOR type="5102" id="2563" >
-<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" />
+<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="363" y="204" id="2579" />
-<P2  x="362" y="257" id="2590" />
+<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="380" y="228" />
-<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="" />
@@ -4920,7 +4861,7 @@ A[]Wallet.b== true" />
 <TGConnectingPoint num="3" id="2560" />
 <extraparam>
 <guard value="[ ]" />
-<afterMin value="mechanicalDelay" />
+<afterMin value="" />
 <afterMax value="" />
 <computeMin value="" />
 <computeMax value="" />
@@ -4928,16 +4869,16 @@ A[]Wallet.b== true" />
 </SUBCOMPONENT>
 
 <CONNECTOR type="5102" id="2570" >
-<cdparam x="363" y="150" />
+<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 state0 to Send signal" value="null" />
+<infoparam name="connector from start state to state0" value="null" />
 <TGConnectingPoint num="0" id="2569" />
-<P1  x="363" y="150" id="2636" />
-<P2  x="363" y="174" id="2578" />
+<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="363" y="190" />
+<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" />
@@ -4956,17 +4897,17 @@ A[]Wallet.b== true" />
 </SUBCOMPONENT>
 
 <CONNECTOR type="5102" id="2577" >
-<cdparam x="362" y="101" />
+<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 start state to state0" value="null" />
+<infoparam name="connector from Send signal to state0" value="null" />
 <TGConnectingPoint num="0" id="2576" />
-<P1  x="362" y="101" id="2671" />
-<P2  x="363" y="120" id="2631" />
+<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="362" y="141" />
-<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="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="" />
@@ -4976,7 +4917,7 @@ A[]Wallet.b== true" />
 <TGConnectingPoint num="3" id="2574" />
 <extraparam>
 <guard value="[ ]" />
-<afterMin value="" />
+<afterMin value="mechanicalDelay" />
 <afterMax value="" />
 <computeMin value="" />
 <computeMax value="" />
@@ -4984,7 +4925,7 @@ A[]Wallet.b== true" />
 </SUBCOMPONENT>
 
 <COMPONENT type="5103" id="2588" >
-<cdparam x="338" y="179" />
+<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" />
@@ -5002,7 +4943,7 @@ A[]Wallet.b== true" />
 </COMPONENT>
 
 <COMPONENT type="5106" id="2629" >
-<cdparam x="337" y="257" />
+<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" />
@@ -5052,7 +4993,7 @@ A[]Wallet.b== true" />
 </COMPONENT>
 
 <COMPONENT type="5106" id="2670" >
-<cdparam x="338" y="120" />
+<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" />
@@ -5102,7 +5043,7 @@ A[]Wallet.b== true" />
 </COMPONENT>
 
 <COMPONENT type="5100" id="2672" >
-<cdparam x="355" y="81" />
+<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" />
diff --git a/src/main/java/avatartranslator/modelchecker/AvatarModelChecker.java b/src/main/java/avatartranslator/modelchecker/AvatarModelChecker.java
index 2dffe6e8e7b4cfdf3d86f4cb69d23493a8657071..392cd17f595324c883428b290fabf91c3100f4df 100644
--- a/src/main/java/avatartranslator/modelchecker/AvatarModelChecker.java
+++ b/src/main/java/avatartranslator/modelchecker/AvatarModelChecker.java
@@ -1193,7 +1193,7 @@ public class AvatarModelChecker implements Runnable, myutil.Graph {
 	    //TraceManager.addDev("State:" + state.id);
 	     if (state.nexts != null) {
 		 for(SpecificationLink link: state.nexts) {
-                sb.append("(" + link.originState.id + ",\"" + link.action + "\"," + link.destinationState.id + ")\n");
+		     sb.append("(" + link.originState.id + ",\"" + link.action + "\"," + link.destinationState.id + ")\n");
 		 }
 	     }
         }
@@ -1263,6 +1263,10 @@ public class AvatarModelChecker implements Runnable, myutil.Graph {
 	return similar;
     }
 
+    private Map<Integer, SpecificationState> getRG() {
+	return states;
+    }
+
     
 
 
diff --git a/src/main/java/avatartranslator/modelchecker/SafetyProperty.java b/src/main/java/avatartranslator/modelchecker/SafetyProperty.java
new file mode 100644
index 0000000000000000000000000000000000000000..921aa4e2ed8942fd43c0c6e1394551af5a93556e
--- /dev/null
+++ b/src/main/java/avatartranslator/modelchecker/SafetyProperty.java
@@ -0,0 +1,137 @@
+/* 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 avatartranslator.modelchecker;
+
+import avatartranslator.*;
+
+
+/**
+   * Class SafetyProperty
+   * Coding of a ssafety property
+   * Creation: 22/11/2017
+   * @version 1.0 22/11/2017
+   * @author Ludovic APVRILLE
+ */
+public class SafetyProperty  {
+    // Error on property
+    public static final int NO_ERROR = 0;
+    public static final int BAD_SAFETY_TYPE = 1;
+    public static final int BAD_PROPERTY_STRUCTURE = 1;
+
+    // Type of safety
+    public static final int ALLTRACES_ALLSTATES = 0;// A[]
+    public static final int ALLTRACES_ONESTATE = 1; // A<>
+    public static final int ONETRACE_ALLSTATES = 2; // E[]
+    public static final int ONETRACE_ONESTATE = 3;  // E<>
+
+    // Type of property
+    public static final int BLOCK_STATE = 0;
+    public static final int BOOL_EXPR = 1;
+    
+    
+    private String rawProperty;
+
+    private int safetyType;
+    private int propertyType;
+    private String p;
+
+    private boolean isBlockStateProperty;
+    private int blockIndex;
+    private int stateIndex;
+
+    private int errorOnProperty;
+
+
+    public SafetyProperty(String property, AvatarSpecification _spec) {
+	rawProperty = property.trim();
+	analyzeProperty(_spec);
+    }
+
+    public boolean analyzeProperty(AvatarSpecification _spec) {
+	String tmpP = rawProperty;
+	
+	errorOnProperty = NO_ERROR;
+
+	if (tmpP.startsWith("A[]")) {
+	    safetyType = ALLTRACES_ALLSTATES;
+	} else if (tmpP.startsWith("A<>")) {
+	    safetyType = ALLTRACES_ONESTATE;
+	} else if (tmpP.startsWith("E[]")) {
+	    safetyType = ONETRACE_ALLSTATES;
+	} else if (tmpP.startsWith("E<>")) {
+	    safetyType = ONETRACE_ONESTATE;
+	} else {
+	    errorOnProperty = BAD_SAFETY_TYPE;
+	    return false;
+	}
+
+	p = tmpP.substring(3, tmpP.length()).trim();
+
+	if (p.length() == 0) {
+	    errorOnProperty = BAD_PROPERTY_STRUCTURE;
+	    return false;
+	}
+
+	return (errorOnProperty == NO_ERROR);
+    }
+
+    
+    public boolean hasError() {
+	return errorOnProperty != NO_ERROR;
+    }
+
+    public void setErrorOnP() {
+	errorOnProperty = BAD_PROPERTY_STRUCTURE;
+    }
+
+    public String getP() {
+	return p;
+    }
+    
+
+    public String toString() {
+	return "prop: " + rawProperty;
+    }
+
+    
+}
diff --git a/src/main/java/avatartranslator/modelchecker/SpecificationBlock.java b/src/main/java/avatartranslator/modelchecker/SpecificationBlock.java
index 3067c672d3bca9acbc2ec22ac202a5bc456927ce..ef6ed4cd49395b4f15f0648977e0304db7ca4be2 100644
--- a/src/main/java/avatartranslator/modelchecker/SpecificationBlock.java
+++ b/src/main/java/avatartranslator/modelchecker/SpecificationBlock.java
@@ -66,6 +66,9 @@ public class SpecificationBlock  {
     
     public int [] values; // state in block, clockmin, clockmax, variables
     public int maxClock;
+    
+    public AvatarBlock block;
+    
 
     public SpecificationBlock() {
     }
@@ -75,6 +78,7 @@ public class SpecificationBlock  {
     }
 
     public void init(AvatarBlock _block, boolean _ignoreEmptyTransitions) {
+	
 	LinkedList<AvatarAttribute> attrs = _block.getAttributes();
 	//TraceManager.addDev("Nb of attributes:" + attrs.size());
 	//TraceManager.addDev("in block=" + _block.toString());
diff --git a/src/main/java/avatartranslator/modelchecker/SpecificationState.java b/src/main/java/avatartranslator/modelchecker/SpecificationState.java
index 4cbeffd4d390183290061bce943445e53f0fa5b5..8f5ef83f6b8dcc70e0897ac24c6c8a59f55c1d1a 100644
--- a/src/main/java/avatartranslator/modelchecker/SpecificationState.java
+++ b/src/main/java/avatartranslator/modelchecker/SpecificationState.java
@@ -63,7 +63,7 @@ public class SpecificationState implements Comparable<SpecificationState>  {
     public int hashValue;
     public boolean hashComputed;
     public long id;
-    public LinkedList<SpecificationLink> nexts;
+    public LinkedList<SpecificationLink> nexts; // The RG is there
 
     public ArrayList<SpecificationTransition> transitions;
 
@@ -195,4 +195,21 @@ public class SpecificationState implements Comparable<SpecificationState>  {
 	return ((int)id) - (int)(_s.id);
     }
 
+    // Returns false in case of invalid property
+    public boolean checkProperty(SafetyProperty _sp) {
+	if (_sp.hasError()) {
+	    return false;
+	}
+
+	// Two cases
+	// 1. block.state
+	// 2. bool expr
+	
+
+
+	
+	
+	return true;
+    }
+
 }
diff --git a/src/main/java/myutil/BoolExpressionEvaluator.java b/src/main/java/myutil/BoolExpressionEvaluator.java
index c74f9ef612967110cf37766bb04ec0c71f027562..fddde761d1a06f2a4377e9ead27613fc8d462739 100755
--- a/src/main/java/myutil/BoolExpressionEvaluator.java
+++ b/src/main/java/myutil/BoolExpressionEvaluator.java
@@ -60,6 +60,7 @@ public class BoolExpressionEvaluator {
         public static final int BOOL_BINARY_OP = 4;
         public static final int BOOL_UNARY_OP = 5;
         public static final int OPEN_PARENTHESIS = 6;
+	public static final int UNKNOWN_TERM = 7;
 
         public int id = (int)(Math.ceil(Math.random() * 10000000));
         public int i = -18;
@@ -97,6 +98,12 @@ public class BoolExpressionEvaluator {
             father = _father;
         }
 
+	public IntBoolRes(String val, IntBoolRes _father) {
+	    symb = val;
+            res = UNKNOWN_TERM;
+            father = _father;
+        }
+
 	public  IntBoolRes getTop() {
 	    if (father == null) {
 		return this;
@@ -134,6 +141,21 @@ public class BoolExpressionEvaluator {
             }
             return news;
         }
+	
+	public IntBoolRes addTerminalUnknown(String val) {
+            if (isFull()) {
+                return null;
+            }
+
+            IntBoolRes news = new IntBoolRes(val, this);
+            if (left == null) {
+                left = news;
+            } else {
+                right = news;
+            }
+            return news;
+        }
+	
 
         public IntBoolRes addOpenParenthesis() {
             if ((left != null) && (right != null)) {
@@ -658,12 +680,17 @@ public class BoolExpressionEvaluator {
 
     private int nbOpen;
 
-    private IntBoolRes top;
+    private IntBoolRes top; // top of tree
+    private boolean supportUnknownTerminal = false;
 
 
     public BoolExpressionEvaluator() {
     }
 
+    public void setSupportUnknownTerminal(boolean support) {
+	supportUnknownTerminal = support;
+    }
+
 
     public String getError() {
         if (errorMessage == null) {
@@ -1893,6 +1920,16 @@ public class BoolExpressionEvaluator {
             return father.father;
         }
 
+	if (supportUnknownTerminal) {
+	    TraceManager.addDev("Adding unknown term:" + token);
+	    newElt = current.addTerminalUnknown(token);
+	    
+	    if (newElt == null) {
+		errorMessage = "Badly placed unknown term:" + token;
+		return null;
+	    }
+	    return current;
+	}
 
         return null;