<mxfile host="orrery" agent="orrery" type="device">
<diagram id="orrery" name="Order lifecycle">
<mxGraphModel dx="474" dy="1185" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" pageWidth="474" pageHeight="1185" background="#eef2f6" math="0" shadow="0">
<root><mxCell id="0"/><mxCell id="1" parent="0"/>
<mxCell id="title" value="Order lifecycle" style="text;html=1;align=left;verticalAlign=top;fontSize=20;fontStyle=1;fontColor=#54585b;fontFamily=Inter,Helvetica,Arial,sans-serif;spacing=0;" vertex="1" parent="1"><mxGeometry x="28" y="24" width="162.79" height="25" as="geometry"/></mxCell>
<mxCell id="subtitle" value="UML state machine: transitions read event [guard] / action" style="text;html=1;align=left;verticalAlign=top;fontSize=13;fontColor=#55595b;fontFamily=Inter,Helvetica,Arial,sans-serif;spacing=0;" vertex="1" parent="1"><mxGeometry x="28" y="53" width="377.81" height="16.9" as="geometry"/></mxCell>
<mxCell id="n-start" value="" style="ellipse;perimeter=ellipsePerimeter;aspect=fixed;verticalLabelPosition=bottom;verticalAlign=top;align=center;whiteSpace=nowrap;html=1;fillColor=#8b95a1;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=0;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="252" y="96" width="22" height="22" as="geometry"/></mxCell>
<mxCell id="n-created" value="Created" style="rounded=1;absoluteArcSize=1;arcSize=24;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=1;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="209" y="166" width="108" height="52" as="geometry"/></mxCell>
<mxCell id="n-paid" value="Paid" style="rounded=1;absoluteArcSize=1;arcSize=24;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=1;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="81" y="335" width="108" height="52" as="geometry"/></mxCell>
<mxCell id="n-packed" value="Packed" style="rounded=1;absoluteArcSize=1;arcSize=24;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=1;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="28" y="509" width="108" height="52" as="geometry"/></mxCell>
<mxCell id="n-shipped" value="Shipped" style="rounded=1;absoluteArcSize=1;arcSize=24;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=1;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="28" y="678" width="108" height="52" as="geometry"/></mxCell>
<mxCell id="n-delivered" value="Delivered" style="rounded=1;absoluteArcSize=1;arcSize=24;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=1;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="28" y="847" width="108" height="52" as="geometry"/></mxCell>
<mxCell id="n-cancelled" value="Cancelled" style="rounded=1;absoluteArcSize=1;arcSize=24;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=1;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="227" y="335" width="108" height="52" as="geometry"/></mxCell>
<mxCell id="n-refunded" value="Refunded" style="rounded=1;absoluteArcSize=1;arcSize=24;whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=1;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="79" y="1031" width="108" height="52" as="geometry"/></mxCell>
<mxCell id="n-end" value="" style="shape=endState;perimeter=ellipsePerimeter;aspect=fixed;verticalLabelPosition=bottom;verticalAlign=top;align=center;whiteSpace=nowrap;html=1;fillColor=#8b95a1;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=0;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="55" y="1131" width="26" height="26" as="geometry"/></mxCell>
<mxCell id="n-closed" value="" style="shape=endState;perimeter=ellipsePerimeter;aspect=fixed;verticalLabelPosition=bottom;verticalAlign=top;align=center;whiteSpace=nowrap;html=1;fillColor=#8b95a1;strokeColor=#8b95a1;fontColor=#54585b;fontSize=13;fontStyle=0;fontFamily=Inter,Helvetica,Arial,sans-serif;" vertex="1" parent="1"><mxGeometry x="268" y="435" width="26" height="26" as="geometry"/></mxCell>
<mxCell id="e1" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-start" target="n-created"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="e2" value="pay [card ok] / charge" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.333;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-created" target="n-paid"><mxGeometry relative="1" as="geometry"><Array as="points"><mxPoint x="245" y="233"/><mxPoint x="135" y="233"/></Array></mxGeometry></mxCell>
<mxCell id="e3" value="edit / recalc total" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.87;exitY=0;exitDx=0;exitDy=0;exitPerimeter=0;entryX=1;entryY=0.269;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-created" target="n-created"><mxGeometry relative="1" as="geometry"><Array as="points"><mxPoint x="303" y="148"/><mxPoint x="335" y="148"/><mxPoint x="335" y="180"/></Array></mxGeometry></mxCell>
<mxCell id="e4" value="cancel / release stock" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.667;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-created" target="n-cancelled"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="e5" value="pick / print label" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.333;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-paid" target="n-packed"><mxGeometry relative="1" as="geometry"><Array as="points"><mxPoint x="117" y="402"/><mxPoint x="82" y="402"/></Array></mxGeometry></mxCell>
<mxCell id="e6" value="cancel [not packed] / refund" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.667;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.667;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-paid" target="n-refunded"><mxGeometry relative="1" as="geometry"><Array as="points"><mxPoint x="153" y="402"/><mxPoint x="253" y="402"/><mxPoint x="253" y="998"/><mxPoint x="151" y="998"/></Array></mxGeometry></mxCell>
<mxCell id="e7" value="hand over / send tracking" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-packed" target="n-shipped"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="e8" value="deliver / notify buyer" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-shipped" target="n-delivered"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="e9" value="return [within 30 days] / refund" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.667;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.333;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-delivered" target="n-refunded"><mxGeometry relative="1" as="geometry"><Array as="points"><mxPoint x="100" y="914"/><mxPoint x="91" y="914"/><mxPoint x="91" y="998"/><mxPoint x="115" y="998"/></Array></mxGeometry></mxCell>
<mxCell id="e10" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.333;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.346;entryY=0.024;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-delivered" target="n-end"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="e11" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-cancelled" target="n-closed"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="e12" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;html=1;endArrow=open;endFill=1;endSize=6;startArrow=none;startFill=1;startSize=6;strokeColor=#aaaeb2;strokeWidth=1.5;dashed=0;fontColor=#525759;fontSize=11;fontFamily=Inter,Helvetica,Arial,sans-serif;labelBackgroundColor=#eef2f6;exitX=0.5;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.654;entryY=0.024;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="n-refunded" target="n-end"><mxGeometry relative="1" as="geometry"><Array as="points"><mxPoint x="133" y="1098"/><mxPoint x="72" y="1098"/></Array></mxGeometry></mxCell>
</root></mxGraphModel></diagram></mxfile>
