544 lines
37 KiB
XML
Executable file
544 lines
37 KiB
XML
Executable file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
<!-- This project file has been saved by the New GreatSPN Editor, v.100 --><project name="New project" version="121">
|
|
<gspn name="CPN" show-fluid-cmd="false" show-timed-cmd="false" view-rates="false">
|
|
<nodes>
|
|
<place domain="Process" label-x="0.5" label-y="2.0" marking="<P>+<Q>" name="local" x="19.0" y="8.0"/>
|
|
<place domain="Process" label-x="-3.5" label-y="0.0" name="resetFalse" x="19.0" y="17.0"/>
|
|
<place domain="Process" name="changeTurn" x="19.0" y="35.0"/>
|
|
<place domain="Process" name="await" x="19.0" y="26.0"/>
|
|
<place domain="Process" label-x="0.5" name="setFalse" x="19.0" y="48.0"/>
|
|
<place domain="Process" label-x="3.0" label-y="-1.5" name="setTrue" x="35.0" y="8.0"/>
|
|
<place domain="Process" name="while" x="35.0" y="17.0"/>
|
|
<place domain="Process" name="critical" x="35.0" y="35.0"/>
|
|
<place domain="Process" name="resetTrue" x="35.0" y="26.0"/>
|
|
<transition name="T0" nservers-x="0.5" type="EXP" x="27.55" y="8.0"/>
|
|
<transition guard="(t == t2 && p == P) || (p == Q && t == t1)" guard-x="-7.0" guard-y="-2.0" name="T1" nservers-x="0.5" type="EXP" x="27.55" y="17.0"/>
|
|
<transition guard="(p == P && t == t1) || (p == Q && t ==t2)" guard-x="-8.0" guard-y="4.5" name="T2" nservers-x="0.5" type="EXP" x="27.55" y="26.0"/>
|
|
<transition name="T3" nservers-x="0.5" type="EXP" x="27.55" y="35.0"/>
|
|
<transition label-x="-2.5" label-y="-0.5" name="Treset" nservers-x="0.5" type="EXP" x="12.55" y="48.0"/>
|
|
<transition name="T6" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="19.55" y="22.0"/>
|
|
<transition name="T8" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="35.55" y="10.0"/>
|
|
<transition name="T9" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="35.55" y="22.0"/>
|
|
<place domain="Turn" marking="<t1>" name="turn" x="6.0" y="12.0"/>
|
|
<color-class definition="{isTrue, isFalse}" name="Bool" x="62.3125" y="7.0"/>
|
|
<color-class definition="{P, Q}" name="Process" x="62.125" y="9.0"/>
|
|
<color-class definition="Process*Bool" name="D" x="62.125" y="11.0"/>
|
|
<color-class definition="{t1,t2}" name="Turn" x="62.0625" y="5.0"/>
|
|
<place domain="D" marking="<P, isFalse> + <Q,isFalse>" name="wait" x="3.0" y="26.0"/>
|
|
<color-var domain="Process" name="p" x="53.1875" y="8.0"/>
|
|
<color-var domain="Turn" name="t" x="53.375" y="11.0"/>
|
|
<color-var domain="Bool" name="b" x="53.25" y="9.0"/>
|
|
<transition guard="False" name="T7" nservers-x="0.5" type="EXP" x="19.55" y="3.0"/>
|
|
<transition guard="p==Q" guard-x="2.0" guard-y="-2.0" name="T15" nservers-x="0.5" type="EXP" x="64.55" y="17.0"/>
|
|
<transition guard="p==P" guard-x="-2.0" guard-y="-1.5" name="T14" nservers-x="0.5" rotation="3.141592653589793" type="EXP" x="55.55" y="17.0"/>
|
|
<transition guard="p == P" name="T4" nservers-x="0.5" rotation="1.5707963267948966" type="EXP" x="33.55" y="43.0"/>
|
|
<transition guard="p == Q" name="T5" nservers-x="0.5" rotation="1.5707963267948966" type="EXP" x="22.55" y="43.0"/>
|
|
<place domain="Process" name="P0" x="43.0" y="14.0"/>
|
|
<transition guard="b == isFalse" guard-y="-1.0" label-x="-1.5" label-y="0.5" name="T10" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="35.55" y="15.0"/>
|
|
<transition guard="b == isTrue" guard-x="3.0" guard-y="-2.0" label-x="1.5" label-y="1.5" name="T11" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="43.55" y="26.0"/>
|
|
</nodes>
|
|
<edges>
|
|
<arc head="T0" kind="INPUT" mult="<p>" tail="local">
|
|
<point x="24.0" y="9.0"/>
|
|
</arc>
|
|
<arc head="setTrue" kind="OUTPUT" mult="<p>" tail="T0"/>
|
|
<arc head="T8" kind="INPUT" mult="<p>" tail="setTrue"/>
|
|
<arc head="T1" kind="INPUT" mult="<p>" tail="while"/>
|
|
<arc head="resetFalse" kind="OUTPUT" mult="<p>" tail="T1"/>
|
|
<arc head="T6" kind="INPUT" mult="<p>" tail="resetFalse"/>
|
|
<arc head="await" kind="OUTPUT" mult="<p>" tail="T6"/>
|
|
<arc head="T2" kind="INPUT" mult="<p>" tail="await"/>
|
|
<arc head="resetTrue" kind="OUTPUT" mult="<p>" tail="T2"/>
|
|
<arc head="T9" kind="INPUT" mult="<p>" tail="resetTrue"/>
|
|
<arc head="while" kind="OUTPUT" mult="<p>" tail="T9"/>
|
|
<arc head="T3" kind="INPUT" mult="<p>" tail="critical"/>
|
|
<arc head="changeTurn" kind="OUTPUT" mult="<p>" tail="T3"/>
|
|
<arc head="Treset" kind="INPUT" mult="<p>" tail="setFalse"/>
|
|
<arc broken="true" head="local" kind="OUTPUT" mult="<p>" mult-x="-0.9998973355823111" mult-y="1.5" tail="Treset">
|
|
<point x="12.5" y="12.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T1" kind="INPUT" mult="<t>" tail="turn">
|
|
<point x="28.0" y="13.5"/>
|
|
</arc>
|
|
<arc broken="true" head="turn" kind="OUTPUT" mult="<t>" tail="T1">
|
|
<point x="28.0" y="21.5"/>
|
|
<point x="7.5" y="21.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T2" kind="INPUT" mult="<t>" tail="turn">
|
|
<point x="3.5" y="13.5"/>
|
|
<point x="2.0" y="13.5"/>
|
|
<point x="2.0" y="34.0"/>
|
|
<point x="28.0" y="32.5"/>
|
|
</arc>
|
|
<arc broken="true" head="turn" kind="OUTPUT" mult="<t>" tail="T2">
|
|
<point x="28.0" y="23.0"/>
|
|
<point x="8.0" y="24.0"/>
|
|
<point x="14.0" y="9.5"/>
|
|
<point x="7.5" y="8.5"/>
|
|
</arc>
|
|
<arc broken="true" head="T6" kind="INPUT" mult="<p, isTrue>" tail="wait">
|
|
<point x="11.0" y="22.5"/>
|
|
</arc>
|
|
<arc broken="true" head="wait" kind="OUTPUT" mult="<p, isFalse>" tail="T6">
|
|
<point x="11.5" y="28.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait" kind="OUTPUT" mult="<p, isTrue>" tail="T9">
|
|
<point x="46.5" y="23.0"/>
|
|
<point x="48.5" y="14.5"/>
|
|
<point x="4.5" y="21.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T9" kind="INPUT" mult="<p, isFalse>" tail="wait">
|
|
<point x="6.0" y="35.0"/>
|
|
<point x="31.5" y="31.0"/>
|
|
<point x="31.5" y="23.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T8" kind="INPUT" mult="<p, isFalse>" tail="wait">
|
|
<point x="4.5" y="19.0"/>
|
|
<point x="30.5" y="14.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait" kind="OUTPUT" mult="<p, isTrue>" tail="T8">
|
|
<point x="46.5" y="10.5"/>
|
|
<point x="52.0" y="10.5"/>
|
|
<point x="53.0" y="41.0"/>
|
|
<point x="4.5" y="38.0"/>
|
|
</arc>
|
|
<arc broken="true" head="Treset" kind="INPUT" mult="<p, isTrue>" tail="wait"/>
|
|
<arc broken="true" head="wait" kind="OUTPUT" mult="<p, isFalse>" tail="Treset">
|
|
<point x="11.5" y="53.0"/>
|
|
<point x="8.0" y="53.5"/>
|
|
</arc>
|
|
<arc head="T7" kind="INPUT" mult="<p>" tail="local">
|
|
<point x="18.0" y="6.0"/>
|
|
</arc>
|
|
<arc head="local" kind="OUTPUT" mult="<p>" tail="T7">
|
|
<point x="22.0" y="6.5"/>
|
|
</arc>
|
|
<arc broken="true" head="T15" kind="INPUT" mult="<Q>" tail="while">
|
|
<point x="75.0" y="18.0"/>
|
|
<point x="75.0" y="27.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T14" kind="INPUT" mult="<P>" mult-k="1.1125976562500002" tail="while">
|
|
<point x="53.0" y="18.0"/>
|
|
<point x="53.0" y="32.0"/>
|
|
<point x="53.0" y="41.0"/>
|
|
</arc>
|
|
<arc head="critical" kind="OUTPUT" mult="<p>" mult-x="0.2249755859375" mult-y="2.0" tail="T15">
|
|
<point x="65.5" y="36.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T14" kind="INPUT" mult="<Q, isFalse>" mult-k="0.7805664062500001" mult-x="2.026855033382727" mult-y="-1.1574710451992871" tail="wait">
|
|
<point x="52.5" y="60.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T15" kind="INPUT" mult="<P,isFalse>" mult-k="0.8616210937500001" mult-x="-2.101865912139509" mult-y="-0.7056767833189568" tail="wait">
|
|
<point x="70.0" y="54.5"/>
|
|
</arc>
|
|
<arc broken="true" head="wait" kind="OUTPUT" mult="<Q,isFalse>" tail="T14">
|
|
<point x="38.5" y="64.5"/>
|
|
</arc>
|
|
<arc broken="true" head="wait" kind="OUTPUT" mult="<P,isFalse>" tail="T15">
|
|
<point x="75.5" y="54.5"/>
|
|
</arc>
|
|
<arc head="critical" kind="OUTPUT" mult="<p>" tail="T14">
|
|
<point x="52.5" y="18.0"/>
|
|
<point x="52.5" y="36.0"/>
|
|
</arc>
|
|
<arc head="T5" kind="INPUT" mult="<p>" tail="changeTurn"/>
|
|
<arc head="T4" kind="INPUT" mult="<p>" tail="changeTurn"/>
|
|
<arc head="setFalse" kind="OUTPUT" mult="<p>" tail="T5"/>
|
|
<arc head="setFalse" kind="OUTPUT" mult="<p>" tail="T4"/>
|
|
<arc broken="true" head="T5" kind="INPUT" mult="<t>" tail="turn">
|
|
<point x="7.0" y="44.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T4" kind="INPUT" mult="<t>" tail="turn">
|
|
<point x="7.0" y="44.0"/>
|
|
</arc>
|
|
<arc broken="true" head="turn" kind="OUTPUT" mult="<t1>" tail="T5">
|
|
<point x="27.0" y="44.0"/>
|
|
<point x="29.0" y="52.5"/>
|
|
<point x="25.5" y="59.0"/>
|
|
<point x="8.0" y="57.5"/>
|
|
<point x="9.5" y="45.0"/>
|
|
<point x="9.5" y="44.5"/>
|
|
</arc>
|
|
<arc broken="true" head="turn" kind="OUTPUT" mult="<t2>" mult-x="1.3147959104502354" mult-y="2.009056037340031" tail="T4">
|
|
<point x="42.0" y="49.0"/>
|
|
<point x="38.0" y="56.5"/>
|
|
<point x="27.0" y="56.5"/>
|
|
<point x="21.5" y="60.5"/>
|
|
<point x="9.0" y="60.0"/>
|
|
<point x="7.5" y="42.0"/>
|
|
<point x="9.0" y="34.5"/>
|
|
</arc>
|
|
<arc head="P0" kind="OUTPUT" mult="<p>" tail="T8"/>
|
|
<arc head="T10" kind="INPUT" mult="<p>" tail="P0"/>
|
|
<arc head="while" kind="OUTPUT" mult="<p>" tail="T10"/>
|
|
<arc head="T11" kind="INPUT" mult="<p>" tail="P0"/>
|
|
<arc head="critical" kind="OUTPUT" mult="<p>" tail="T11">
|
|
<point x="44.0" y="36.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T10" kind="INPUT" mult="<p, b>" tail="wait">
|
|
<point x="14.5" y="14.5"/>
|
|
<point x="30.0" y="15.0"/>
|
|
<point x="22.0" y="13.5"/>
|
|
<point x="50.5" y="7.5"/>
|
|
<point x="52.0" y="15.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait" kind="OUTPUT" mult="<p, b>" tail="T10">
|
|
<point x="15.0" y="15.0"/>
|
|
<point x="10.5" y="24.0"/>
|
|
<point x="7.0" y="40.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T11" kind="INPUT" mult="<p, b>" tail="wait">
|
|
<point x="50.5" y="44.0"/>
|
|
<point x="60.5" y="28.0"/>
|
|
<point x="53.0" y="27.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait" kind="OUTPUT" mult="<p, b>" tail="T11">
|
|
<point x="39.0" y="27.0"/>
|
|
<point x="36.5" y="33.5"/>
|
|
<point x="11.0" y="32.0"/>
|
|
</arc>
|
|
</edges>
|
|
</gspn>
|
|
<measures gspn-name="CPN" name="Measures" simplified-UI="false">
|
|
<assignments/>
|
|
<rgmedd2/>
|
|
<formulas>
|
|
<formula comment="Basic statistics of the toolchain execution." language="STAT"/>
|
|
<formula expr="AG(#critical_P == 1)" language="CTL"/>
|
|
<formula language="CTL"/>
|
|
<formula expr="deadlock" language="CTL"/>
|
|
<formula language="LTL"/>
|
|
</formulas>
|
|
</measures>
|
|
<measures gspn-name="Unfolding of CPN" log-uuid="c1532aef-ff8a-49e4-b3b3-a0604dacfaf6" name="CTL model checking of Unfolding of CPN" rapid-type="CTL_MODEL_CHECKING" simplified-UI="true">
|
|
<assignments/>
|
|
<rgmedd2 counter-examples="true"/>
|
|
<formulas>
|
|
<formula language="STAT">
|
|
<result-table>
|
|
<stat-result name="STAT">
|
|
<bindings/>
|
|
<stat key="build_time" value="0.00244 seconds."/>
|
|
<stat key="num_rs_nodes" value="90"/>
|
|
<stat key="num_tangible_markings" value="112"/>
|
|
<stat key="total_firings" value="unknown"/>
|
|
</stat-result>
|
|
</result-table>
|
|
</formula>
|
|
<formula comment="CTL formula" expr="AG( #critical_P != 1 || #critical_Q != 1)" language="CTL">
|
|
<result-table>
|
|
<mc-result name="MEASURE1" value="true">
|
|
<bindings/>
|
|
</mc-result>
|
|
</result-table>
|
|
</formula>
|
|
<formula expr="AG ((#await_P==1 || #await_Q == 1) -> AF (#critical_P == 1 || #critical_Q == 1))" language="CTL">
|
|
<result-table>
|
|
<mc-result name="MEASURE2" value="false">
|
|
<bindings/>
|
|
</mc-result>
|
|
</result-table>
|
|
</formula>
|
|
<formula expr="AG (#await_P==1 -> AF (#critical_P == 1))" language="CTL">
|
|
<result-table>
|
|
<mc-result name="MEASURE0" value="false">
|
|
<bindings/>
|
|
</mc-result>
|
|
</result-table>
|
|
</formula>
|
|
</formulas>
|
|
</measures>
|
|
<gspn name="While_loop" show-fluid-cmd="false" show-timed-cmd="false" view-rates="false">
|
|
<nodes>
|
|
<color-class definition="{isTrue, isFalse}" name="Bool" x="55.3125" y="28.0"/>
|
|
<color-class definition="{P, Q}" name="Process" x="55.125" y="30.0"/>
|
|
<color-class definition="Process*Bool" name="D" x="55.125" y="32.0"/>
|
|
<color-class definition="{t1,t2}" name="Turn" x="55.0625" y="26.0"/>
|
|
<color-var domain="Process" name="p" x="58.1875" y="19.0"/>
|
|
<color-var domain="Turn" name="t" x="58.375" y="21.0"/>
|
|
<color-var domain="Bool" name="b" x="58.25" y="20.0"/>
|
|
<place domain="D" marking="<P, isFalse> + <Q,isFalse>" name="wait" x="31.0" y="35.0"/>
|
|
<place domain="Process" marking="<All>" name="P0" x="31.0" y="5.0"/>
|
|
<place domain="Process" label-x="-4.5" label-y="-1.5" name="While" x="31.0" y="14.0"/>
|
|
<transition guard="p==Q" guard-x="2.0" guard-y="-2.0" name="T0" nservers-x="0.5" type="EXP" x="32.55" y="23.0"/>
|
|
<transition guard="p==P" guard-x="-2.0" guard-y="-1.5" name="T1" nservers-x="0.5" rotation="3.141592653589793" type="EXP" x="30.55" y="23.0"/>
|
|
<transition name="T2" nservers-x="0.5" rotation="1.5707963267948966" type="EXP" x="31.55" y="10.0"/>
|
|
</nodes>
|
|
<edges>
|
|
<arc head="T2" kind="INPUT" mult="<p>" tail="P0"/>
|
|
<arc head="T0" kind="INPUT" mult="<Q>" tail="While">
|
|
<point x="39.5" y="15.0"/>
|
|
<point x="39.5" y="24.0"/>
|
|
</arc>
|
|
<arc head="T1" kind="INPUT" mult="<P>" tail="While">
|
|
<point x="24.5" y="15.0"/>
|
|
<point x="24.5" y="24.0"/>
|
|
</arc>
|
|
<arc head="While" kind="OUTPUT" mult="<p>" mult-x="-0.2249755859375" mult-y="2.0" tail="T1">
|
|
<point x="32.0" y="24.0"/>
|
|
</arc>
|
|
<arc head="While" kind="OUTPUT" mult="<p>" mult-x="0.2249755859375" mult-y="2.0" tail="T0">
|
|
<point x="32.0" y="24.0"/>
|
|
</arc>
|
|
<arc head="While" kind="OUTPUT" mult="<p>" mult-x="2.5" mult-y="0.0" tail="T2"/>
|
|
<arc head="T1" kind="INPUT" mult="<Q, isFalse>" mult-k="0.7805664062500001" mult-x="2.026855033382727" mult-y="-1.1574710451992871" tail="wait">
|
|
<point x="25.0" y="30.5"/>
|
|
</arc>
|
|
<arc head="T0" kind="INPUT" mult="<P,isFalse>" mult-k="0.8616210937500001" mult-x="-2.101865912139509" mult-y="-0.7056767833189568" tail="wait">
|
|
<point x="39.0" y="30.5"/>
|
|
</arc>
|
|
<arc head="wait" kind="OUTPUT" mult="<Q,isFalse>" tail="T1">
|
|
<point x="18.5" y="30.5"/>
|
|
</arc>
|
|
<arc head="wait" kind="OUTPUT" mult="<P,isFalse>" tail="T0">
|
|
<point x="44.5" y="30.5"/>
|
|
</arc>
|
|
</edges>
|
|
</gspn>
|
|
<gspn name="Unfolding of CPN">
|
|
<nodes>
|
|
<place marking="1" name="local_P" x="19.0" y="8.0"/>
|
|
<place marking="1" name="local_Q" x="19.0" y="11.0"/>
|
|
<place name="resetFalse_P" x="19.0" y="17.0"/>
|
|
<place name="resetFalse_Q" x="19.0" y="20.0"/>
|
|
<place name="changeTurn_P" x="19.0" y="35.0"/>
|
|
<place name="changeTurn_Q" x="19.0" y="38.0"/>
|
|
<place name="await_P" x="19.0" y="26.0"/>
|
|
<place name="await_Q" x="19.0" y="29.0"/>
|
|
<place name="setFalse_P" x="19.0" y="45.0"/>
|
|
<place name="setFalse_Q" x="19.0" y="48.0"/>
|
|
<place name="setTrue_P" x="35.0" y="8.0"/>
|
|
<place name="setTrue_Q" x="35.0" y="11.0"/>
|
|
<place name="while_P" x="35.0" y="17.0"/>
|
|
<place name="while_Q" x="35.0" y="20.0"/>
|
|
<place name="critical_P" x="35.0" y="35.0"/>
|
|
<place name="critical_Q" x="35.0" y="38.0"/>
|
|
<place name="resetTrue_P" x="35.0" y="26.0"/>
|
|
<place name="resetTrue_Q" x="35.0" y="29.0"/>
|
|
<place marking="1" name="turn_t1" x="6.0" y="12.0"/>
|
|
<place name="turn_t2" x="6.0" y="15.0"/>
|
|
<place name="wait_P_isTrue" x="3.0" y="26.0"/>
|
|
<place marking="1" name="wait_P_isFalse" x="6.0" y="26.0"/>
|
|
<place name="wait_Q_isTrue" x="3.0" y="29.0"/>
|
|
<place marking="1" name="wait_Q_isFalse" x="6.0" y="29.0"/>
|
|
<transition name="T0_p_P" nservers-x="0.5" type="EXP" x="27.55" y="8.0"/>
|
|
<transition name="T0_p_Q" nservers-x="0.5" type="EXP" x="27.55" y="11.0"/>
|
|
<transition name="T1_p_P_t_t2" nservers-x="0.5" type="EXP" x="30.55" y="17.0"/>
|
|
<transition name="T1_p_Q_t_t1" nservers-x="0.5" type="EXP" x="27.55" y="20.0"/>
|
|
<transition name="T2_p_P_t_t1" nservers-x="0.5" type="EXP" x="27.55" y="26.0"/>
|
|
<transition name="T2_p_Q_t_t2" nservers-x="0.5" type="EXP" x="30.55" y="29.0"/>
|
|
<transition name="T3_p_P" nservers-x="0.5" type="EXP" x="27.55" y="35.0"/>
|
|
<transition name="T3_p_Q" nservers-x="0.5" type="EXP" x="27.55" y="38.0"/>
|
|
<transition name="Treset_p_P" nservers-x="0.5" type="EXP" x="12.55" y="45.0"/>
|
|
<transition name="Treset_p_Q" nservers-x="0.5" type="EXP" x="12.55" y="48.0"/>
|
|
<transition name="T5" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="21.55" y="41.0"/>
|
|
<transition name="T6_p_P" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="19.55" y="22.0"/>
|
|
<transition name="T6_p_Q" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="19.55" y="25.0"/>
|
|
<transition name="T8_p_P" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="35.55" y="13.0"/>
|
|
<transition name="T8_p_Q" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="35.55" y="16.0"/>
|
|
<transition name="T9_p_P" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="35.55" y="22.0"/>
|
|
<transition name="T9_p_Q" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="35.55" y="25.0"/>
|
|
<transition name="T4" nservers-x="0.5" rotation="4.71238898038469" type="EXP" x="17.55" y="41.0"/>
|
|
<transition name="T15_p_Q" nservers-x="0.5" type="EXP" x="64.55" y="20.0"/>
|
|
<transition name="T14_p_P" nservers-x="0.5" rotation="3.141592653589793" type="EXP" x="55.55" y="17.0"/>
|
|
</nodes>
|
|
<edges>
|
|
<arc head="setTrue_P" kind="OUTPUT" tail="T0_p_P"/>
|
|
<arc head="T0_p_P" kind="INPUT" tail="local_P">
|
|
<point x="24.0" y="9.0"/>
|
|
</arc>
|
|
<arc head="setTrue_Q" kind="OUTPUT" tail="T0_p_Q"/>
|
|
<arc head="T0_p_Q" kind="INPUT" tail="local_Q">
|
|
<point x="24.0" y="12.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T1_p_P_t_t2" kind="INPUT" tail="turn_t2">
|
|
<point x="31.0" y="13.5"/>
|
|
</arc>
|
|
<arc broken="true" head="turn_t2" kind="OUTPUT" tail="T1_p_P_t_t2">
|
|
<point x="31.0" y="21.5"/>
|
|
<point x="10.5" y="21.0"/>
|
|
</arc>
|
|
<arc head="resetFalse_P" kind="OUTPUT" tail="T1_p_P_t_t2"/>
|
|
<arc head="T1_p_P_t_t2" kind="INPUT" tail="while_P"/>
|
|
<arc broken="true" head="T1_p_Q_t_t1" kind="INPUT" tail="turn_t1">
|
|
<point x="28.0" y="16.5"/>
|
|
</arc>
|
|
<arc broken="true" head="turn_t1" kind="OUTPUT" tail="T1_p_Q_t_t1">
|
|
<point x="28.0" y="24.5"/>
|
|
<point x="7.5" y="24.0"/>
|
|
</arc>
|
|
<arc head="resetFalse_Q" kind="OUTPUT" tail="T1_p_Q_t_t1"/>
|
|
<arc head="T1_p_Q_t_t1" kind="INPUT" tail="while_Q"/>
|
|
<arc broken="true" head="turn_t1" kind="OUTPUT" tail="T2_p_P_t_t1">
|
|
<point x="28.0" y="23.0"/>
|
|
<point x="8.0" y="24.0"/>
|
|
<point x="14.0" y="9.5"/>
|
|
<point x="7.5" y="8.5"/>
|
|
</arc>
|
|
<arc broken="true" head="T2_p_P_t_t1" kind="INPUT" tail="turn_t1">
|
|
<point x="3.5" y="13.5"/>
|
|
<point x="2.0" y="13.5"/>
|
|
<point x="2.0" y="34.0"/>
|
|
<point x="28.0" y="32.5"/>
|
|
</arc>
|
|
<arc head="resetTrue_P" kind="OUTPUT" tail="T2_p_P_t_t1"/>
|
|
<arc head="T2_p_P_t_t1" kind="INPUT" tail="await_P"/>
|
|
<arc broken="true" head="turn_t2" kind="OUTPUT" tail="T2_p_Q_t_t2">
|
|
<point x="31.0" y="26.0"/>
|
|
<point x="11.0" y="27.0"/>
|
|
<point x="17.0" y="12.5"/>
|
|
<point x="10.5" y="11.5"/>
|
|
</arc>
|
|
<arc broken="true" head="T2_p_Q_t_t2" kind="INPUT" tail="turn_t2">
|
|
<point x="6.5" y="16.5"/>
|
|
<point x="5.0" y="16.5"/>
|
|
<point x="5.0" y="37.0"/>
|
|
<point x="31.0" y="35.5"/>
|
|
</arc>
|
|
<arc head="resetTrue_Q" kind="OUTPUT" tail="T2_p_Q_t_t2"/>
|
|
<arc head="T2_p_Q_t_t2" kind="INPUT" tail="await_Q"/>
|
|
<arc head="T3_p_P" kind="INPUT" tail="critical_P"/>
|
|
<arc head="changeTurn_P" kind="OUTPUT" tail="T3_p_P"/>
|
|
<arc head="T3_p_Q" kind="INPUT" tail="critical_Q"/>
|
|
<arc head="changeTurn_Q" kind="OUTPUT" tail="T3_p_Q"/>
|
|
<arc broken="true" head="local_P" kind="OUTPUT" tail="Treset_p_P">
|
|
<point x="12.5" y="9.0"/>
|
|
</arc>
|
|
<arc broken="true" head="Treset_p_P" kind="INPUT" tail="wait_P_isTrue"/>
|
|
<arc head="Treset_p_P" kind="INPUT" tail="setFalse_P"/>
|
|
<arc broken="true" head="wait_P_isFalse" kind="OUTPUT" tail="Treset_p_P">
|
|
<point x="11.5" y="50.0"/>
|
|
<point x="8.0" y="50.5"/>
|
|
</arc>
|
|
<arc broken="true" head="local_Q" kind="OUTPUT" tail="Treset_p_Q">
|
|
<point x="12.5" y="12.0"/>
|
|
</arc>
|
|
<arc broken="true" head="Treset_p_Q" kind="INPUT" tail="wait_Q_isTrue"/>
|
|
<arc head="Treset_p_Q" kind="INPUT" tail="setFalse_Q"/>
|
|
<arc broken="true" head="wait_Q_isFalse" kind="OUTPUT" tail="Treset_p_Q">
|
|
<point x="11.5" y="53.0"/>
|
|
<point x="8.0" y="53.5"/>
|
|
</arc>
|
|
<arc broken="true" head="T5" kind="INPUT" tail="turn_t2">
|
|
<point x="7.5" y="42.5"/>
|
|
<point x="36.0" y="40.0"/>
|
|
<point x="33.0" y="42.0"/>
|
|
</arc>
|
|
<arc broken="true" head="turn_t1" kind="OUTPUT" tail="T5">
|
|
<point x="26.5" y="45.0"/>
|
|
<point x="29.5" y="49.5"/>
|
|
<point x="21.0" y="51.0"/>
|
|
<point x="17.0" y="50.5"/>
|
|
<point x="1.0" y="49.5"/>
|
|
<point x="1.0" y="48.0"/>
|
|
<point x="3.0" y="35.0"/>
|
|
<point x="3.5" y="34.5"/>
|
|
</arc>
|
|
<arc head="setFalse_Q" kind="OUTPUT" tail="T5"/>
|
|
<arc head="T5" kind="INPUT" tail="changeTurn_Q"/>
|
|
<arc broken="true" head="wait_P_isFalse" kind="OUTPUT" tail="T6_p_P">
|
|
<point x="11.5" y="28.0"/>
|
|
</arc>
|
|
<arc head="T6_p_P" kind="INPUT" tail="resetFalse_P"/>
|
|
<arc broken="true" head="T6_p_P" kind="INPUT" tail="wait_P_isTrue">
|
|
<point x="11.0" y="22.5"/>
|
|
</arc>
|
|
<arc head="await_P" kind="OUTPUT" tail="T6_p_P"/>
|
|
<arc broken="true" head="wait_Q_isFalse" kind="OUTPUT" tail="T6_p_Q">
|
|
<point x="11.5" y="31.0"/>
|
|
</arc>
|
|
<arc head="T6_p_Q" kind="INPUT" tail="resetFalse_Q"/>
|
|
<arc broken="true" head="T6_p_Q" kind="INPUT" tail="wait_Q_isTrue">
|
|
<point x="11.0" y="25.5"/>
|
|
</arc>
|
|
<arc head="await_Q" kind="OUTPUT" tail="T6_p_Q"/>
|
|
<arc broken="true" head="T8_p_P" kind="INPUT" tail="wait_P_isFalse">
|
|
<point x="4.5" y="19.0"/>
|
|
<point x="30.5" y="14.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait_P_isTrue" kind="OUTPUT" tail="T8_p_P">
|
|
<point x="45.5" y="14.0"/>
|
|
<point x="51.0" y="14.0"/>
|
|
<point x="52.0" y="44.5"/>
|
|
<point x="3.5" y="41.5"/>
|
|
</arc>
|
|
<arc head="while_P" kind="OUTPUT" tail="T8_p_P"/>
|
|
<arc head="T8_p_P" kind="INPUT" tail="setTrue_P"/>
|
|
<arc broken="true" head="T8_p_Q" kind="INPUT" tail="wait_Q_isFalse">
|
|
<point x="4.5" y="22.0"/>
|
|
<point x="30.5" y="17.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait_Q_isTrue" kind="OUTPUT" tail="T8_p_Q">
|
|
<point x="45.5" y="17.0"/>
|
|
<point x="51.0" y="17.0"/>
|
|
<point x="52.0" y="47.5"/>
|
|
<point x="3.5" y="44.5"/>
|
|
</arc>
|
|
<arc head="while_Q" kind="OUTPUT" tail="T8_p_Q"/>
|
|
<arc head="T8_p_Q" kind="INPUT" tail="setTrue_Q"/>
|
|
<arc head="T9_p_P" kind="INPUT" tail="resetTrue_P"/>
|
|
<arc head="while_P" kind="OUTPUT" tail="T9_p_P"/>
|
|
<arc broken="true" head="T9_p_P" kind="INPUT" tail="wait_P_isFalse">
|
|
<point x="6.0" y="35.0"/>
|
|
<point x="31.5" y="31.0"/>
|
|
<point x="31.5" y="23.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait_P_isTrue" kind="OUTPUT" tail="T9_p_P">
|
|
<point x="46.5" y="23.0"/>
|
|
<point x="48.5" y="14.5"/>
|
|
<point x="4.5" y="21.0"/>
|
|
</arc>
|
|
<arc head="T9_p_Q" kind="INPUT" tail="resetTrue_Q"/>
|
|
<arc head="while_Q" kind="OUTPUT" tail="T9_p_Q"/>
|
|
<arc broken="true" head="T9_p_Q" kind="INPUT" tail="wait_Q_isFalse">
|
|
<point x="6.0" y="38.0"/>
|
|
<point x="31.5" y="34.0"/>
|
|
<point x="31.5" y="26.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait_Q_isTrue" kind="OUTPUT" tail="T9_p_Q">
|
|
<point x="46.5" y="26.0"/>
|
|
<point x="48.5" y="17.5"/>
|
|
<point x="4.5" y="24.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T4" kind="INPUT" tail="turn_t1">
|
|
<point x="6.5" y="40.0"/>
|
|
</arc>
|
|
<arc head="T4" kind="INPUT" tail="changeTurn_P"/>
|
|
<arc head="setFalse_P" kind="OUTPUT" tail="T4"/>
|
|
<arc broken="true" head="turn_t2" kind="OUTPUT" tail="T4">
|
|
<point x="15.5" y="40.0"/>
|
|
</arc>
|
|
<arc head="critical_Q" kind="OUTPUT" tail="T15_p_Q">
|
|
<point x="65.5" y="39.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait_P_isFalse" kind="OUTPUT" tail="T15_p_Q">
|
|
<point x="75.5" y="57.5"/>
|
|
</arc>
|
|
<arc broken="true" head="T15_p_Q" kind="INPUT" tail="wait_P_isFalse">
|
|
<point x="70.0" y="57.5"/>
|
|
</arc>
|
|
<arc broken="true" head="T15_p_Q" kind="INPUT" tail="while_Q">
|
|
<point x="75.0" y="21.0"/>
|
|
<point x="75.0" y="30.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T14_p_P" kind="INPUT" tail="while_P">
|
|
<point x="53.0" y="18.0"/>
|
|
<point x="53.0" y="32.0"/>
|
|
<point x="53.0" y="41.0"/>
|
|
</arc>
|
|
<arc broken="true" head="T14_p_P" kind="INPUT" tail="wait_Q_isFalse">
|
|
<point x="52.5" y="60.0"/>
|
|
</arc>
|
|
<arc head="critical_P" kind="OUTPUT" tail="T14_p_P">
|
|
<point x="52.5" y="18.0"/>
|
|
<point x="52.5" y="36.0"/>
|
|
</arc>
|
|
<arc broken="true" head="wait_Q_isFalse" kind="OUTPUT" tail="T14_p_P">
|
|
<point x="38.5" y="64.5"/>
|
|
</arc>
|
|
</edges>
|
|
</gspn>
|
|
<resource-list>
|
|
<document-log uuid="c1532aef-ff8a-49e4-b3b3-a0604dacfaf6">rO0ABXNyABRqYXZhLnV0aWwuTGlua2VkTGlzdAwpU11KYIgiAwAAeHB3BAAAAJx0AMUbWzBtRVhFQzogL3Vzci9sb2NhbC9HcmVhdFNQTi9iaW4vRFNQTi1Ub29sIC1sb2FkICIvaG9tZS91c2VyL1VOSVRPL2Fubm8zL3ZwYy9jb25zZWduZS8zL2Rla2tlcl9XTi1DVEwgbW9kZWwgY2hlY2tpbmcgb2YgVW5mb2xkaW5nIG9mIENQTi5zb2x1dGlvbi9VbmZvbGRpbmcgb2YgQ1BOIiAtcGJhc2lzIC1kZXRlY3QtZXhwIC1wc2ZsIC1ibmQgCnQAohtbMW0bWzRtTE9BRElORyBQRVRSSSBORVQgL2hvbWUvdXNlci9VTklUTy9hbm5vMy92cGMvY29uc2VnbmUvMy9kZWtrZXJfV04tQ1RMIG1vZGVsIGNoZWNraW5nIG9mIFVuZm9sZGluZyBvZiBDUE4uc29sdXRpb24vVW5mb2xkaW5nIG9mIENQTiAobmV0L2RlZikuLi4bWzIybRtbMjRtCnQAD01BUktJTkcgUEFSOiAwCnQAEFBMQUNFUzogICAgICAyNAp0AA9SQVRFIFBBUjogICAgMAp0ABBUUkFOU0lUSU9OUzogMjAKdAAPTUVBU1VSRVM6ICAgIDAKdAAoTE9BRElORyBUSU1FOiBbVXNlciAwLjAwMHMsIFN5cyAwLjAwMHNdCnQAAQp0AAEKdAAeQ09NUFVUSU5HIFBMQUNFIEZMT1cgQkFTSVMuLi4KdAASTT0yMCwgTj0yNCwgTjA9MjQKdAA5Q29tcHV0YXRpb24gb2YgRmxvdyBiYXNpczogc3RlcCAxLzIwLCB8S3w9MjIsIHByb2R1Y3RzPTEKdABTG1sxQSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAp0AFMbWzFBQ29tcHV0YXRpb24gb2YgRmxvdyBiYXNpczogY29tcGxldGVkIGluIDE3IHN0ZXBzLCB8S3w9Ny4gICAgICAgICAgICAgICAgICAgICAgCnQAQEZPVU5EIDcgVkVDVE9SUyBJTiBUSEUgUExBQ0UgRkxPVyBCQVNJUyAoNSBzZW1pZmxvd3MsIDIgZmxvd3MpLgp0AAEKdAABCnQAJ0FsbCBwbGFjZXMgYXJlIGNvdmVyZWQgYnkgc29tZSBQLWZsb3cuCnQAAQp0ACZUT1RBTCBUSU1FOiBbVXNlciAwLjAwMHMsIFN5cyAwLjAwMHNdCnQAJ0FWT0lEIEVYUE9ORU5USUFMIEdST1dUSCBPRiBTRU1JRkxPV1MuCnQAHUNPTVBVVElORyBQTEFDRSBTRU1JRkxPV1MuLi4KdAASTT0yMCwgTj0yNCwgTjA9MjQKdAArR2VuZXJhdGlvbiBvZiBTZW1pZmxvd3M6IHN0ZXAgMS8yMCwgfEt8PTIyCnQAUxtbMUEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKdABRG1sxQUdlbmVyYXRpb24gb2YgU2VtaWZsb3dzOiBjb21wbGV0ZWQgaW4gMTcgc3RlcHMsIHxLfD05LiAgICAgICAgICAgICAgICAgICAgICAKdAAZRk9VTkQgOSBQTEFDRSBTRU1JRkxPV1MuCnQAAQp0AAEKdAArQWxsIHBsYWNlcyBhcmUgY292ZXJlZCBieSBzb21lIFAtc2VtaWZsb3cuCnQAAQp0ACZUT1RBTCBUSU1FOiBbVXNlciAwLjAwMHMsIFN5cyAwLjAwMHNdCnQALENPTVBVVElORyBQTEFDRSBCT1VORFMgRlJPTSBQLVNFTUlGTE9XUyAuLi4KdAAnG1swWBtbMzJtIFBST0NFU1MgRVhJVEVEIE5PUk1BTExZLhtbMG0KdADWG1swbUVYRUM6IHBlcmwgLWUgJ2FsYXJtIDUgOyBleGVjICIvdXNyL2xvY2FsL0dyZWF0U1BOL2Jpbi9EU1BOLVRvb2wgLWxvYWQgXCIvaG9tZS91c2VyL1VOSVRPL2Fubm8zL3ZwYy9jb25zZWduZS8zL2Rla2tlcl9XTi1DVEwgbW9kZWwgY2hlY2tpbmcgb2YgVW5mb2xkaW5nIG9mIENQTi5zb2x1dGlvbi9VbmZvbGRpbmcgb2YgQ1BOXCIgLWxvYWQtYm5kIC1pbHAtYm5kIiAnCnQAohtbMW0bWzRtTE9BRElORyBQRVRSSSBORVQgL2hvbWUvdXNlci9VTklUTy9hbm5vMy92cGMvY29uc2VnbmUvMy9kZWtrZXJfV04tQ1RMIG1vZGVsIGNoZWNraW5nIG9mIFVuZm9sZGluZyBvZiBDUE4uc29sdXRpb24vVW5mb2xkaW5nIG9mIENQTiAobmV0L2RlZikuLi4bWzIybRtbMjRtCnQAD01BUktJTkcgUEFSOiAwCnQAEFBMQUNFUzogICAgICAyNAp0AA9SQVRFIFBBUjogICAgMAp0ABBUUkFOU0lUSU9OUzogMjAKdAAPTUVBU1VSRVM6ICAgIDAKdAAoTE9BRElORyBUSU1FOiBbVXNlciAwLjAwMHMsIFN5cyAwLjAwMHNdCnQAAQp0AAEKdAAVTE9BRElORyBCTkQgRklMRSAuLi4KdAAlQ09NUFVUSU5HIFBMQUNFIEJPVU5EUyBVU0lORyBJTFAgLi4uCnQAGEFsbCBwbGFjZXMgYXJlIGJvdW5kZWQuCnEAfgAkdACqG1swbUVYRUM6IC91c3IvbG9jYWwvR3JlYXRTUE4vYmluL1JHTUVERDMgIi9ob21lL3VzZXIvVU5JVE8vYW5ubzMvdnBjL2NvbnNlZ25lLzMvZGVra2VyX1dOLUNUTCBtb2RlbCBjaGVja2luZyBvZiBVbmZvbGRpbmcgb2YgQ1BOLnNvbHV0aW9uL1VuZm9sZGluZyBvZiBDUE4iIC1NRVRBICAtYyAtQwp0ACBSYW5kb20gc2VlZHM6IDE1ODkxMDY1OTkgNDg1NTM0CnQAUD09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KdAARR3JlYXRTUE4vTWVkZGx5Lgp0ADggIENvcHlyaWdodCAoQykgMTk4Ny0yMDE4LCBVbml2ZXJzaXR5IG9mIFRvcmlubywgSXRhbHkuCnQAMSAgU2VuZCBmaWxlcyBuZXRuYW1lLm5ldCwgLmRlZiB0byBlLW1haWwgYWRkcmVzcwp0ACsgIGJlY2N1dGlAZGkudW5pdG8uaXQgaWYgeW91IGZpbmQgYW55IGJ1Zy4KdABQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQp0AB9CYXNlZCBvbiBNRURETFkgdmVyc2lvbiAwLjE2LjAKdABGICBDb3B5cmlnaHQgKEMpIDIwMDksIElvd2EgU3RhdGUgVW5pdmVyc2l0eSBSZXNlYXJjaCBGb3VuZGF0aW9uLCBJbmMuCnQAKSAgd2Vic2l0ZTogaHR0cDovL21lZGRseS5zb3VyY2Vmb3JnZS5uZXQKdABQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQp0AClVc2luZyBwZXItZXZlbnQgc2F0dXJhdGlvbiAoc2F0LXByZWdlbikuCnQAG1VzaW5nIGZhc3QgTlNGIGdlbmVyYXRpb24uCnQAElByb2Nlc3MgSUQ6IDMxNDkwCnQAfU1PREVMIE5BTUU6IC9ob21lL3VzZXIvVU5JVE8vYW5ubzMvdnBjL2NvbnNlZ25lLzMvZGVra2VyX1dOLUNUTCBtb2RlbCBjaGVja2luZyBvZiBVbmZvbGRpbmcgb2YgQ1BOLnNvbHV0aW9uL1VuZm9sZGluZyBvZiBDUE4KdAAdICAyNCBwbGFjZXMsIDIwIHRyYW5zaXRpb25zLgp0ACdVc2VkIE1lbW9yeSBmb3IgZW5jb2RpbmcgbmV0OiA1NjA0NjBLQgp0AIdPcGVuaW5nIGZpbGU6IC9ob21lL3VzZXIvVU5JVE8vYW5ubzMvdnBjL2NvbnNlZ25lLzMvZGVra2VyX1dOLUNUTCBtb2RlbCBjaGVja2luZyBvZiBVbmZvbGRpbmcgb2YgQ1BOLnNvbHV0aW9uL1VuZm9sZGluZyBvZiBDUE4uYm5kIE9LLgp0AIpPcGVuaW5nIGZpbGU6IC9ob21lL3VzZXIvVU5JVE8vYW5ubzMvdnBjL2NvbnNlZ25lLzMvZGVra2VyX1dOLUNUTCBtb2RlbCBjaGVja2luZyBvZiBVbmZvbGRpbmcgb2YgQ1BOLnNvbHV0aW9uL1VuZm9sZGluZyBvZiBDUE4uaWxwYm5kIE9LLgp0ABBJTlBVVCBBUkNTOiAgMzAKdAAQT1VUUFVUIEFSQ1M6IDMwCnQAD0lOSElCIEFSQ1M6ICAwCnQAD1RFU1QgQVJDUzogICA2CnQAEFBMQUNFUzogICAgICAyNAp0ABBUUkFOU0lUSU9OUzogMjAKdAAPSU5WQVJJQU5UUzogIDcKdAAPUC1TRU1JRkxPV1M6IDkKdAAWTUFYIElOVkFSSUFOVCBDQVJEOiAxCnQAAQp0AFA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IFZBUklBQkxFIE9SREVSID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CnQAPFZhcmlhYmxlIG9yZGVyIG1ldGhvZDogTWV0YS1oZXVyaXN0aWMgdXNpbmcgd2VpZ2h0ZWQgc2NvcmUuCnQAUSAgTUVUSE9EICAgICAgICAgICAgICBTQ09SRSAgICAgICAgU1dJUiAgICAgICBTT1VQUyBESVNDT1VOVCAgV0VJR0hUICAgICAgIFRJTUUgCnQAVSAgU0xPICAgICAgICAgICAgICAgMzQ1LjU3NiAgICAgICAgIDMwOCAgICAgICAgIDE1MiAgICAgICAgMSAgIDEuMTIyICAgMC4wMDAxOTUgc2VjLgp0AFUgIFNMTytGb3JjZSAgICAgICAgICAgOTEuNTIgICAgICAgICAxMDQgICAgICAgICAxMDQgICAgICAgIDEgICAgMC44OCAgICAgIDllLTA1IHNlYy4KdABVICBTTE8tMTYgICAgICAgICAgICAyNDUuNzg0ICAgICAgICAgMzA4ICAgICAgICAgMTUyICAgICAgICAxICAgMC43OTggICAwLjAwMDEyNCBzZWMuCnQAVSAgU0xPLTE2K0ZvcmNlICAgICAgIDk0Ljc0NCAgICAgICAgIDEwNCAgICAgICAgIDEwNCAgICAgICAgMSAgIDAuOTExICAgIDcuMWUtMDUgc2VjLgp0AFUgIFRPVjIgICAgICAgICAgICAgIDI2MS43OTIgICAgICAgICAyODggICAgICAgICAxMjggICAgICAgIDEgICAwLjkwOSAgICA3LjllLTA1IHNlYy4KdABVICBUT1YyK0ZvcmNlICAgICAgICAgMTIxLjU5ICAgICAgICAgMTA1ICAgICAgICAgMTA1ICAgICAgICAxICAgMS4xNTggICAgNy41ZS0wNSBzZWMuCnQAVSAgTk9BQ0syICAgICAgICAgICAgNjYxLjYzNSAgICAgICAgIDU4NSAgICAgICAgIDE4OCAgICAgICAgMSAgIDEuMTMxICAgIDUuNWUtMDUgc2VjLgp0AFUgIE5PQUNLMitGb3JjZSAgICAgICAxMDEuOTIgICAgICAgICAxMDQgICAgICAgICAxMDQgICAgICAgIDEgICAgMC45OCAgICA4LjZlLTA1IHNlYy4KdABVICBBQ00gICAgICAgICAgICAgICAyMzAuNTA4ICAgICAgICAgMjI4ICAgICAgICAgMTE2ICAgICAgICAxICAgMS4wMTEgICAwLjAwMDEyOCBzZWMuCnQAVSAgQUNNK0ZvcmNlICAgICAgICAgIDEzNC4xOSAgICAgICAgIDEwNSAgICAgICAgIDEwNSAgICAgICAgMSAgIDEuMjc4ICAgMC4wMDAxMDkgc2VjLgp0AFUgIENNMiAgICAgICAgICAgICAgICAgMjkwLjcgICAgICAgICAyMjggICAgICAgICAxMTYgICAgICAgIDEgICAxLjI3NSAgIDAuMDAwMTcyIHNlYy4KdABVICBDTTIrRm9yY2UgICAgICAgICAxMTUuMzk1ICAgICAgICAgMTA1ICAgICAgICAgMTA1ICAgICAgICAxICAgMS4wOTkgICAwLjAwMDEwNyBzZWMuCnQAVSAgUCAgICAgICAgICAgICAgICAgNDUyLjExOSAgICAgICAgIDQzMSAgICAgICAgIDIxMCAgICAgICAgMSAgIDEuMDQ5ICAgIDQuMmUtMDUgc2VjLgp0AFUgIEdQICAgICAgICAgICAgICAgIDE3Ny45MzkgICAgICAgICAxNTMgICAgICAgICAxMTUgICAgICAgIDEgICAxLjE2MyAgIDAuMDAwMTU2IHNlYy4KdABVICBHUCtGb3JjZSAgICAgICAgICAxOTQuNjI1ICAgICAgICAgMTczICAgICAgICAgMTE3ICAgICAgICAxICAgMS4xMjUgICAgOC4zZS0wNSBzZWMuCnQAPU1ldGEtaGV1cmlzdGljOiBzZWxlY3RpbmcgbWV0aG9kIFNMTytGb3JjZSB3aXRoIHNjb3JlOiA5MS41Mgp0AClUaW1lIHRvIGNvbXB1dGUgdmFyaWFibGUgb3JkZXI6IDAuMDAyMjkxCnQAAQp0AFA9PT09PT09PT09PT09PT09PT09PT09PT09IFNUQVJUIEZJUklORyBSVUxFUyBFTkNPRElORyA9PT09PT09PT09PT09PT09PT09PT09PT09CnQALEVuY29kZWQgMjAgdHJhbnNpdGlvbiBpbiAxIHByaW9yaXR5IGdyb3Vwcy4KdAAhVGltZSB0byBidWlsZCBhbGwgTlNGczogMC4wMDIwNDQKdAABCnQAUD09PT09PT09PT09PT09PT09PT09PT09PT0gUkVBQ0hBQklMSVRZIFNFVCBHRU5FUkFUSU9OID09PT09PT09PT09PT09PT09PT09PT09PT0KdAAVU3BsaXQ6IFNwbGl0U3VidHJhY3QKdAAdUlMgZ2VuZXJhdGlvbiB0aW1lOiAwLjAwMDkyMwp0AB1Db21wdXRpbmcgdmFyaWFibGUgYm91bmRzLi4uCnQAAQp0AFA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBNRU1PUlkgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CnQAKSBUb3RhbCBNZW1vcnkgVXNlZDogICAgICAgNTYwNDYwIEtCeXRlcy4KdAABCnQAUD09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gQ1RMIEVWQUxVQVRJT04gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KdAABCnQAYFByb2Nlc3Npbmc6IChub3QgRSBGIChub3QgKChub3QgKGF3YWl0X1AgPSAxKSkgb3IgKG5vdCBFIEcgKG5vdCAoY3JpdGljYWxfUCA9IDEpKSkpKSkgIC0+ICBib29sCnQADkV2YWw6IGF3YWl0X1AKdAAUICAgICAgMC4wMDAxMTMgc2VjLgp0ABRFdmFsOiAoYXdhaXRfUCA9IDEpCnQAHyAgICAgIDAuMDAwMzg1IHNlYy4gIGNhcmQgPSAxNgp0ABpFdmFsOiAobm90IChhd2FpdF9QID0gMSkpCnQAHyAgICAgIDAuMDAwMzE2IHNlYy4gIGNhcmQgPSA5Ngp0ABFFdmFsOiBjcml0aWNhbF9QCnQAFCAgICAgIDAuMDAwMDA4IHNlYy4KdAAXRXZhbDogKGNyaXRpY2FsX1AgPSAxKQp0AB8gICAgICAwLjAwMDA0MCBzZWMuICBjYXJkID0gMTAKdAAdRXZhbDogKG5vdCAoY3JpdGljYWxfUCA9IDEpKQp0ACAgICAgICAwLjAwMDA1MSBzZWMuICBjYXJkID0gMTAyCnQAIUV2YWw6IEUgRyAobm90IChjcml0aWNhbF9QID0gMSkpCnQAIUVHOiBzdGVwPTEsICBTQVQgc2l6ZT0xMDEuMDAwMDAwCnQAIEVHOiBzdGVwPTIsICBTQVQgc2l6ZT05OC4wMDAwMDAKdAAgRUc6IHN0ZXA9MywgIFNBVCBzaXplPTkzLjAwMDAwMAp0ACBFRzogc3RlcD00LCAgU0FUIHNpemU9ODkuMDAwMDAwCnQAIEVHOiBzdGVwPTUsICBTQVQgc2l6ZT04Ny4wMDAwMDAKdAAgRUc6IHN0ZXA9NiwgIFNBVCBzaXplPTg2LjAwMDAwMAp0ACBFRzogc3RlcD03LCAgU0FUIHNpemU9ODYuMDAwMDAwCnQAG1IyID0gMTAwMiBpbiA3IGl0ZXJhdGlvbnMuCnQAHyAgICAgIDAuMDAxNzQwIHNlYy4gIGNhcmQgPSA4Ngp0ACdFdmFsOiAobm90IEUgRyAobm90IChjcml0aWNhbF9QID0gMSkpKQp0AB8gICAgICAwLjAwMDA2MCBzZWMuICBjYXJkID0gMjYKdABARXZhbDogKChub3QgKGF3YWl0X1AgPSAxKSkgb3IgKG5vdCBFIEcgKG5vdCAoY3JpdGljYWxfUCA9IDEpKSkpCnQAHyAgICAgIDAuMDAwMDU4IHNlYy4gIGNhcmQgPSA5OAp0AEZFdmFsOiAobm90ICgobm90IChhd2FpdF9QID0gMSkpIG9yIChub3QgRSBHIChub3QgKGNyaXRpY2FsX1AgPSAxKSkpKSkKdAAfICAgICAgMC4wMDAwNjkgc2VjLiAgY2FyZCA9IDE0CnQASkV2YWw6IEUgRiAobm90ICgobm90IChhd2FpdF9QID0gMSkpIG9yIChub3QgRSBHIChub3QgKGNyaXRpY2FsX1AgPSAxKSkpKSkKdAAwICAgICAgMTMgc3RlcHM6ICAgICAgIDAuMDAzNjIwIHNlYy4gIGNhcmQgPSAxMzgKdABQRXZhbDogKG5vdCBFIEYgKG5vdCAoKG5vdCAoYXdhaXRfUCA9IDEpKSBvciAobm90IEUgRyAobm90IChjcml0aWNhbF9QID0gMSkpKSkpKQp0AB8gICAgICAwLjAwMDEwOSBzZWMuICBjYXJkID0gMTgKdAAyLS0tIEFHICgjYXdhaXRfUD09MSAtPiBBRiAoI2NyaXRpY2FsX1AgPT0gMSkpIC0tLQp0ABlGb3JtdWxhIG5hbWU6IE1FQVNVUkUwICAKdAAWCUV2YWx1YXRpb246IGZhbHNlICAgCnQAJwlTYXQtc2V0IGdlbmVyYXRpb24gdGltZTogMC4wMDcxMTggc2VjCnQAHwlFdmFsdWF0aW9uIHRpbWU6IDAuMDA3MTM1IHNlYwp0AAEKdAAcR2VuZXJhdGVkIGNvdW50ZXItZXhhbXBsZTogCnQAIxtbMVgbWzMxbSBQUk9DRVNTIElOVEVSUlVQVEVELhtbMG0KdAAtG1sxWBtbMzFtIERJRCBOT1QgQ09NUExFVEUgVEhFIFNPTFVUSU9OLhtbMG0KeHNxAH4AAHcEAAAAnHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFxAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfcQB+AJ9xAH4An3EAfgCfeA</document-log>
|
|
</resource-list>
|
|
</project>
|