<?xml version="1.0"?>
<!DOCTYPE nta PUBLIC "-//Uppaal Team//DTD Flat System 1.0//EN" "http://www.docs.uu.se/docs/rtmv/uppaal/xml/flat-1_0.dtd">
<nta>
<declaration>
int igetup;
clock ddd2;
const delta2 1 ;
clock zup;
clock uuu1;
clock ddd1;
const delta1 1 ;
clock z;
clock y;
clock x;
int doublezero;
int r;
int p;
int m;
int leng;
int c;
int i;
broadcast chan down;
chan finalZero;
chan up;
chan outlast_is_1;
chan inlast_is_1;
chan outlast_is_0;
chan inlast_is_0;
chan getup;
chan notReady_getup;
chan ready_getup;
</declaration>
<template>
	<name>multAsapWatchergetup</name>
		<location id="multAsapWatchergetup1">
		<name>multAsapWatchergetup1</name>
		</location>
		<location id="multAsapWatchergetup2">
		<name>multAsapWatchergetup2</name><urgent/>
		</location>
		<location id="multAsapWatchergetup3">
		<name>multAsapWatchergetup3</name><committed/>
		</location>
	<init ref="multAsapWatchergetup1"/>
		<transition>
			<source ref="multAsapWatchergetup1"/>
			<target ref="multAsapWatchergetup2"/>
			<label kind="synchronisation">ready_getup?</label>
			<label kind="guard">igetup == 4 </label>
			<label kind="assignment">igetup := igetup + 1 </label>
		</transition>
		<transition>
			<source ref="multAsapWatchergetup1"/>
			<target ref="multAsapWatchergetup1"/>
			<label kind="synchronisation">notReady_getup?</label>
			<label kind="assignment">igetup := igetup - 1 </label>
		</transition>
		<transition>
			<source ref="multAsapWatchergetup1"/>
			<target ref="multAsapWatchergetup1"/>
			<label kind="synchronisation">ready_getup?</label>
			<label kind="guard">igetup &lt;= 3 </label>
			<label kind="assignment">igetup := igetup + 1 </label>
		</transition>
		<transition>
			<source ref="multAsapWatchergetup2"/>
			<target ref="multAsapWatchergetup3"/>
			<label kind="synchronisation">getup!</label>
			<label kind="assignment">igetup := 1 </label>
		</transition>
		<transition>
			<source ref="multAsapWatchergetup2"/>
			<target ref="multAsapWatchergetup1"/>
			<label kind="synchronisation">notReady_getup?</label>
			<label kind="assignment">igetup := 4 </label>
		</transition>
		<transition>
			<source ref="multAsapWatchergetup3"/>
			<target ref="multAsapWatchergetup1"/>
			<label kind="synchronisation">getup!</label>
			<label kind="guard">igetup == 4 </label>
			<label kind="assignment">igetup := 0 </label>
		</transition>
		<transition>
			<source ref="multAsapWatchergetup3"/>
			<target ref="multAsapWatchergetup3"/>
			<label kind="synchronisation">getup!</label>
			<label kind="guard">igetup &lt;= 3 </label>
			<label kind="assignment">igetup := igetup + 1 </label>
		</transition>
</template>
<template>
	<name>GWlast_is_0getup</name>
		<location id="Exit_GWlast_is_0getup1108">
		<name>Exit_GWlast_is_0getup1108</name><committed/>
		</location>
		<location id="Exit_GWlast_is_0getup1107">
		<name>Exit_GWlast_is_0getup1107</name><committed/>
		</location>
		<location id="Exit_GWlast_is_0getup1106">
		<name>Exit_GWlast_is_0getup1106</name><committed/>
		</location>
		<location id="Enter_GWlast_is_0getup1_on_getup">
		<name>Enter_GWlast_is_0getup1_on_getup</name><committed/>
		</location>
		<location id="Exit_GWlast_is_0getup0103">
		<name>Exit_GWlast_is_0getup0103</name><committed/>
		</location>
		<location id="Enter_GWlast_is_0getup0_on_getup">
		<name>Enter_GWlast_is_0getup0_on_getup</name><committed/>
		</location>
		<location id="GWlast_is_0getup0">
		<name>GWlast_is_0getup0</name>
		</location>
		<location id="GWlast_is_0getup1">
		<name>GWlast_is_0getup1</name>
		</location>
		<location id="GWlast_is_0getup2S72">
		<name>GWlast_is_0getup2S72</name>
		<label kind="invariant">y &lt;= 12 + delta1 </label>
		</location>
		<location id="GWlast_is_0getup2S73">
		<name>GWlast_is_0getup2S73</name>
		<label kind="invariant">y &lt;= 20 + delta1 </label>
		</location>
		<location id="GWlast_is_0getup3">
		<name>GWlast_is_0getup3</name>
		<label kind="invariant">uuu1 &lt;= 0 </label>
		</location>
	<init ref="Enter_GWlast_is_0getup0_on_getup"/>
		<transition>
			<source ref="Exit_GWlast_is_0getup1108"/>
			<target ref="GWlast_is_0getup2S73"/>
			<label kind="synchronisation">notReady_getup!</label>
			<label kind="guard">y &gt;= 20 </label>
		</transition>
		<transition>
			<source ref="Exit_GWlast_is_0getup1107"/>
			<target ref="GWlast_is_0getup2S72"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_GWlast_is_0getup1106"/>
			<target ref="Enter_GWlast_is_0getup0_on_getup"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_GWlast_is_0getup1_on_getup"/>
			<target ref="GWlast_is_0getup1"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_GWlast_is_0getup0103"/>
			<target ref="Enter_GWlast_is_0getup1_on_getup"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_GWlast_is_0getup0_on_getup"/>
			<target ref="GWlast_is_0getup0"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup0"/>
			<target ref="Exit_GWlast_is_0getup0103"/>
			<label kind="synchronisation">inlast_is_0!</label>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup0"/>
			<target ref="Enter_GWlast_is_0getup0_on_getup"/>
			<label kind="synchronisation">getup?</label>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup1"/>
			<target ref="Exit_GWlast_is_0getup1106"/>
			<label kind="synchronisation">outlast_is_0!</label>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup1"/>
			<target ref="GWlast_is_0getup3"/>
			<label kind="synchronisation">getup?</label>
			<label kind="assignment">uuu1 := 0 </label>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup1"/>
			<target ref="Exit_GWlast_is_0getup1107"/>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup1"/>
			<target ref="Exit_GWlast_is_0getup1108"/>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup2S72"/>
			<target ref="GWlast_is_0getup2S73"/>
			<label kind="guard">y &gt;= 20 </label>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup2S72"/>
			<target ref="Enter_GWlast_is_0getup1_on_getup"/>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup2S73"/>
			<target ref="GWlast_is_0getup2S72"/>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup2S73"/>
			<target ref="Enter_GWlast_is_0getup1_on_getup"/>
		</transition>
		<transition>
			<source ref="GWlast_is_0getup3"/>
			<target ref="Enter_GWlast_is_0getup0_on_getup"/>
			<label kind="synchronisation">outlast_is_0!</label>
		</transition>
</template>
<template>
	<name>GWlast_is_1getup</name>
		<location id="Exit_GWlast_is_1getup1117">
		<name>Exit_GWlast_is_1getup1117</name><committed/>
		</location>
		<location id="Exit_GWlast_is_1getup1116">
		<name>Exit_GWlast_is_1getup1116</name><committed/>
		</location>
		<location id="Exit_GWlast_is_1getup1115">
		<name>Exit_GWlast_is_1getup1115</name><committed/>
		</location>
		<location id="Exit_GWlast_is_1getup1114">
		<name>Exit_GWlast_is_1getup1114</name><committed/>
		</location>
		<location id="Enter_GWlast_is_1getup1_on_getup">
		<name>Enter_GWlast_is_1getup1_on_getup</name><committed/>
		</location>
		<location id="Exit_GWlast_is_1getup0111">
		<name>Exit_GWlast_is_1getup0111</name><committed/>
		</location>
		<location id="Enter_GWlast_is_1getup0_on_getup">
		<name>Enter_GWlast_is_1getup0_on_getup</name><committed/>
		</location>
		<location id="GWlast_is_1getup0">
		<name>GWlast_is_1getup0</name>
		</location>
		<location id="GWlast_is_1getup1">
		<name>GWlast_is_1getup1</name>
		</location>
		<location id="GWlast_is_1getup2S57">
		<name>GWlast_is_1getup2S57</name>
		<label kind="invariant">y &lt;= 12 + delta1 </label>
		</location>
		<location id="GWlast_is_1getup2S58">
		<name>GWlast_is_1getup2S58</name>
		<label kind="invariant">y &lt;= 20 + delta1 </label>
		</location>
		<location id="GWlast_is_1getup2S59">
		<name>GWlast_is_1getup2S59</name>
		<label kind="invariant">y &lt;= 28 + delta1 </label>
		</location>
		<location id="GWlast_is_1getup3">
		<name>GWlast_is_1getup3</name>
		<label kind="invariant">uuu1 &lt;= 0 </label>
		</location>
	<init ref="Enter_GWlast_is_1getup0_on_getup"/>
		<transition>
			<source ref="Exit_GWlast_is_1getup1117"/>
			<target ref="GWlast_is_1getup2S58"/>
			<label kind="synchronisation">notReady_getup!</label>
			<label kind="guard">y &gt;= 20 </label>
		</transition>
		<transition>
			<source ref="Exit_GWlast_is_1getup1116"/>
			<target ref="GWlast_is_1getup2S59"/>
			<label kind="synchronisation">notReady_getup!</label>
			<label kind="guard">y &gt;= 28 </label>
		</transition>
		<transition>
			<source ref="Exit_GWlast_is_1getup1115"/>
			<target ref="GWlast_is_1getup2S57"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_GWlast_is_1getup1114"/>
			<target ref="Enter_GWlast_is_1getup0_on_getup"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_GWlast_is_1getup1_on_getup"/>
			<target ref="GWlast_is_1getup1"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_GWlast_is_1getup0111"/>
			<target ref="Enter_GWlast_is_1getup1_on_getup"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_GWlast_is_1getup0_on_getup"/>
			<target ref="GWlast_is_1getup0"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup0"/>
			<target ref="Exit_GWlast_is_1getup0111"/>
			<label kind="synchronisation">inlast_is_1!</label>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup0"/>
			<target ref="Enter_GWlast_is_1getup0_on_getup"/>
			<label kind="synchronisation">getup?</label>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup1"/>
			<target ref="Exit_GWlast_is_1getup1114"/>
			<label kind="synchronisation">outlast_is_1!</label>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup1"/>
			<target ref="GWlast_is_1getup3"/>
			<label kind="synchronisation">getup?</label>
			<label kind="assignment">uuu1 := 0 </label>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup1"/>
			<target ref="Exit_GWlast_is_1getup1115"/>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup1"/>
			<target ref="Exit_GWlast_is_1getup1116"/>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup1"/>
			<target ref="Exit_GWlast_is_1getup1117"/>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup2S57"/>
			<target ref="GWlast_is_1getup2S59"/>
			<label kind="guard">y &gt;= 28 </label>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup2S57"/>
			<target ref="GWlast_is_1getup2S58"/>
			<label kind="guard">y &gt;= 20 </label>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup2S57"/>
			<target ref="Enter_GWlast_is_1getup1_on_getup"/>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup2S58"/>
			<target ref="GWlast_is_1getup2S59"/>
			<label kind="guard">y &gt;= 28 </label>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup2S58"/>
			<target ref="GWlast_is_1getup2S57"/>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup2S58"/>
			<target ref="Enter_GWlast_is_1getup1_on_getup"/>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup2S59"/>
			<target ref="GWlast_is_1getup2S58"/>
			<label kind="guard">y &gt;= 20 </label>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup2S59"/>
			<target ref="GWlast_is_1getup2S57"/>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup2S59"/>
			<target ref="Enter_GWlast_is_1getup1_on_getup"/>
		</transition>
		<transition>
			<source ref="GWlast_is_1getup3"/>
			<target ref="Enter_GWlast_is_1getup0_on_getup"/>
			<label kind="synchronisation">outlast_is_1!</label>
		</transition>
</template>
<template>
	<name>EWup</name>
		<location id="Exit_EWup2120">
		<name>Exit_EWup2120</name><committed/>
		</location>
		<location id="Enter_EWup2_on_getup">
		<name>Enter_EWup2_on_getup</name><committed/>
		</location>
		<location id="EWup0">
		<name>EWup0</name>
		</location>
		<location id="EWup1">
		<name>EWup1</name>
		<label kind="invariant">zup &lt;= delta1 </label>
		</location>
		<location id="EWup2">
		<name>EWup2</name>
		</location>
	<init ref="EWup0"/>
		<transition>
			<source ref="Exit_EWup2120"/>
			<target ref="Enter_EWup2_on_getup"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_EWup2_on_getup"/>
			<target ref="EWup2"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="EWup0"/>
			<target ref="EWup1"/>
			<label kind="synchronisation">up!</label>
			<label kind="assignment">zup := 0 </label>
		</transition>
		<transition>
			<source ref="EWup1"/>
			<target ref="Enter_EWup2_on_getup"/>
		</transition>
		<transition>
			<source ref="EWup1"/>
			<target ref="EWup1"/>
			<label kind="synchronisation">up!</label>
		</transition>
		<transition>
			<source ref="EWup2"/>
			<target ref="EWup0"/>
			<label kind="synchronisation">getup?</label>
		</transition>
		<transition>
			<source ref="EWup2"/>
			<target ref="Exit_EWup2120"/>
			<label kind="synchronisation">up!</label>
		</transition>
</template>
<template>
	<name>checkOutput</name>
		<location id="Exit_check125">
		<name>Exit_check125</name><committed/>
		</location>
		<location id="Exit_check124">
		<name>Exit_check124</name><committed/>
		</location>
		<location id="Exit_check123">
		<name>Exit_check123</name><committed/>
		</location>
		<location id="Enter_check_on_getup">
		<name>Enter_check_on_getup</name><committed/>
		</location>
		<location id="check">
		<name>check</name>
		<label kind="invariant">true </label>
		</location>
		<location id="treating">
		<name>treating</name>
		<label kind="invariant">z &lt;= 0 </label>
		</location>
		<location id="cerror">
		<name>cerror</name>
		<label kind="invariant">true </label>
		</location>
	<init ref="Enter_check_on_getup"/>
		<transition>
			<source ref="Exit_check125"/>
			<target ref="cerror"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_check124"/>
			<target ref="cerror"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_check123"/>
			<target ref="treating"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_check_on_getup"/>
			<target ref="check"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="check"/>
			<target ref="treating"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">true </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="check"/>
			<target ref="Exit_check123"/>
			<label kind="synchronisation">finalZero!</label>
			<label kind="guard">true </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="check"/>
			<target ref="Exit_check124"/>
			<label kind="guard">leng &gt; 12 </label>
		</transition>
		<transition>
			<source ref="check"/>
			<target ref="Exit_check125"/>
			<label kind="guard">leng &lt; 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 0 , leng == 4 , c == 4 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="Enter_check_on_getup"/>
			<label kind="guard">r == 0 , leng == 4 , c == 0 </label>
			<label kind="assignment">leng := leng - 4 , z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 0 , leng == 8 , c &gt; 4 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="Enter_check_on_getup"/>
			<label kind="guard">r == 0 , leng == 8 , c &lt;= 4 </label>
			<label kind="assignment">leng := leng - 4 , z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 0 , leng == 12 , c &gt; 12 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="Enter_check_on_getup"/>
			<label kind="guard">r == 0 , leng == 12 , c &lt;= 12 </label>
			<label kind="assignment">leng := leng - 4 , z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 4 , leng == 4 , c == 0 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="Enter_check_on_getup"/>
			<label kind="guard">r == 4 , leng == 4 , c == 4 </label>
			<label kind="assignment">leng := leng - 4 , c := c - 4 , z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 4 , leng == 8 , c &lt;= 4 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="Enter_check_on_getup"/>
			<label kind="guard">r == 4 , leng == 8 , c &gt; 4 </label>
			<label kind="assignment">leng := leng - 4 , c := c - 8 , z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 4 , leng == 12 , c &lt;= 12 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="Enter_check_on_getup"/>
			<label kind="guard">r == 4 , leng == 12 , c &gt; 12 </label>
			<label kind="assignment">leng := leng - 4 , c := c - 16 , z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 8 , leng == 4 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="Enter_check_on_getup"/>
			<label kind="guard">r == 8 , leng == 8 , c == 4 </label>
			<label kind="assignment">leng := 0 , c := 0 , z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 8 , leng == 8 , c == 0 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 8 , leng == 8 , c &gt; 8 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="Enter_check_on_getup"/>
			<label kind="guard">r == 8 , leng == 12 , c == 12 </label>
			<label kind="assignment">leng := 4 , c := 4 , z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="Enter_check_on_getup"/>
			<label kind="guard">r == 8 , leng == 12 , c == 8 </label>
			<label kind="assignment">leng := 4 , c := 0 , z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 8 , leng == 12 , c &gt; 12 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
		<transition>
			<source ref="treating"/>
			<target ref="cerror"/>
			<label kind="guard">r == 8 , leng == 12 , c &lt; 8 </label>
			<label kind="assignment">z := 0 </label>
		</transition>
</template>
<template>
	<name>receiver</name>
		<location id="Exit_last_is_0S75145">
		<name>Exit_last_is_0S75145</name><committed/>
		</location>
		<location id="Exit_last_is_0S75144">
		<name>Exit_last_is_0S75144</name><committed/>
		</location>
		<location id="Enter_last_is_0S75_on_getup">
		<name>Enter_last_is_0S75_on_getup</name><committed/>
		</location>
		<location id="Exit_last_is_0S74141">
		<name>Exit_last_is_0S74141</name><committed/>
		</location>
		<location id="Exit_last_is_0S74140">
		<name>Exit_last_is_0S74140</name><committed/>
		</location>
		<location id="Enter_last_is_0S74_on_getup">
		<name>Enter_last_is_0S74_on_getup</name><committed/>
		</location>
		<location id="Exit_last_is_1S61137">
		<name>Exit_last_is_1S61137</name><committed/>
		</location>
		<location id="Exit_last_is_1S61136">
		<name>Exit_last_is_1S61136</name><committed/>
		</location>
		<location id="Exit_last_is_1S61135">
		<name>Exit_last_is_1S61135</name><committed/>
		</location>
		<location id="Enter_last_is_1S61_on_getup">
		<name>Enter_last_is_1S61_on_getup</name><committed/>
		</location>
		<location id="Exit_last_is_1S60132">
		<name>Exit_last_is_1S60132</name><committed/>
		</location>
		<location id="Exit_last_is_1S60131">
		<name>Exit_last_is_1S60131</name><committed/>
		</location>
		<location id="Exit_last_is_1S60130">
		<name>Exit_last_is_1S60130</name><committed/>
		</location>
		<location id="Enter_last_is_1S60_on_getup">
		<name>Enter_last_is_1S60_on_getup</name><committed/>
		</location>
		<location id="Enter_idle2_on_getup">
		<name>Enter_idle2_on_getup</name><committed/>
		</location>
		<location id="Postlast_is_0Nr3">
		<name>Postlast_is_0Nr3</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Postlast_is_0Nr2">
		<name>Postlast_is_0Nr2</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Postlast_is_0Nr1">
		<name>Postlast_is_0Nr1</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Inlast_is_0">
		<name>Inlast_is_0</name>
		<label kind="invariant">ddd1 &lt;= delta1 </label>
		</location>
		<location id="PreInlast_is_0">
		<name>PreInlast_is_0</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Postlast_is_1Nr5">
		<name>Postlast_is_1Nr5</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Postlast_is_1Nr4">
		<name>Postlast_is_1Nr4</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Postlast_is_1Nr3">
		<name>Postlast_is_1Nr3</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Postlast_is_1Nr2">
		<name>Postlast_is_1Nr2</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Postlast_is_1Nr1">
		<name>Postlast_is_1Nr1</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Inlast_is_1">
		<name>Inlast_is_1</name>
		<label kind="invariant">ddd1 &lt;= delta1 </label>
		</location>
		<location id="PreInlast_is_1">
		<name>PreInlast_is_1</name>
		<label kind="invariant">ddd1 &lt;= 0 </label>
		</location>
		<location id="Inidle2">
		<name>Inidle2</name>
		<label kind="invariant">ddd1 &lt;= delta1 </label>
		</location>
		<location id="idle2">
		<name>idle2</name>
		</location>
		<location id="last_is_1S60">
		<name>last_is_1S60</name>
		<label kind="invariant">ddd1 &lt;= delta1 </label>
		</location>
		<location id="last_is_1S61">
		<name>last_is_1S61</name>
		<label kind="invariant">y &lt;= 36 + delta1 </label>
		</location>
		<location id="last_is_0S74">
		<name>last_is_0S74</name>
		<label kind="invariant">ddd1 &lt;= delta1 </label>
		</location>
		<location id="last_is_0S75">
		<name>last_is_0S75</name>
		<label kind="invariant">y &lt;= 28 + delta1 </label>
		</location>
	<init ref="Inidle2"/>
		<transition>
			<source ref="Exit_last_is_0S75145"/>
			<target ref="Postlast_is_0Nr1"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_last_is_0S75144"/>
			<target ref="Enter_last_is_0S74_on_getup"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_last_is_0S75_on_getup"/>
			<target ref="last_is_0S75"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_last_is_0S74141"/>
			<target ref="Postlast_is_0Nr1"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_last_is_0S74140"/>
			<target ref="Enter_last_is_0S75_on_getup"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_last_is_0S74_on_getup"/>
			<target ref="last_is_0S74"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_last_is_1S61137"/>
			<target ref="Postlast_is_1Nr1"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_last_is_1S61136"/>
			<target ref="Postlast_is_1Nr2"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_last_is_1S61135"/>
			<target ref="Enter_last_is_1S60_on_getup"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_last_is_1S61_on_getup"/>
			<target ref="last_is_1S61"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_last_is_1S60132"/>
			<target ref="Postlast_is_1Nr1"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_last_is_1S60131"/>
			<target ref="Postlast_is_1Nr2"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Exit_last_is_1S60130"/>
			<target ref="Enter_last_is_1S61_on_getup"/>
			<label kind="synchronisation">notReady_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_last_is_1S60_on_getup"/>
			<target ref="last_is_1S60"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="Enter_idle2_on_getup"/>
			<target ref="idle2"/>
			<label kind="synchronisation">ready_getup!</label>
		</transition>
		<transition>
			<source ref="Postlast_is_0Nr3"/>
			<target ref="PreInlast_is_1"/>
			<label kind="synchronisation">outlast_is_0?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Postlast_is_0Nr2"/>
			<target ref="PreInlast_is_0"/>
			<label kind="synchronisation">outlast_is_0?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Postlast_is_0Nr1"/>
			<target ref="Inidle2"/>
			<label kind="synchronisation">outlast_is_0?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Inlast_is_0"/>
			<target ref="Enter_last_is_0S74_on_getup"/>
		</transition>
		<transition>
			<source ref="Inlast_is_0"/>
			<target ref="Enter_last_is_0S75_on_getup"/>
		</transition>
		<transition>
			<source ref="PreInlast_is_0"/>
			<target ref="Inlast_is_0"/>
			<label kind="synchronisation">inlast_is_0?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Postlast_is_1Nr5"/>
			<target ref="PreInlast_is_1"/>
			<label kind="synchronisation">outlast_is_1?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Postlast_is_1Nr4"/>
			<target ref="PreInlast_is_0"/>
			<label kind="synchronisation">outlast_is_1?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Postlast_is_1Nr3"/>
			<target ref="PreInlast_is_1"/>
			<label kind="synchronisation">outlast_is_1?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Postlast_is_1Nr2"/>
			<target ref="Inidle2"/>
			<label kind="synchronisation">outlast_is_1?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Postlast_is_1Nr1"/>
			<target ref="Inidle2"/>
			<label kind="synchronisation">outlast_is_1?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Inlast_is_1"/>
			<target ref="Enter_last_is_1S60_on_getup"/>
		</transition>
		<transition>
			<source ref="Inlast_is_1"/>
			<target ref="Enter_last_is_1S61_on_getup"/>
		</transition>
		<transition>
			<source ref="PreInlast_is_1"/>
			<target ref="Inlast_is_1"/>
			<label kind="synchronisation">inlast_is_1?</label>
			<label kind="assignment">ddd1 := 0 </label>
		</transition>
		<transition>
			<source ref="Inidle2"/>
			<target ref="Enter_idle2_on_getup"/>
		</transition>
		<transition>
			<source ref="idle2"/>
			<target ref="PreInlast_is_1"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">true </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , m := 4 , r := 4 </label>
		</transition>
		<transition>
			<source ref="last_is_1S60"/>
			<target ref="Exit_last_is_1S60130"/>
		</transition>
		<transition>
			<source ref="last_is_1S60"/>
			<target ref="Exit_last_is_1S60131"/>
			<label kind="synchronisation">finalZero?</label>
			<label kind="guard">y &gt;= 36 - delta1 , m == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , r := 0 , m := 4 - m </label>
		</transition>
		<transition>
			<source ref="last_is_1S60"/>
			<target ref="Exit_last_is_1S60132"/>
			<label kind="guard">y &gt;= 36 - delta1 , m == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 </label>
		</transition>
		<transition>
			<source ref="last_is_1S60"/>
			<target ref="Postlast_is_1Nr5"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 28 - delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , r := 8 </label>
		</transition>
		<transition>
			<source ref="last_is_1S60"/>
			<target ref="Postlast_is_1Nr4"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 20 - delta1 , y &lt;= 28 + delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , m := 4 - m , r := 0 </label>
		</transition>
		<transition>
			<source ref="last_is_1S60"/>
			<target ref="Postlast_is_1Nr3"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 12 - delta1 , y &lt;= 20 + delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , m := 4 - m , r := 4 </label>
		</transition>
		<transition>
			<source ref="last_is_1S61"/>
			<target ref="Exit_last_is_1S61135"/>
		</transition>
		<transition>
			<source ref="last_is_1S61"/>
			<target ref="Exit_last_is_1S61136"/>
			<label kind="synchronisation">finalZero?</label>
			<label kind="guard">y &gt;= 36 - delta1 , m == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , r := 0 , m := 4 - m </label>
		</transition>
		<transition>
			<source ref="last_is_1S61"/>
			<target ref="Exit_last_is_1S61137"/>
			<label kind="guard">y &gt;= 36 - delta1 , m == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 </label>
		</transition>
		<transition>
			<source ref="last_is_1S61"/>
			<target ref="Postlast_is_1Nr5"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 28 - delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , r := 8 </label>
		</transition>
		<transition>
			<source ref="last_is_1S61"/>
			<target ref="Postlast_is_1Nr4"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 20 - delta1 , y &lt;= 28 + delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , m := 4 - m , r := 0 </label>
		</transition>
		<transition>
			<source ref="last_is_1S61"/>
			<target ref="Postlast_is_1Nr3"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 12 - delta1 , y &lt;= 20 + delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , m := 4 - m , r := 4 </label>
		</transition>
		<transition>
			<source ref="last_is_0S74"/>
			<target ref="Exit_last_is_0S74140"/>
		</transition>
		<transition>
			<source ref="last_is_0S74"/>
			<target ref="Exit_last_is_0S74141"/>
			<label kind="synchronisation">finalZero?</label>
			<label kind="guard">y &gt;= 28 - delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , r := 0 </label>
		</transition>
		<transition>
			<source ref="last_is_0S74"/>
			<target ref="Postlast_is_0Nr3"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 20 - delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , r := 8 </label>
		</transition>
		<transition>
			<source ref="last_is_0S74"/>
			<target ref="Postlast_is_0Nr2"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 12 - delta1 , y &lt;= 20 + delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , m := 4 - m , r := 0 </label>
		</transition>
		<transition>
			<source ref="last_is_0S75"/>
			<target ref="Exit_last_is_0S75144"/>
		</transition>
		<transition>
			<source ref="last_is_0S75"/>
			<target ref="Exit_last_is_0S75145"/>
			<label kind="synchronisation">finalZero?</label>
			<label kind="guard">y &gt;= 28 - delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , r := 0 </label>
		</transition>
		<transition>
			<source ref="last_is_0S75"/>
			<target ref="Postlast_is_0Nr3"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 20 - delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , r := 8 </label>
		</transition>
		<transition>
			<source ref="last_is_0S75"/>
			<target ref="Postlast_is_0Nr2"/>
			<label kind="synchronisation">getup?</label>
			<label kind="guard">y &gt;= 12 - delta1 , y &lt;= 20 + delta1 </label>
			<label kind="assignment">uuu1 := 0 , ddd1 := 0 , y := 0 , m := 4 - m , r := 0 </label>
		</transition>
</template>
<template>
	<name>sender</name>
		<location id="InwaitingZero">
		<name>InwaitingZero</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="InzeroSent">
		<name>InzeroSent</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="InwaitingOne">
		<name>InwaitingOne</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="InoneSent">
		<name>InoneSent</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="Inidle">
		<name>Inidle</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="idleS79">
		<name>idleS79</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="idleS80">
		<name>idleS80</name>
		<label kind="invariant">x &lt;= 48 + delta2 </label>
		</location>
		<location id="oneSentS82">
		<name>oneSentS82</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="oneSentS83">
		<name>oneSentS83</name>
		<label kind="invariant">x &lt;= 8 + delta2 </label>
		</location>
		<location id="oneSentS84">
		<name>oneSentS84</name>
		<label kind="invariant">x &lt;= 16 + delta2 </label>
		</location>
		<location id="oneSentS85">
		<name>oneSentS85</name>
		</location>
		<location id="waitingOneS87">
		<name>waitingOneS87</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="waitingOneS88">
		<name>waitingOneS88</name>
		<label kind="invariant">x &lt;= 8 + delta2 </label>
		</location>
		<location id="waitingOneS89">
		<name>waitingOneS89</name>
		</location>
		<location id="zeroSentS91">
		<name>zeroSentS91</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="zeroSentS92">
		<name>zeroSentS92</name>
		<label kind="invariant">x &lt;= 8 + delta2 </label>
		</location>
		<location id="zeroSentS93">
		<name>zeroSentS93</name>
		<label kind="invariant">x &lt;= 16 + delta2 </label>
		</location>
		<location id="zeroSentS94">
		<name>zeroSentS94</name>
		</location>
		<location id="waitingZeroS96">
		<name>waitingZeroS96</name>
		<label kind="invariant">ddd2 &lt;= delta2 </label>
		</location>
		<location id="waitingZeroS97">
		<name>waitingZeroS97</name>
		<label kind="invariant">x &lt;= 8 + delta2 </label>
		</location>
		<location id="waitingZeroS98">
		<name>waitingZeroS98</name>
		</location>
	<init ref="Inidle"/>
		<transition>
			<source ref="InwaitingZero"/>
			<target ref="waitingZeroS96"/>
		</transition>
		<transition>
			<source ref="InwaitingZero"/>
			<target ref="waitingZeroS98"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="InwaitingZero"/>
			<target ref="waitingZeroS97"/>
		</transition>
		<transition>
			<source ref="InzeroSent"/>
			<target ref="zeroSentS91"/>
		</transition>
		<transition>
			<source ref="InzeroSent"/>
			<target ref="zeroSentS94"/>
			<label kind="guard">x &gt;= 16 </label>
		</transition>
		<transition>
			<source ref="InzeroSent"/>
			<target ref="zeroSentS93"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="InzeroSent"/>
			<target ref="zeroSentS92"/>
		</transition>
		<transition>
			<source ref="InwaitingOne"/>
			<target ref="waitingOneS87"/>
		</transition>
		<transition>
			<source ref="InwaitingOne"/>
			<target ref="waitingOneS89"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="InwaitingOne"/>
			<target ref="waitingOneS88"/>
		</transition>
		<transition>
			<source ref="InoneSent"/>
			<target ref="oneSentS82"/>
		</transition>
		<transition>
			<source ref="InoneSent"/>
			<target ref="oneSentS85"/>
			<label kind="guard">x &gt;= 16 </label>
		</transition>
		<transition>
			<source ref="InoneSent"/>
			<target ref="oneSentS84"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="InoneSent"/>
			<target ref="oneSentS83"/>
		</transition>
		<transition>
			<source ref="Inidle"/>
			<target ref="idleS79"/>
		</transition>
		<transition>
			<source ref="Inidle"/>
			<target ref="idleS80"/>
		</transition>
		<transition>
			<source ref="idleS79"/>
			<target ref="idleS80"/>
		</transition>
		<transition>
			<source ref="idleS79"/>
			<target ref="InoneSent"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 48 - delta2 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 , c := 4 , leng := 4 </label>
		</transition>
		<transition>
			<source ref="idleS80"/>
			<target ref="idleS79"/>
		</transition>
		<transition>
			<source ref="idleS80"/>
			<target ref="InoneSent"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 48 - delta2 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 , c := 4 , leng := 4 </label>
		</transition>
		<transition>
			<source ref="oneSentS82"/>
			<target ref="oneSentS85"/>
			<label kind="guard">x &gt;= 16 </label>
		</transition>
		<transition>
			<source ref="oneSentS82"/>
			<target ref="oneSentS84"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="oneSentS82"/>
			<target ref="oneSentS83"/>
		</transition>
		<transition>
			<source ref="oneSentS82"/>
			<target ref="Inidle"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , p == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS82"/>
			<target ref="InzeroSent"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 16 - delta2 , x &lt;= 16 + delta2 , i == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c , i &gt;= 0 , i &lt;= 4 , doublezero := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS82"/>
			<target ref="InwaitingOne"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , i == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS83"/>
			<target ref="oneSentS85"/>
			<label kind="guard">x &gt;= 16 </label>
		</transition>
		<transition>
			<source ref="oneSentS83"/>
			<target ref="oneSentS84"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="oneSentS83"/>
			<target ref="oneSentS82"/>
		</transition>
		<transition>
			<source ref="oneSentS83"/>
			<target ref="Inidle"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , p == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS83"/>
			<target ref="InzeroSent"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 16 - delta2 , x &lt;= 16 + delta2 , i == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c , i &gt;= 0 , i &lt;= 4 , doublezero := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS83"/>
			<target ref="InwaitingOne"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , i == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS84"/>
			<target ref="oneSentS85"/>
			<label kind="guard">x &gt;= 16 </label>
		</transition>
		<transition>
			<source ref="oneSentS84"/>
			<target ref="oneSentS83"/>
		</transition>
		<transition>
			<source ref="oneSentS84"/>
			<target ref="oneSentS82"/>
		</transition>
		<transition>
			<source ref="oneSentS84"/>
			<target ref="Inidle"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , p == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS84"/>
			<target ref="InzeroSent"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 16 - delta2 , x &lt;= 16 + delta2 , i == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c , i &gt;= 0 , i &lt;= 4 , doublezero := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS84"/>
			<target ref="InwaitingOne"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , i == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS85"/>
			<target ref="oneSentS84"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="oneSentS85"/>
			<target ref="oneSentS83"/>
		</transition>
		<transition>
			<source ref="oneSentS85"/>
			<target ref="oneSentS82"/>
		</transition>
		<transition>
			<source ref="oneSentS85"/>
			<target ref="Inidle"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , p == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS85"/>
			<target ref="InzeroSent"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 16 - delta2 , x &lt;= 16 + delta2 , i == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c , i &gt;= 0 , i &lt;= 4 , doublezero := 0 </label>
		</transition>
		<transition>
			<source ref="oneSentS85"/>
			<target ref="InwaitingOne"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , i == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 </label>
		</transition>
		<transition>
			<source ref="waitingOneS87"/>
			<target ref="waitingOneS89"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="waitingOneS87"/>
			<target ref="waitingOneS88"/>
		</transition>
		<transition>
			<source ref="waitingOneS87"/>
			<target ref="InoneSent"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c + 4 , i &gt;= 0 , i &lt;= 4 </label>
		</transition>
		<transition>
			<source ref="waitingOneS88"/>
			<target ref="waitingOneS89"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="waitingOneS88"/>
			<target ref="waitingOneS87"/>
		</transition>
		<transition>
			<source ref="waitingOneS88"/>
			<target ref="InoneSent"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c + 4 , i &gt;= 0 , i &lt;= 4 </label>
		</transition>
		<transition>
			<source ref="waitingOneS89"/>
			<target ref="waitingOneS88"/>
		</transition>
		<transition>
			<source ref="waitingOneS89"/>
			<target ref="waitingOneS87"/>
		</transition>
		<transition>
			<source ref="waitingOneS89"/>
			<target ref="InoneSent"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c + 4 , i &gt;= 0 , i &lt;= 4 </label>
		</transition>
		<transition>
			<source ref="zeroSentS91"/>
			<target ref="zeroSentS94"/>
			<label kind="guard">x &gt;= 16 </label>
		</transition>
		<transition>
			<source ref="zeroSentS91"/>
			<target ref="zeroSentS93"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="zeroSentS91"/>
			<target ref="zeroSentS92"/>
		</transition>
		<transition>
			<source ref="zeroSentS91"/>
			<target ref="Inidle"/>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , doublezero == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS91"/>
			<target ref="Inidle"/>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , p == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS91"/>
			<target ref="InoneSent"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 16 - delta2 , x &lt;= 16 + delta2 , i == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c + 4 , i &gt;= 0 , i &lt;= 4 </label>
		</transition>
		<transition>
			<source ref="zeroSentS91"/>
			<target ref="InwaitingZero"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , i == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS92"/>
			<target ref="zeroSentS94"/>
			<label kind="guard">x &gt;= 16 </label>
		</transition>
		<transition>
			<source ref="zeroSentS92"/>
			<target ref="zeroSentS93"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="zeroSentS92"/>
			<target ref="zeroSentS91"/>
		</transition>
		<transition>
			<source ref="zeroSentS92"/>
			<target ref="Inidle"/>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , doublezero == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS92"/>
			<target ref="Inidle"/>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , p == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS92"/>
			<target ref="InoneSent"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 16 - delta2 , x &lt;= 16 + delta2 , i == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c + 4 , i &gt;= 0 , i &lt;= 4 </label>
		</transition>
		<transition>
			<source ref="zeroSentS92"/>
			<target ref="InwaitingZero"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , i == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS93"/>
			<target ref="zeroSentS94"/>
			<label kind="guard">x &gt;= 16 </label>
		</transition>
		<transition>
			<source ref="zeroSentS93"/>
			<target ref="zeroSentS92"/>
		</transition>
		<transition>
			<source ref="zeroSentS93"/>
			<target ref="zeroSentS91"/>
		</transition>
		<transition>
			<source ref="zeroSentS93"/>
			<target ref="Inidle"/>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , doublezero == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS93"/>
			<target ref="Inidle"/>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , p == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS93"/>
			<target ref="InoneSent"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 16 - delta2 , x &lt;= 16 + delta2 , i == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c + 4 , i &gt;= 0 , i &lt;= 4 </label>
		</transition>
		<transition>
			<source ref="zeroSentS93"/>
			<target ref="InwaitingZero"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , i == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS94"/>
			<target ref="zeroSentS93"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="zeroSentS94"/>
			<target ref="zeroSentS92"/>
		</transition>
		<transition>
			<source ref="zeroSentS94"/>
			<target ref="zeroSentS91"/>
		</transition>
		<transition>
			<source ref="zeroSentS94"/>
			<target ref="Inidle"/>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , doublezero == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS94"/>
			<target ref="Inidle"/>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , p == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 0 </label>
		</transition>
		<transition>
			<source ref="zeroSentS94"/>
			<target ref="InoneSent"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 16 - delta2 , x &lt;= 16 + delta2 , i == 4 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c + 4 , i &gt;= 0 , i &lt;= 4 </label>
		</transition>
		<transition>
			<source ref="zeroSentS94"/>
			<target ref="InwaitingZero"/>
			<label kind="synchronisation">up?</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 , i == 0 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 </label>
		</transition>
		<transition>
			<source ref="waitingZeroS96"/>
			<target ref="waitingZeroS98"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="waitingZeroS96"/>
			<target ref="waitingZeroS97"/>
		</transition>
		<transition>
			<source ref="waitingZeroS96"/>
			<target ref="InzeroSent"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c , i &gt;= 0 , i &lt;= 4 , doublezero := 4 </label>
		</transition>
		<transition>
			<source ref="waitingZeroS97"/>
			<target ref="waitingZeroS98"/>
			<label kind="guard">x &gt;= 8 </label>
		</transition>
		<transition>
			<source ref="waitingZeroS97"/>
			<target ref="waitingZeroS96"/>
		</transition>
		<transition>
			<source ref="waitingZeroS97"/>
			<target ref="InzeroSent"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c , i &gt;= 0 , i &lt;= 4 , doublezero := 4 </label>
		</transition>
		<transition>
			<source ref="waitingZeroS98"/>
			<target ref="waitingZeroS97"/>
		</transition>
		<transition>
			<source ref="waitingZeroS98"/>
			<target ref="waitingZeroS96"/>
		</transition>
		<transition>
			<source ref="waitingZeroS98"/>
			<target ref="InzeroSent"/>
			<label kind="synchronisation">down!</label>
			<label kind="guard">x &gt;= 8 - delta2 , x &lt;= 8 + delta2 </label>
			<label kind="assignment">uuu1 := 0 , ddd2 := 0 , x := 0 , p := 4 - p , leng := leng + 4 , c := 2 * c , i &gt;= 0 , i &lt;= 4 , doublezero := 4 </label>
		</transition>
</template>
<template>
	<name>random</name>
		<location id="ran">
		<name>ran</name>
		<label kind="invariant">true </label>
		</location>
	<init ref="ran"/>
		<transition>
			<source ref="ran"/>
			<target ref="ran"/>
			<label kind="guard">true </label>
			<label kind="assignment">i := 4 </label>
		</transition>
		<transition>
			<source ref="ran"/>
			<target ref="ran"/>
			<label kind="guard">true </label>
			<label kind="assignment">i := 0 </label>
		</transition>
</template>
<system>system multAsapWatchergetup, GWlast_is_0getup, GWlast_is_1getup, EWup, checkOutput, receiver, sender, random;</system>
</nta>

