<?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>// 971204, Arne, Fredrik, Kim &amp; Paul.
// Fairmont Hotel, San Francisco.

// Test Data from Feb. 18, 2003 by Aglais Co. http://aglaia.cc/profile.html 
const LEAKY_NUM 108, WORK1_ACC_NUM 60, WORK2_ACC_NUM 84, WORK3_ACC_NUM 65, STATIC_ACC_NUM 64;

int[0,150] accNo1, accNo2, accNo3, detected, detectedNo, stressG;
urgent chan check;</declaration>
  
  <template>
    <name x="32" y="16">UserAcc</name>
    <parameter x="168" y="16"> int[0,150] accNo, detected, detectedNo, stressG; const workAccNum; urgent chan check</parameter>
    <declaration/>
    <location id="id7" x="16" y="48">
    <name x="24" y="0">idle</name></location>
    <location id="id6" x="176" y="-16">
      <name x="152" y="-48">Logon</name>
    </location>
    <location id="id8" x="16" y="-16"><name x="-48" y="-24">Access</name></location><location id="id9" x="16" y="208"><name x="-16" y="224">Detection</name><committed/></location><location id="id10" x="-80" y="208"><name x="-96" y="224">MngReview</name></location><location id="id11" x="80" y="208"><name x="48" y="224">StopWork</name></location><location id="id12" x="176" y="48"><name x="160" y="64">Leak</name></location><location id="id15" x="176" y="112"><name x="120" y="128">FinishWork</name></location><location id="id0" x="16" y="112"/><location id="id1" x="176" y="208"><name x="128" y="176">Complaint</name></location><init ref="id6"/>
    <transition>
      <source ref="id6"/>
      <target ref="id7"/>
      
      
      
    </transition>
    
  <transition><source ref="id9"/><target ref="id11"/><label kind="guard" x="40" y="160">accNo &lt; workAccNum</label></transition><transition><source ref="id9"/><target ref="id10"/><label kind="guard" x="-92" y="178">accNo &gt;=workAccNum</label></transition><transition><source ref="id7"/><target ref="id0"/><label kind="assignment" x="-96" y="72">detectedNo:=accNo</label></transition><transition><source ref="id8"/><target ref="id7"/><nail x="16" y="0"/></transition><transition><source ref="id7"/><target ref="id12"/><label kind="guard" x="80" y="24">accNo &gt; LEAKY_NUM</label></transition><transition><source ref="id7"/><target ref="id15"/><label kind="guard" x="72" y="80">accNo == workAccNum</label></transition><transition><source ref="id0"/><target ref="id9"/><label kind="synchronisation" x="-32" y="136">check?</label></transition><transition><source ref="id0"/><target ref="id8"/><label kind="assignment" x="-96" y="16">detectedNo:=0,
accNo++</label><nail x="-40" y="48"/></transition><transition><source ref="id11"/><target ref="id0"/><label kind="assignment" x="40" y="112">stressG++</label><label kind="guard" x="40" y="128">stressG&lt;10</label></transition><transition><source ref="id11"/><target ref="id1"/><label kind="guard" x="88" y="208">stressG==10</label></transition></template>
  <template><name x="5" y="5">StaticPolicy1</name><parameter x="5" y="20"> int[0,150] detectedNo</parameter><declaration/><location id="id13" x="272" y="144"><name x="256" y="160">idle</name></location><location id="id14" x="400" y="144"/><init ref="id13"/><transition><source ref="id13"/><target ref="id14"/><label kind="synchronisation" x="312" y="120">check!</label><label kind="guard" x="232" y="104">detectedNo &gt; STATIC_ACC_NUM</label><label kind="assignment" x="296" y="144">detected:=1</label></transition><transition><source ref="id14"/><target ref="id13"/><nail x="336" y="200"/></transition></template><instantiation>User1 := UserAcc(accNo1, detected, detectedNo, stressG, WORK1_ACC_NUM, check);
User2 := UserAcc(accNo2, detected, detectedNo, stressG, WORK2_ACC_NUM, check);
User3 := UserAcc(accNo3, detected, detectedNo, stressG, WORK3_ACC_NUM, check);
StaticPolicy1 := StaticPolicy1(detectedNo);</instantiation>
  <system>system User1, User2, User3, StaticPolicy1;</system>
</nta>