<?xml version="1.0" encoding="UTF-8"?><graphml xmlns="http://graphml.graphdrawing.org/xmlns" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd" xmlns:jGraph="http://www.jgraph.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <key id="vertex_label" for="node" attr.name="nodeData" attr.type="string"/>
    <key id="edge_label" for="edge" attr.name="edgeData" attr.type="string"/>
    <key id="fluxtion.metaVersion" for="graph" attr.name="fluxtion.metaVersion" attr.type="string"/>
    <key id="fluxtion.sourceFingerprint" for="graph" attr.name="fluxtion.sourceFingerprint" attr.type="string"/>
    <key id="fluxtion.toolchainVersion" for="graph" attr.name="fluxtion.toolchainVersion" attr.type="string"/>
    <key id="fluxtion.nodeCount" for="graph" attr.name="fluxtion.nodeCount" attr.type="int"/>
    <key id="fluxtion.authoredNodeCount" for="graph" attr.name="fluxtion.authoredNodeCount" attr.type="int"/>
    <key id="fluxtion.kind" for="node" attr.name="fluxtion.kind" attr.type="string"/>
    <key id="fluxtion.class" for="node" attr.name="fluxtion.class" attr.type="string"/>
    <key id="fluxtion.framework" for="node" attr.name="fluxtion.framework" attr.type="boolean"/>
    <key id="fluxtion.auditCapable" for="node" attr.name="fluxtion.auditCapable" attr.type="boolean"/>
    <key id="fluxtion.auditCapableVia" for="node" attr.name="fluxtion.auditCapableVia" attr.type="string"/>
    <key id="fluxtion.callbackKinds" for="node" attr.name="fluxtion.callbackKinds" attr.type="string"/>
    <key id="fluxtion.topologicalRank" for="node" attr.name="fluxtion.topologicalRank" attr.type="int"/>
    <key id="fluxtion.filterIdDefault" for="node" attr.name="fluxtion.filterIdDefault" attr.type="string"/>
    <key id="fluxtion.refKind" for="edge" attr.name="fluxtion.refKind" attr.type="string"/>
    <key id="fluxtion.propagates" for="edge" attr.name="fluxtion.propagates" attr.type="boolean"/>
    <key id="fluxtion.referenceField" for="edge" attr.name="fluxtion.referenceField" attr.type="string"/>
    <key id="fluxtion.handlerMethod" for="edge" attr.name="fluxtion.handlerMethod" attr.type="string"/>
    <key id="fluxtion.filterValue" for="edge" attr.name="fluxtion.filterValue" attr.type="string"/>
    <key id="fluxtion.filterType" for="edge" attr.name="fluxtion.filterType" attr.type="string"/>
    <key id="fluxtion.relationshipCount" for="edge" attr.name="fluxtion.relationshipCount" attr.type="int"/>
    <graph edgedefault="directed">
        <data key="fluxtion.metaVersion">1.0</data>
        <data key="fluxtion.sourceFingerprint">e8879640b9dc536e714089d5f8ca7c25559a84f9434083775167ec635f417b83</data>
        <data key="fluxtion.toolchainVersion">1.0.83</data>
        <data key="fluxtion.nodeCount">15</data>
        <data key="fluxtion.authoredNodeCount">4</data>
        <node id="ClockStrategyEvent">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="&lt;&lt;Event&gt;&gt;&#10;ClockStrategyEvent&#10;class:com.telamin.fluxtion.runtime.time.ClockStrategy$ClockStrategyEvent&#10;"/>
                    <jGraph:Style properties="EVENT"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">EVENT</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.time.ClockStrategy$ClockStrategyEvent</data>
        </node>
        <node id="EventLogControlEvent">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="&lt;&lt;Event&gt;&gt;&#10;EventLogControlEvent&#10;class:com.telamin.fluxtion.runtime.audit.EventLogControlEvent&#10;"/>
                    <jGraph:Style properties="EVENT"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">EVENT</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.audit.EventLogControlEvent</data>
        </node>
        <node id="Order">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="&lt;&lt;Event&gt;&gt;&#10;Order&#10;class:demo.authoring.Order&#10;"/>
                    <jGraph:Style properties="EVENT"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">EVENT</data>
            <data key="fluxtion.class">demo.authoring.Order</data>
        </node>
        <node id="ServiceListener">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="&lt;&lt;ExportService&gt;&gt;&#10;class:com.telamin.fluxtion.runtime.service.ServiceListener&#10;"/>
                    <jGraph:Style properties="EXPORTSERVICE"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">EXPORT_SERVICE</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.service.ServiceListener</data>
        </node>
        <node id="calculation">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="id:calculation&#10;class:demo.authoring.Calculation"/>
                    <jGraph:Style properties="NODE"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">NODE</data>
            <data key="fluxtion.class">demo.authoring.Calculation</data>
            <data key="fluxtion.framework">false</data>
            <data key="fluxtion.auditCapable">true</data>
            <data key="fluxtion.auditCapableVia">baseClass</data>
            <data key="fluxtion.callbackKinds">ON_TRIGGER</data>
            <data key="fluxtion.topologicalRank">7</data>
        </node>
        <node id="callbackDispatcher">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="id:callbackDispatcher&#10;class:com.telamin.fluxtion.runtime.callback.CallbackDispatcherImpl"/>
                    <jGraph:Style properties="NODE"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">NODE</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.callback.CallbackDispatcherImpl</data>
            <data key="fluxtion.framework">true</data>
            <data key="fluxtion.auditCapable">false</data>
            <data key="fluxtion.auditCapableVia">none</data>
            <data key="fluxtion.topologicalRank">0</data>
        </node>
        <node id="clock">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="&lt;&lt;EventHandle&gt;&gt;&#10;id:clock&#10;class:com.telamin.fluxtion.runtime.time.Clock"/>
                    <jGraph:Style properties="EVENTHANDLER"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">EVENT_HANDLER</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.time.Clock</data>
            <data key="fluxtion.framework">true</data>
            <data key="fluxtion.auditCapable">false</data>
            <data key="fluxtion.auditCapableVia">none</data>
            <data key="fluxtion.callbackKinds">INITIALISE,ON_EVENT</data>
            <data key="fluxtion.topologicalRank">1</data>
        </node>
        <node id="context">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="id:context&#10;class:com.telamin.fluxtion.runtime.node.MutableDataFlowContext"/>
                    <jGraph:Style properties="NODE"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">NODE</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.node.MutableDataFlowContext</data>
            <data key="fluxtion.framework">true</data>
            <data key="fluxtion.auditCapable">false</data>
            <data key="fluxtion.auditCapableVia">none</data>
            <data key="fluxtion.topologicalRank">5</data>
        </node>
        <node id="decision">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="id:decision&#10;class:demo.authoring.Decision"/>
                    <jGraph:Style properties="NODE"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">NODE</data>
            <data key="fluxtion.class">demo.authoring.Decision</data>
            <data key="fluxtion.framework">false</data>
            <data key="fluxtion.auditCapable">true</data>
            <data key="fluxtion.auditCapableVia">baseClass</data>
            <data key="fluxtion.callbackKinds">ON_TRIGGER</data>
            <data key="fluxtion.topologicalRank">9</data>
        </node>
        <node id="eventLogger">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="&lt;&lt;EventHandle&gt;&gt;&#10;id:eventLogger&#10;class:com.telamin.fluxtion.runtime.audit.EventLogManager"/>
                    <jGraph:Style properties="EVENTHANDLER"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">EVENT_HANDLER</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.audit.EventLogManager</data>
            <data key="fluxtion.framework">true</data>
            <data key="fluxtion.auditCapable">false</data>
            <data key="fluxtion.auditCapableVia">none</data>
            <data key="fluxtion.callbackKinds">ON_EVENT</data>
            <data key="fluxtion.topologicalRank">2</data>
        </node>
        <node id="input">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="&lt;&lt;EventHandle&gt;&gt;&#10;id:input&#10;class:demo.authoring.OrderInput"/>
                    <jGraph:Style properties="EVENTHANDLER"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">EVENT_HANDLER</data>
            <data key="fluxtion.class">demo.authoring.OrderInput</data>
            <data key="fluxtion.framework">false</data>
            <data key="fluxtion.auditCapable">true</data>
            <data key="fluxtion.auditCapableVia">baseClass</data>
            <data key="fluxtion.callbackKinds">ON_EVENT</data>
            <data key="fluxtion.topologicalRank">6</data>
        </node>
        <node id="limit">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="id:limit&#10;class:demo.authoring.LimitComparison"/>
                    <jGraph:Style properties="NODE"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">NODE</data>
            <data key="fluxtion.class">demo.authoring.LimitComparison</data>
            <data key="fluxtion.framework">false</data>
            <data key="fluxtion.auditCapable">true</data>
            <data key="fluxtion.auditCapableVia">baseClass</data>
            <data key="fluxtion.callbackKinds">ON_TRIGGER</data>
            <data key="fluxtion.topologicalRank">8</data>
        </node>
        <node id="nodeNameLookup">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="id:nodeNameLookup&#10;class:com.telamin.fluxtion.runtime.audit.NodeNameAuditor"/>
                    <jGraph:Style properties="NODE"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">NODE</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.audit.NodeNameAuditor</data>
            <data key="fluxtion.framework">true</data>
            <data key="fluxtion.auditCapable">false</data>
            <data key="fluxtion.auditCapableVia">none</data>
            <data key="fluxtion.topologicalRank">3</data>
        </node>
        <node id="serviceRegistry">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="id:serviceRegistry&#10;class:com.telamin.fluxtion.runtime.service.ServiceRegistryNode"/>
                    <jGraph:Style properties="NODE"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">NODE</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.service.ServiceRegistryNode</data>
            <data key="fluxtion.framework">true</data>
            <data key="fluxtion.auditCapable">true</data>
            <data key="fluxtion.auditCapableVia">baseClass</data>
            <data key="fluxtion.callbackKinds">EXPORT_SERVICE</data>
            <data key="fluxtion.topologicalRank">10</data>
        </node>
        <node id="subscriptionManager">
            <data key="vertex_label">
                <jGraph:ShapeNode>
                    <jGraph:Geometry height="70" width="160" x="20" y="20"/>
                    <jGraph:label text="id:subscriptionManager&#10;class:com.telamin.fluxtion.runtime.input.SubscriptionManagerNode"/>
                    <jGraph:Style properties="NODE"/>
                </jGraph:ShapeNode>
            </data>
            <data key="fluxtion.kind">NODE</data>
            <data key="fluxtion.class">com.telamin.fluxtion.runtime.input.SubscriptionManagerNode</data>
            <data key="fluxtion.framework">true</data>
            <data key="fluxtion.auditCapable">false</data>
            <data key="fluxtion.auditCapableVia">none</data>
            <data key="fluxtion.callbackKinds">SERVICE_REGISTERED,SERVICE_DEREGISTERED,TEAR_DOWN</data>
            <data key="fluxtion.topologicalRank">4</data>
        </node>
        <edge id="1" source="ClockStrategyEvent" target="clock">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.handlerMethod">setClockStrategy</data>
            <data key="fluxtion.filterType">matched</data>
        </edge>
        <edge id="2" source="EventLogControlEvent" target="eventLogger">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.handlerMethod">calculationLogConfig</data>
            <data key="fluxtion.filterType">matched</data>
        </edge>
        <edge id="3" source="Order" target="input">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.propagates">true</data>
            <data key="fluxtion.handlerMethod">onOrder</data>
            <data key="fluxtion.filterType">matched</data>
        </edge>
        <edge id="4" source="ServiceListener" target="serviceRegistry">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
        </edge>
        <edge id="5" source="calculation" target="limit">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">TRIGGER</data>
            <data key="fluxtion.propagates">true</data>
            <data key="fluxtion.referenceField">calculation</data>
        </edge>
        <edge id="6" source="callbackDispatcher" target="context">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">DATA</data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.referenceField">dirtyStateMonitor</data>
        </edge>
        <edge id="7" source="callbackDispatcher" target="context">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">DATA</data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.referenceField">eventDispatcher</data>
        </edge>
        <edge id="8" source="clock" target="context">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">TRIGGER</data>
            <data key="fluxtion.propagates">true</data>
            <data key="fluxtion.referenceField">clock</data>
        </edge>
        <edge id="9" source="clock" target="eventLogger">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">TRIGGER</data>
            <data key="fluxtion.propagates">true</data>
            <data key="fluxtion.referenceField">clock</data>
        </edge>
        <edge id="10" source="context" target="calculation">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">DATA</data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.referenceField">dataFlowContext</data>
        </edge>
        <edge id="11" source="context" target="decision">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">DATA</data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.referenceField">dataFlowContext</data>
        </edge>
        <edge id="12" source="context" target="input">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">DATA</data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.referenceField">dataFlowContext</data>
        </edge>
        <edge id="13" source="context" target="limit">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">DATA</data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.referenceField">dataFlowContext</data>
        </edge>
        <edge id="14" source="context" target="serviceRegistry">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">DATA</data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.referenceField">dataFlowContext</data>
        </edge>
        <edge id="15" source="input" target="calculation">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">TRIGGER</data>
            <data key="fluxtion.propagates">true</data>
            <data key="fluxtion.referenceField">input</data>
        </edge>
        <edge id="16" source="limit" target="decision">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">TRIGGER</data>
            <data key="fluxtion.propagates">true</data>
            <data key="fluxtion.referenceField">comparison</data>
        </edge>
        <edge id="17" source="nodeNameLookup" target="context">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">DATA</data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.referenceField">nodeNameLookup</data>
        </edge>
        <edge id="18" source="subscriptionManager" target="context">
            <data key="edge_label">
                <jGraph:ShapeEdge/>
            </data>
            <data key="fluxtion.refKind">DATA</data>
            <data key="fluxtion.propagates">false</data>
            <data key="fluxtion.referenceField">subscriptionManager</data>
        </edge>
    </graph>
</graphml>
