thesis: implemented most feedback
Some checks are pending
CI / Julia 1.10 - ubuntu-latest - x64 - (push) Waiting to run
CI / Julia 1.6 - ubuntu-latest - x64 - (push) Waiting to run
CI / Julia pre - ubuntu-latest - x64 - (push) Waiting to run

This commit is contained in:
2025-06-28 17:44:45 +02:00
parent f25919dc06
commit 5e42668e1a
31 changed files with 694 additions and 669 deletions

View File

@ -1,172 +1,172 @@
<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:138.0) Gecko/20100101 Firefox/138.0" version="27.1.1">
<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:140.0) Gecko/20100101 Firefox/140.0" version="27.1.6">
<diagram name="Page-1" id="6PRo98IcIigsbWnrE1av">
<mxGraphModel dx="1390" dy="791" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
<mxGraphModel dx="2066" dy="1147" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="Eoor0cZiH70DILZYRCY1-1" value="Expression Evaluator" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="560" y="50" width="100" height="40" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-1" value="Expression Evaluator" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="360" y="100" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-2" value="Interpreter" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="1000" y="50" width="100" height="40" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-2" value="CPU-Side" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="800" y="100" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-3" value="Frontend" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="740" y="50" width="90" height="40" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-3" value="Frontend" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="540" y="100" width="90" height="40" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-4" value="GPU" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="870" y="50" width="80" height="40" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-4" value="GPU-Side" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="670" y="100" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-5" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" vertex="1" parent="1">
<mxGeometry x="605" y="90" width="10" height="560" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-5" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" parent="1" vertex="1">
<mxGeometry x="405" y="140" width="10" height="560" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-6" value="" style="html=1;verticalAlign=bottom;startArrow=circle;startFill=1;endArrow=open;startSize=6;endSize=8;curved=0;rounded=0;" edge="1" parent="1" target="Eoor0cZiH70DILZYRCY1-5">
<mxCell id="Eoor0cZiH70DILZYRCY1-6" value="" style="html=1;verticalAlign=bottom;startArrow=circle;startFill=1;endArrow=open;startSize=6;endSize=8;curved=0;rounded=0;" parent="1" target="Eoor0cZiH70DILZYRCY1-5" edge="1">
<mxGeometry x="0.1057" width="80" relative="1" as="geometry">
<mxPoint x="500" y="130" as="sourcePoint" />
<mxPoint x="585" y="120.00000000000011" as="targetPoint" />
<mxPoint x="300" y="180" as="sourcePoint" />
<mxPoint x="385" y="170.0000000000001" as="targetPoint" />
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-7" value="&lt;div&gt;interpret(exprs,&amp;nbsp;&lt;/div&gt;&lt;div&gt;vars, params)&lt;/div&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="Eoor0cZiH70DILZYRCY1-6">
<mxCell id="Eoor0cZiH70DILZYRCY1-7" value="&lt;div&gt;interpret(exprs,&amp;nbsp;&lt;/div&gt;&lt;div&gt;vars, params)&lt;/div&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="Eoor0cZiH70DILZYRCY1-6" vertex="1" connectable="0">
<mxGeometry x="-0.0676" y="1" relative="1" as="geometry">
<mxPoint x="2" y="-19" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-8" value="loop" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;" vertex="1" parent="1">
<mxGeometry x="500" y="150" width="330" height="90" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-8" value="loop" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;" parent="1" vertex="1">
<mxGeometry x="300" y="200" width="330" height="90" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-9" value="&lt;font style=&quot;font-size: 9px;&quot;&gt;[for each expression]&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="500" y="180" width="90" height="20" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-9" value="&lt;font style=&quot;font-size: 9px;&quot;&gt;[for each expression]&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="300" y="230" width="90" height="20" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-13" value="" style="endArrow=none;dashed=1;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-14" target="Eoor0cZiH70DILZYRCY1-3">
<mxCell id="Eoor0cZiH70DILZYRCY1-13" value="" style="endArrow=none;dashed=1;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-14" target="Eoor0cZiH70DILZYRCY1-3" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="765" y="140" as="sourcePoint" />
<mxPoint x="750" y="250" as="targetPoint" />
<mxPoint x="565" y="190" as="sourcePoint" />
<mxPoint x="550" y="300" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-14" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" vertex="1" parent="1">
<mxGeometry x="780" y="170" width="10" height="40" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-14" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" parent="1" vertex="1">
<mxGeometry x="580" y="220" width="10" height="40" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-15" value="expr_to_postfix()" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;entryX=0;entryY=0;entryDx=0;entryDy=5;" edge="1" target="Eoor0cZiH70DILZYRCY1-14" parent="1" source="Eoor0cZiH70DILZYRCY1-5">
<mxCell id="Eoor0cZiH70DILZYRCY1-15" value="expr_to_postfix()" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;entryX=0;entryY=0;entryDx=0;entryDy=5;" parent="1" source="Eoor0cZiH70DILZYRCY1-5" target="Eoor0cZiH70DILZYRCY1-14" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="690" y="175" as="sourcePoint" />
<mxPoint x="490" y="225" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-16" value="intermediate_representation" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;exitX=0;exitY=1;exitDx=0;exitDy=-5;" edge="1" source="Eoor0cZiH70DILZYRCY1-14" parent="1" target="Eoor0cZiH70DILZYRCY1-5">
<mxCell id="Eoor0cZiH70DILZYRCY1-16" value="intermediate_representation" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;exitX=0;exitY=1;exitDx=0;exitDy=-5;" parent="1" source="Eoor0cZiH70DILZYRCY1-14" target="Eoor0cZiH70DILZYRCY1-5" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="690" y="245" as="targetPoint" />
<mxPoint x="490" y="295" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-17" value="" style="endArrow=none;dashed=1;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-24" target="Eoor0cZiH70DILZYRCY1-2">
<mxCell id="Eoor0cZiH70DILZYRCY1-17" value="" style="endArrow=none;dashed=1;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-24" target="Eoor0cZiH70DILZYRCY1-2" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="1050" y="290" as="sourcePoint" />
<mxPoint x="1049.66" y="150" as="targetPoint" />
<mxPoint x="850" y="340" as="sourcePoint" />
<mxPoint x="849.6600000000001" y="200" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-18" value="" style="endArrow=none;dashed=1;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-34" target="Eoor0cZiH70DILZYRCY1-4">
<mxCell id="Eoor0cZiH70DILZYRCY1-18" value="" style="endArrow=none;dashed=1;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-34" target="Eoor0cZiH70DILZYRCY1-4" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="910" y="510" as="sourcePoint" />
<mxPoint x="940.3399999999999" y="110" as="targetPoint" />
<mxPoint x="710" y="560" as="sourcePoint" />
<mxPoint x="740.3399999999999" y="160" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-20" value="send_data(intermediate_representations)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-5">
<mxCell id="Eoor0cZiH70DILZYRCY1-20" value="send_data(intermediate_representations)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-5" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="850" y="265" as="sourcePoint" />
<mxPoint x="910" y="265" as="targetPoint" />
<mxPoint x="650" y="315" as="sourcePoint" />
<mxPoint x="710" y="315" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-22" value="send_data(variables)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" edge="1" parent="1">
<mxCell id="Eoor0cZiH70DILZYRCY1-22" value="send_data(variables)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" parent="1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="615" y="299.31" as="sourcePoint" />
<mxPoint x="910" y="299" as="targetPoint" />
<mxPoint x="415" y="349.31" as="sourcePoint" />
<mxPoint x="710" y="349" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-23" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-14">
<mxCell id="Eoor0cZiH70DILZYRCY1-23" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-14" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="795" y="180" as="sourcePoint" />
<mxPoint x="785" y="650" as="targetPoint" />
<mxPoint x="595" y="230" as="sourcePoint" />
<mxPoint x="585" y="700" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-24" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" vertex="1" parent="1">
<mxGeometry x="1045" y="350" width="10" height="240" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-24" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" parent="1" vertex="1">
<mxGeometry x="845" y="400" width="10" height="240" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-25" value="interpret(nr_expressions, parameters)" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;" edge="1" parent="1">
<mxCell id="Eoor0cZiH70DILZYRCY1-25" value="interpret(nr_expressions, parameters)" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;" parent="1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="615" y="350.16" as="sourcePoint" />
<mxPoint x="1045" y="350.16" as="targetPoint" />
<mxPoint x="415" y="400.16" as="sourcePoint" />
<mxPoint x="845" y="400.16" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-26" value="loop" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;" vertex="1" parent="1">
<mxGeometry x="500" y="320" width="600" height="290" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-26" value="loop" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;" parent="1" vertex="1">
<mxGeometry x="300" y="370" width="600" height="290" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-27" value="&lt;div&gt;&lt;font style=&quot;font-size: 9px;&quot;&gt;[for each&amp;nbsp;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size: 9px;&quot;&gt;optimisation step]&lt;/font&gt;&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="500" y="350" width="90" height="30" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-27" value="&lt;div&gt;&lt;font style=&quot;font-size: 9px;&quot;&gt;[for each&amp;nbsp;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size: 9px;&quot;&gt;optimisation step]&lt;/font&gt;&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="300" y="400" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-28" value="send_data(parameters)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-24">
<mxCell id="Eoor0cZiH70DILZYRCY1-28" value="send_data(parameters)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-24" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="680" y="640" as="sourcePoint" />
<mxPoint x="910" y="390" as="targetPoint" />
<mxPoint x="480" y="690" as="sourcePoint" />
<mxPoint x="710" y="440" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-29" value="send_data(meta)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-24">
<mxCell id="Eoor0cZiH70DILZYRCY1-29" value="send_data(meta)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-24" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="1065" y="470" as="sourcePoint" />
<mxPoint x="910" y="420" as="targetPoint" />
<mxPoint x="865" y="520" as="sourcePoint" />
<mxPoint x="710" y="470" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-30" value="loop" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;" vertex="1" parent="1">
<mxGeometry x="810" y="440" width="270" height="60" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-30" value="loop" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;" parent="1" vertex="1">
<mxGeometry x="610" y="490" width="270" height="60" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-32" value="&lt;font style=&quot;font-size: 9px;&quot;&gt;[for each expression]&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="810" y="470" width="90" height="20" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-32" value="&lt;font style=&quot;font-size: 9px;&quot;&gt;[for each expression]&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="610" y="520" width="90" height="20" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-33" value="dispatch kernel" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-24">
<mxCell id="Eoor0cZiH70DILZYRCY1-33" value="dispatch kernel" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-24" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="1045" y="469.31" as="sourcePoint" />
<mxPoint x="910" y="469.31" as="targetPoint" />
<mxPoint x="845" y="519.31" as="sourcePoint" />
<mxPoint x="710" y="519.31" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-34" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" vertex="1" parent="1">
<mxGeometry x="905" y="520" width="10" height="30" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-34" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" parent="1" vertex="1">
<mxGeometry x="705" y="570" width="10" height="30" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-35" value="read_results()" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;entryX=1;entryY=0;entryDx=0;entryDy=5;" edge="1" target="Eoor0cZiH70DILZYRCY1-34" parent="1" source="Eoor0cZiH70DILZYRCY1-24">
<mxCell id="Eoor0cZiH70DILZYRCY1-35" value="read_results()" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;entryX=1;entryY=0;entryDx=0;entryDy=5;" parent="1" source="Eoor0cZiH70DILZYRCY1-24" target="Eoor0cZiH70DILZYRCY1-34" edge="1">
<mxGeometry x="-0.0027" relative="1" as="geometry">
<mxPoint x="1070" y="675" as="sourcePoint" />
<mxPoint x="870" y="725" as="sourcePoint" />
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-36" value="result_matrix" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;exitX=1;exitY=1;exitDx=0;exitDy=-5;" edge="1" source="Eoor0cZiH70DILZYRCY1-34" parent="1" target="Eoor0cZiH70DILZYRCY1-24">
<mxCell id="Eoor0cZiH70DILZYRCY1-36" value="result_matrix" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;exitX=1;exitY=1;exitDx=0;exitDy=-5;" parent="1" source="Eoor0cZiH70DILZYRCY1-34" target="Eoor0cZiH70DILZYRCY1-24" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="1070" y="705" as="targetPoint" />
<mxPoint x="870" y="755" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-37" value="result_matrix" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;" edge="1" parent="1">
<mxCell id="Eoor0cZiH70DILZYRCY1-37" value="result_matrix" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;" parent="1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="615" y="580" as="targetPoint" />
<mxPoint x="1045" y="580" as="sourcePoint" />
<mxPoint x="415" y="630" as="targetPoint" />
<mxPoint x="845" y="630" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-38" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-34">
<mxCell id="Eoor0cZiH70DILZYRCY1-38" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-34" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="920" y="530" as="sourcePoint" />
<mxPoint x="910" y="650" as="targetPoint" />
<mxPoint x="720" y="580" as="sourcePoint" />
<mxPoint x="710" y="700" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-39" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" edge="1" parent="1" source="Eoor0cZiH70DILZYRCY1-24">
<mxCell id="Eoor0cZiH70DILZYRCY1-39" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" parent="1" source="Eoor0cZiH70DILZYRCY1-24" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="1020" y="640" as="sourcePoint" />
<mxPoint x="1050" y="650" as="targetPoint" />
<mxPoint x="820" y="690" as="sourcePoint" />
<mxPoint x="850" y="700" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-40" value="" style="ellipse;html=1;shape=endState;fillColor=#000000;strokeColor=default;" vertex="1" parent="1">
<mxGeometry x="500" y="630" width="20" height="20" as="geometry" />
<mxCell id="Eoor0cZiH70DILZYRCY1-40" value="" style="ellipse;html=1;shape=endState;fillColor=#000000;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="300" y="680" width="20" height="20" as="geometry" />
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-41" value="" style="endArrow=open;html=1;rounded=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;dashed=1;endFill=0;" edge="1" target="Eoor0cZiH70DILZYRCY1-40" parent="1">
<mxCell id="Eoor0cZiH70DILZYRCY1-41" value="" style="endArrow=open;html=1;rounded=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;dashed=1;endFill=0;" parent="1" target="Eoor0cZiH70DILZYRCY1-40" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="605" y="640" as="sourcePoint" />
<mxPoint x="580" y="720" as="targetPoint" />
<mxPoint x="405" y="690" as="sourcePoint" />
<mxPoint x="380" y="770" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="Eoor0cZiH70DILZYRCY1-42" value="result_matrix" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="Eoor0cZiH70DILZYRCY1-41">
<mxCell id="Eoor0cZiH70DILZYRCY1-42" value="result_matrix" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="Eoor0cZiH70DILZYRCY1-41" vertex="1" connectable="0">
<mxGeometry x="0.1271" relative="1" as="geometry">
<mxPoint x="8" y="-10" as="offset" />
</mxGeometry>