<?xml version="1.0" encoding="UTF-8"?>
<mxfile>
  <diagram id="A_dv6Hhz72JxZS76AFOg" name="basic_tls">
    <mxGraphModel dx="2370" dy="1323" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="2000" pageHeight="3000" background="none" math="0" shadow="0" extFonts="Oxygen^https://fonts.googleapis.com/css?family=Oxygen|Kumbh Sans^https://fonts.googleapis.com/css?family=Kumbh+Sans|Arvo^https://fonts.google.com/specimen/Arvo?sidebar.open=true&amp;selection.family=Arvo|Arvo Regular 400^https://fonts.googleapis.com/css?family=Arvo+Regular+400|Avenir Next^https://fonts.googleapis.com/css?family=Avenir+Next">
      <root>
        <mxCell id="0" />
        <mxCell id="1" style="" parent="0" />
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-36" value="&lt;div style=&quot;font-size: 20px&quot;&gt;&lt;b&gt;MQTT Library&lt;/b&gt;&lt;/div&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#fff2cc;strokeColor=#d6b656;rounded=1;fontFamily=Courier Prime Regular;fontSize=20;fontStyle=0;strokeWidth=4;shadow=1;snapToPoint=1;" parent="1" vertex="1">
          <mxGeometry x="1040" y="160" width="160" height="2600" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-38" value="" style="aspect=fixed;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=none;snapToPoint=1;imageBorder=none;imageAspect=0;autosize=1;" parent="1" vertex="1">
          <mxGeometry x="661.5" y="110" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-39" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;snapToPoint=1;" parent="1" vertex="1">
          <mxGeometry x="1541.5" y="110" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-152" value="&lt;div&gt;&lt;span style=&quot;white-space: normal&quot;&gt;mqtt_demo_basic_tls&lt;br&gt;&lt;/span&gt;&lt;span style=&quot;white-space: normal&quot;&gt;(application)&lt;/span&gt;&lt;/div&gt;" style="html=1;rounded=1;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=4;fillColor=#d5e8d4;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;snapToPoint=1;shadow=1;" parent="1" vertex="1">
          <mxGeometry x="570" y="2792" width="220" height="50" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-153" value="&lt;div&gt;MQTT Library&lt;/div&gt;" style="html=1;rounded=1;shadow=1;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=4;fillColor=#fff2cc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;snapToPoint=1;spacingTop=2;" parent="1" vertex="1">
          <mxGeometry x="1046.5" y="2792" width="145" height="50" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-154" value="&lt;div&gt;MQTT Broker&lt;/div&gt;" style="html=1;rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#b85450;strokeWidth=4;fillColor=#f8cecc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;snapToPoint=1;spacingTop=2;" parent="1" vertex="1">
          <mxGeometry x="1480" y="2792" width="155" height="50" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-37" value="&lt;div style=&quot;font-size: 20px&quot;&gt;&lt;b&gt;MQTT Broker&lt;/b&gt;&lt;/div&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#f8cecc;strokeColor=#b85450;rounded=1;shadow=1;comic=0;glass=0;fontFamily=Courier Prime Regular;horizontal=1;fontSize=20;fontStyle=0;labelBackgroundColor=none;labelBorderColor=none;fontColor=#000000;perimeterSpacing=0;strokeWidth=4;snapToPoint=1;" parent="1" vertex="1">
          <mxGeometry x="1480" y="160" width="160" height="2580" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-40" value="" style="shadow=0;dashed=0;html=1;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Georgia;fontSize=18;gradientColor=#ffa500;snapToPoint=1;" parent="1" vertex="1">
          <mxGeometry x="1096" y="130.00000000000006" width="48" height="36.8" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-155" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;snapToPoint=1;" parent="1" vertex="1">
          <mxGeometry x="661.5" y="2742" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-156" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;snapToPoint=1;" parent="1" vertex="1">
          <mxGeometry x="1541.5" y="2742" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-157" value="" style="shadow=0;dashed=0;html=1;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Georgia;fontSize=18;gradientColor=#ffa500;snapToPoint=1;" parent="1" vertex="1">
          <mxGeometry x="1095" y="2762" width="48" height="36.8" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-33" value="&lt;div style=&quot;font-size: 18px&quot;&gt;&lt;b&gt;mqtt_demo_basic_tls&lt;br style=&quot;font-size: 18px&quot;&gt;(application)&lt;/b&gt;&lt;/div&gt;" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;fillColor=#d5e8d4;strokeColor=#82b366;rounded=1;fontFamily=Courier Prime Regular;fontStyle=0;fontSize=18;labelBorderColor=none;strokeWidth=4;size=50;shadow=1;glass=0;labelBackgroundColor=none;gradientColor=#ffffff;snapToPoint=1;" parent="1" vertex="1">
          <mxGeometry x="570" y="160" width="220" height="2580" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-90" value="Squares" style="" parent="0" />
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-99" value="&lt;div style=&quot;font-size: 15px;&quot;&gt;&lt;b style=&quot;font-size: 15px;&quot;&gt;subscribePublishLoop&lt;/b&gt;&lt;/div&gt;" style="shape=umlFrame;whiteSpace=wrap;html=1;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#C73500;strokeWidth=5;fillColor=#fa6800;fontFamily=Courier Prime Regular;fontSize=15;swimlaneFillColor=#ffe599;spacingLeft=0;width=190;height=40;spacingRight=8;opacity=60;fontColor=#ffffff;snapToPoint=1;spacingTop=-1;fontStyle=1;" parent="1h2YWR1o6LhPu1ulh7Y_-90" vertex="1">
          <mxGeometry x="570" y="550" width="1080" height="2042" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-80" value="&lt;font face=&quot;Courier Prime Regular&quot; style=&quot;font-size: 18px&quot;&gt;Subscribe to Topic&lt;/font&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Century Gothic;fontSize=19;opacity=50;fontStyle=1;swimlaneFillColor=#ccccff;startSize=30;verticalAlign=middle;whiteSpace=wrap;gradientColor=#ffffff;spacingBottom=4;snapToPoint=0;autosize=1;portConstraintRotation=0;connectable=1;swimlaneLine=1;spacingTop=-1;html=1;" parent="1h2YWR1o6LhPu1ulh7Y_-90" vertex="1">
          <mxGeometry x="680" y="792" width="879" height="368" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-84" value="&lt;div style=&quot;line-height: 100%&quot;&gt;&lt;font style=&quot;line-height: 101%&quot; face=&quot;Courier Prime Regular&quot; size=&quot;1&quot;&gt;&lt;b style=&quot;font-size: 18px&quot;&gt;Publish to Topic + Receive Incoming Publish (QoS 2)&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Century Gothic;fontSize=19;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;spacingTop=-9;" parent="1h2YWR1o6LhPu1ulh7Y_-90" vertex="1">
          <mxGeometry x="680.5" y="1352" width="880" height="760" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-135" value="&lt;pre style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;line-height: 101%; font-size: 19px;&quot; face=&quot;Courier Prime Regular&quot;&gt;&lt;b style=&quot;font-size: 19px;&quot;&gt;Unsubscribe From Topic&lt;/b&gt;&lt;/font&gt;&lt;/pre&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Lucida Console;fontSize=19;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;spacingLeft=-9;" parent="1h2YWR1o6LhPu1ulh7Y_-90" vertex="1">
          <mxGeometry x="680" y="2172" width="880" height="290" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-41" value="Untitled Layer" style="" parent="0" />
        <mxCell id="ZTGGuMKtAnDrnVPxvQuj-5" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1112" y="622" width="17" height="100" as="geometry" />
        </mxCell>
        <mxCell id="KPrLNsonlN6Hl3lVzwfE-4" value="" style="edgeStyle=elbowEdgeStyle;elbow=horizontal;endArrow=classic;html=1;fontSize=12;fillColor=#d5e8d4;strokeColor=#82b366;rounded=1;gradientDirection=east;shape=flexArrow;strokeWidth=1;shadow=1;startArrow=none;startFill=0;comic=0;width=9;opacity=70;gradientColor=#ffffff;fontFamily=Courier Prime Regular;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="679" y="2700" as="sourcePoint" />
            <mxPoint x="520" y="260" as="targetPoint" />
            <Array as="points">
              <mxPoint x="470" y="1480" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="UNxCpO-mbFR789EwEVD_-1" value="&lt;div style=&quot;font-size: 21px&quot;&gt;&amp;nbsp;LOOP INDEFINITELY&amp;nbsp;&lt;/div&gt;" style="text;align=center;verticalAlign=middle;resizable=1;points=[];labelBackgroundColor=#b9e0a5;fontSize=21;horizontal=0;fontStyle=0;labelBorderColor=#000000;whiteSpace=wrap;absoluteArcSize=0;autosize=1;snapToPoint=1;resizeWidth=0;resizeHeight=0;backgroundOutline=0;part=0;collapsible=0;fixDash=0;fillColor=none;gradientColor=#ffffff;strokeColor=none;shadow=1;rounded=1;glass=0;comic=0;fontFamily=Courier Prime Regular;html=1;noLabel=0;" parent="KPrLNsonlN6Hl3lVzwfE-4" vertex="1" connectable="0">
          <mxGeometry x="-0.1316" width="40" height="240" relative="1" as="geometry">
            <mxPoint x="-21.992399999999996" y="-286" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-137" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;Send unsubscribe packet (&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_Unsubscribe&lt;/b&gt;)&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;spacingLeft=11;bendable=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" y="12" relative="1" as="geometry">
            <mxPoint x="680" y="2232" as="sourcePoint" />
            <mxPoint x="1110" y="2232" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-57" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1112" y="870" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-58" value="&lt;div style=&quot;font-size: 16px&quot;&gt;&lt;font style=&quot;font-size: 16px ; line-height: 100%&quot;&gt;Subscribe to topic filter &lt;b&gt;&quot;/example/topic&quot;&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 16px&quot;&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;&amp;nbsp;(&lt;/span&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;MQTT_Subscribe&lt;/b&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;)&lt;/span&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;labelPosition=center;verticalLabelPosition=middle;align=center;bendable=0;spacingLeft=1;shadow=0;endFill=1;endSize=10;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" relative="1" as="geometry">
            <mxPoint x="680" y="870" as="sourcePoint" />
            <mxPoint x="1110" y="870" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-61" value="&lt;div style=&quot;font-size: 17px;&quot;&gt;&lt;font style=&quot;font-size: 17px;&quot;&gt;Send subscription request&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;spacingLeft=1;shadow=0;endFill=1;endSize=10;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="0.0233" y="12" width="60" relative="1" as="geometry">
            <mxPoint x="1130" y="910" as="sourcePoint" />
            <mxPoint x="1560" y="910" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-62" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1110" y="950" as="sourcePoint" />
            <mxPoint x="680" y="950" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-63" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1112" y="990" width="17" height="110" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-64" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;Process incoming packet (&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_ProcessLoop&lt;/b&gt;)&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;spacingLeft=1;shadow=0;endFill=1;endSize=10;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" y="12" relative="1" as="geometry">
            <mxPoint x="680" y="990" as="sourcePoint" />
            <mxPoint x="1110" y="990" as="targetPoint" />
            <mxPoint x="1" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-66" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;SUBACK&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1560" y="1030" as="sourcePoint" />
            <mxPoint x="1130" y="1030" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-72" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="670" y="1073" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-73" value="&lt;p style=&quot;line-height: 100% ; font-size: 12px&quot;&gt;&lt;/p&gt;&lt;div style=&quot;font-size: 12px&quot;&gt;&lt;span style=&quot;font-size: 12px&quot;&gt;Remove PUBLISH message&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 12px&quot;&gt;&lt;span style=&quot;font-size: 12px&quot;&gt;from demo cache as&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 12px&quot;&gt;&lt;span style=&quot;font-size: 12px&quot;&gt;PUBLISH succeeded&lt;/span&gt;&lt;/div&gt;&lt;p style=&quot;font-size: 12px&quot;&gt;&lt;/p&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;spacingLeft=6;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=12;fontColor=#000000;spacingTop=0;jumpSize=6;shadow=1;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="690.14" y="1619.92" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="690" y="1621" />
              <mxPoint x="745" y="1621" />
              <mxPoint x="745" y="1659" />
              <mxPoint x="701" y="1659" />
            </Array>
            <mxPoint x="690" y="1659" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-74" value="if successful subscription&amp;nbsp;&lt;br style=&quot;font-size: 13px;&quot;&gt;attempt" style="rhombus;fillColor=#d5e8d4;strokeColor=#82b366;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;opacity=90;align=center;fontStyle=0;verticalAlign=middle;whiteSpace=wrap;html=1;spacingTop=5;strokeWidth=3;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="594.75" y="1192" width="168.5" height="100" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-75" value="&lt;div&gt;no&lt;/div&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;verticalAlign=bottom;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;exitX=0;exitY=0;exitDx=0;exitDy=0;strokeWidth=2;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" source="1h2YWR1o6LhPu1ulh7Y_-74" edge="1">
          <mxGeometry x="-0.9232" y="37" relative="1" as="geometry">
            <mxPoint x="670" y="870" as="targetPoint" />
            <mxPoint x="637.5714285714289" y="1157.2857142857144" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="637" y="870" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-76" value="&lt;div&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;yes&lt;/font&gt;&lt;/div&gt;" style="html=1;align=left;verticalAlign=top;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;snapToPoint=1;bendable=0;fixDash=0;orthogonalLoop=0;strokeWidth=2;rounded=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-1" y="16" relative="1" as="geometry">
            <mxPoint x="680" y="1352" as="targetPoint" />
            <mxPoint x="680" y="1292" as="sourcePoint" />
            <mxPoint x="-6" y="-12" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-83" value="&lt;font style=&quot;font-size: 13px;&quot;&gt;Retry using exponential&lt;br style=&quot;font-size: 13px;&quot;&gt;backoff strategy&lt;/font&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;fontColor=#000000;opacity=40;flipV=1;rotation=-90;fontStyle=0" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="525" y="990" width="190" height="40" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-65" value="&lt;div style=&quot;font-size: 17px;&quot;&gt;&lt;span style=&quot;font-size: 17px;&quot;&gt;Invoke demo callback&lt;/span&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1110" y="1070" as="sourcePoint" />
            <mxPoint x="680" y="1070" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-95" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1112" y="1410.8600000000001" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-88" value="&lt;div style=&quot;font-size: 16px&quot;&gt;&lt;font style=&quot;font-size: 16px&quot;&gt;Publish&amp;nbsp;to topic&amp;nbsp;&lt;b&gt;&quot;/example/topic&quot;&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 16px&quot;&gt;&lt;font style=&quot;font-size: 16px&quot;&gt;&amp;nbsp;(&lt;b style=&quot;font-size: 16px&quot;&gt;MQTT_Publish&lt;/b&gt;)&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;spacingLeft=1;shadow=0;endFill=1;endSize=10;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" relative="1" as="geometry">
            <mxPoint x="680" y="1412" as="sourcePoint" />
            <mxPoint x="1110" y="1412" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-96" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1110" y="1490.8600000000001" as="sourcePoint" />
            <mxPoint x="680" y="1490.8600000000001" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-100" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1112" y="1550" width="17" height="550" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-101" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;Process incoming packet (&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_ProcessLoop&lt;/b&gt;)&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;spacingLeft=1;shadow=0;endFill=1;endSize=10;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" y="12" relative="1" as="geometry">
            <mxPoint x="680" y="1550" as="sourcePoint" />
            <mxPoint x="1110" y="1550" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-102" value="PUBREC" style="verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;bendable=0;endFill=1;startFill=0;startArrow=none;shadow=0;snapToPoint=1;backgroundOutline=0;editable=1;align=center;movable=1;noJump=0;fontStyle=1;spacingLeft=-11;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" relative="1" as="geometry">
            <mxPoint x="1560" y="1580" as="sourcePoint" />
            <mxPoint x="1130" y="1580" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-104" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="670" y="1600" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-103" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;Invoke demo callback&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1110" y="1600" as="sourcePoint" />
            <mxPoint x="680" y="1600" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-105" value="&lt;div style=&quot;font-size: 14px&quot;&gt;Decode SUBACK server&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;font-size: 14px&quot;&gt;response status for&lt;/div&gt;&lt;div style=&quot;font-size: 14px&quot;&gt;subscription attempt&lt;/div&gt;" style="edgeStyle=orthogonalEdgeStyle;align=left;spacingLeft=6;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;spacingTop=4;html=1;shadow=1;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="690" y="1090" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="690" y="1091" />
              <mxPoint x="745" y="1091" />
              <mxPoint x="745" y="1129" />
              <mxPoint x="701" y="1129" />
            </Array>
            <mxPoint x="690" y="1129" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-106" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;Return&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;spacingLeft=1;shadow=0;endFill=1;endSize=10;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" y="12" relative="1" as="geometry">
            <mxPoint x="680" y="1680" as="sourcePoint" />
            <mxPoint x="1110" y="1680" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-107" value="PUBREL" style="verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;spacingLeft=-6;bendable=0;shadow=0;endFill=1;endSize=10;align=center;movable=1;snapToPoint=1;noJump=0;fontStyle=1;spacingTop=9;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="0.0233" width="60" relative="1" as="geometry">
            <mxPoint x="1130" y="1700" as="sourcePoint" />
            <mxPoint x="1560" y="1700" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-94" value="&lt;div style=&quot;font-size: 17px&quot;&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;&quot;Hello World!&quot;&lt;/b&gt;&lt;br&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;spacingLeft=1;shadow=0;endFill=1;endSize=10;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0187" y="11" width="60" relative="1" as="geometry">
            <mxPoint x="1130" y="1451" as="sourcePoint" />
            <mxPoint x="1558" y="1450.8600000000001" as="targetPoint" />
            <Array as="points">
              <mxPoint x="1340" y="1451" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-108" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;PUBCOMP&lt;/font&gt;" style="verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;bendable=0;endFill=1;startFill=0;startArrow=none;shadow=0;align=center;html=1;movable=1;snapToPoint=1;noJump=0;fontStyle=1" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0256" relative="1" as="geometry">
            <mxPoint x="1559" y="1760" as="sourcePoint" />
            <mxPoint x="1130" y="1760" as="targetPoint" />
            <mxPoint x="-1" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-113" value="" style="shape=mxgraph.bpmn.loop;html=1;outlineConnect=0;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;strokeWidth=5;fillColor=#ffd966;gradientColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;direction=east;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1540" y="1322" width="50" height="50" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-114" value="&lt;div&gt;Loop for &lt;br&gt;maxPublishCount&lt;/div&gt;" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=12;fontColor=#000000;arcSize=8;rotation=0;flipH=0;aspect=fixed;fontStyle=1;html=1;spacingRight=-8;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1420" y="1312" width="120" height="30" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-122" value="PUBLISH &lt;span style=&quot;font-weight: normal&quot;&gt;to topic&lt;/span&gt; &quot;/example/topic&quot;&amp;nbsp;&lt;br&gt;&quot;Hello World!&quot;" style="verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=0;endFill=1;startFill=0;startArrow=none;shadow=0;align=center;movable=1;bendable=0;snapToPoint=1;noJump=0;fontStyle=1;spacingLeft=-3;html=1;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" relative="1" as="geometry">
            <mxPoint x="1560" y="1840" as="sourcePoint" />
            <mxPoint x="1130" y="1840" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-127" value="&lt;div style=&quot;text-align: center&quot;&gt;&lt;font style=&quot;font-size: 13px&quot;&gt;Log publish&lt;br&gt;&lt;/font&gt;&lt;span&gt;data&lt;/span&gt;&lt;/div&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;spacingLeft=6;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;spacingTop=4;jumpSize=6;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="690" y="1880" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="690" y="1881" />
              <mxPoint x="745" y="1881" />
              <mxPoint x="745" y="1919" />
              <mxPoint x="701" y="1919" />
            </Array>
            <mxPoint x="690" y="1919" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-128" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="670" y="1860" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-129" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;span style=&quot;font-size: 16px;&quot;&gt;Invoke demo callback&lt;/span&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1110" y="1860" as="sourcePoint" />
            <mxPoint x="680" y="1860" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-130" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;span style=&quot;font-size: 16px;&quot;&gt;Return&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;" style="verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;spacingLeft=1;html=1;shadow=0;endFill=1;endSize=10;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" y="12" relative="1" as="geometry">
            <mxPoint x="680" y="1940" as="sourcePoint" />
            <mxPoint x="1110" y="1940" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-131" value="PUBREC" style="verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;spacingLeft=-3;shadow=0;endFill=1;endSize=10;align=center;fontStyle=1;movable=1;bendable=0;snapToPoint=1;noJump=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="0.0233" width="60" relative="1" as="geometry">
            <mxPoint x="1130" y="1970" as="sourcePoint" />
            <mxPoint x="1560" y="1970" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-133" value="PUBCOMP" style="verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;spacingLeft=-3;shadow=0;endFill=1;endSize=10;align=center;html=1;fontStyle=1;movable=1;bendable=0;snapToPoint=1;noJump=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="0.0233" width="60" relative="1" as="geometry">
            <mxPoint x="1130" y="2070" as="sourcePoint" />
            <mxPoint x="1560" y="2070" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-136" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=16;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1112" y="2232" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-138" value="&lt;div style=&quot;font-size: 17px;&quot;&gt;&lt;font style=&quot;font-size: 17px;&quot;&gt;Send unsubscribe request&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;spacingLeft=11;bendable=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" y="12" width="60" relative="1" as="geometry">
            <mxPoint x="1130" y="2272" as="sourcePoint" />
            <mxPoint x="1560" y="2272" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-139" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1110" y="2312" as="sourcePoint" />
            <mxPoint x="680" y="2312" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-140" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=16;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1112" y="2352" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-141" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;Process incoming packet (&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_ProcessLoop&lt;/b&gt;)&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;spacingLeft=11;bendable=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.0233" y="12" relative="1" as="geometry">
            <mxPoint x="680" y="2352" as="sourcePoint" />
            <mxPoint x="1110" y="2352" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-142" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;UNSUBACK&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1560" y="2392" as="sourcePoint" />
            <mxPoint x="1130" y="2392" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-144" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1110" y="2432" as="sourcePoint" />
            <mxPoint x="680" y="2432" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="sNPk40RRt8tWJ4zJQobv-11" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="679" y="239.25" width="870" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-43" value="&lt;div&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;ESTABLISH TLS SESSION WITH SERVER ROOT CA CERTIFICATE (OPENSSL)&lt;/font&gt;&lt;/div&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;spacingTop=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="790" y="244.5" width="660" height="30" as="geometry" />
        </mxCell>
        <mxCell id="wlINyiLOP7DfY7Dn-MGU-21" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="680" y="2614" width="870" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-151" value="&lt;div&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;END TLS SESSION&lt;/font&gt;&lt;/div&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1035" y="2619" width="170" height="30" as="geometry" />
        </mxCell>
        <mxCell id="wlINyiLOP7DfY7Dn-MGU-22" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="680" y="2502.75" width="430" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="wlINyiLOP7DfY7Dn-MGU-23" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1120" y="2503.75" width="430" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="1h2YWR1o6LhPu1ulh7Y_-146" value="&lt;div&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;MQTT_Disconnect&lt;/font&gt;&lt;/div&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=-1;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="799" y="2508" width="170" height="30" as="geometry" />
        </mxCell>
        <mxCell id="wlINyiLOP7DfY7Dn-MGU-24" value="&lt;div&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;DISCONNECT FROM BROKER&lt;/font&gt;&lt;/div&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=1;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1210" y="2509" width="240" height="30" as="geometry" />
        </mxCell>
        <mxCell id="ZTGGuMKtAnDrnVPxvQuj-1" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="680.5" y="600.75" width="430" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="ZTGGuMKtAnDrnVPxvQuj-2" value="&lt;div&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;MQTT_Connect&lt;/font&gt;&lt;/div&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=-3;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="814.5" y="613" width="140" height="20" as="geometry" />
        </mxCell>
        <mxCell id="ZTGGuMKtAnDrnVPxvQuj-4" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;snapToPoint=1;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1133.5" y="600.75" width="416.5" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="ZTGGuMKtAnDrnVPxvQuj-6" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;CONNACK&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1560.5" y="692" as="sourcePoint" />
            <mxPoint x="1130.5" y="692" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ZTGGuMKtAnDrnVPxvQuj-7" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;span style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;line-height: 120%; font-size: 16px;&quot;&gt;SUCCESS&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;snapToPoint=1;fixDash=0;bendable=0;movable=1;orthogonalLoop=0;noJump=0;spacingTop=-22;labelBorderColor=none;backgroundOutline=0;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="0.0256" relative="1" as="geometry">
            <mxPoint x="1110.5" y="722" as="sourcePoint" />
            <mxPoint x="680.5" y="722" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ZTGGuMKtAnDrnVPxvQuj-3" value="&lt;div&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;CONNECT TO MQTT BROKER&lt;/font&gt;&lt;/div&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="1205.5" y="607" width="240" height="30" as="geometry" />
        </mxCell>
        <mxCell id="Hfa7P_ZmAvkOic4KLPuN-13" value="Retry using &lt;br&gt;exponential backoff &lt;br&gt;strategy&amp;nbsp;" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;fontColor=#000000;rotation=0;flipH=0;aspect=fixed;fontStyle=0;html=1;horizontal=0;opacity=40;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="580" y="242" width="60" height="150" as="geometry" />
        </mxCell>
        <mxCell id="Hfa7P_ZmAvkOic4KLPuN-15" value="&lt;div&gt;&lt;b&gt;&lt;font style=&quot;font-size: 17px&quot;&gt;CONNECTION STATUS&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;" style="verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;entryX=1;entryY=0.5;entryDx=0;entryDy=0;labelBorderColor=none;html=1;snapToPoint=1;bendable=0;spacingTop=-22;endFill=1;startFill=0;startArrow=none;spacingLeft=2;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" target="Hfa7P_ZmAvkOic4KLPuN-20" edge="1">
          <mxGeometry x="0.1424" relative="1" as="geometry">
            <mxPoint x="1557.75" y="409" as="sourcePoint" />
            <mxPoint x="682.25" y="409" as="targetPoint" />
            <mxPoint x="1" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="Hfa7P_ZmAvkOic4KLPuN-20" value="if successful connection&lt;br style=&quot;font-size: 13px;&quot;&gt;attempt" style="rhombus;fillColor=#d5e8d4;strokeColor=#82b366;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;opacity=90;align=center;fontStyle=0;verticalAlign=middle;whiteSpace=wrap;html=1;spacingTop=5;strokeWidth=3;" parent="1h2YWR1o6LhPu1ulh7Y_-41" vertex="1">
          <mxGeometry x="600.63" y="360" width="155.75" height="100" as="geometry" />
        </mxCell>
        <mxCell id="Hfa7P_ZmAvkOic4KLPuN-21" value="&lt;div&gt;no&lt;/div&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;verticalAlign=bottom;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingLeft=-4;strokeWidth=3;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry x="-0.3143" y="-12" relative="1" as="geometry">
            <mxPoint x="670" y="260" as="targetPoint" />
            <mxPoint x="638" y="386" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="638" y="386" />
              <mxPoint x="638" y="260" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="Hfa7P_ZmAvkOic4KLPuN-33" value="&lt;pre&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;yes&lt;/font&gt;&lt;/pre&gt;" style="html=1;align=left;verticalAlign=top;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;exitX=0.5;exitY=1;exitDx=0;exitDy=0;strokeWidth=3;entryX=0.101;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;rounded=0;snapToPoint=1;" parent="1h2YWR1o6LhPu1ulh7Y_-41" source="Hfa7P_ZmAvkOic4KLPuN-20" target="1h2YWR1o6LhPu1ulh7Y_-99" edge="1">
          <mxGeometry x="-0.9984" y="11" relative="1" as="geometry">
            <mxPoint x="677.5" y="540" as="targetPoint" />
            <mxPoint x="677.5" y="430" as="sourcePoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="9Kdy2zT17gq3MDqVFB1H-1" value="&lt;div style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1110" y="2090" as="sourcePoint" />
            <mxPoint x="680" y="2090" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="9Kdy2zT17gq3MDqVFB1H-2" value="PUBREL&lt;br style=&quot;font-size: 16px;&quot;&gt;" style="verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;shadow=0;align=center;html=1;fontStyle=1;spacingLeft=11;movable=1;bendable=0;snapToPoint=1;noJump=0;" parent="1h2YWR1o6LhPu1ulh7Y_-41" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1560" y="2020" as="sourcePoint" />
            <mxPoint x="1130" y="2020" as="targetPoint" />
          </mxGeometry>
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
  <diagram name="mutual_auth" id="DmwqY5QXm-Ntic0dg_CT">
    <mxGraphModel dx="1657" dy="725" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="2000" pageHeight="3000" math="0" shadow="0">
      <root>
        <mxCell id="vm02eSo-aQvuqIzKR4am-0" />
        <mxCell id="vm02eSo-aQvuqIzKR4am-1" style="" parent="vm02eSo-aQvuqIzKR4am-0" />
        <mxCell id="vm02eSo-aQvuqIzKR4am-2" value="mqtt_demo_mutual_auth&lt;br&gt;(application)" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=#ffffff;rounded=1;fontFamily=Courier Prime Regular;fontStyle=1;fontSize=18;labelBorderColor=none;strokeWidth=4;size=50;html=1;shadow=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="492.5" y="90" width="250" height="2405" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-3" value="MQTT Library" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#fff2cc;strokeColor=#d6b656;rounded=1;fontFamily=Courier Prime Regular;fontSize=18;fontStyle=1;strokeWidth=4;shadow=1;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="977.5" y="95" width="160" height="2430" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-4" value="MQTT Broker" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#f8cecc;strokeColor=#b85450;rounded=1;shadow=1;comic=0;glass=0;fontFamily=Courier Prime Regular;horizontal=1;fontSize=18;fontStyle=1;labelBackgroundColor=none;labelBorderColor=none;fontColor=#000000;perimeterSpacing=0;strokeWidth=4;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="1417.5" y="95" width="160" height="2400" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-5" value="" style="aspect=fixed;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=none;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="599" y="40" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-6" value="" style="aspect=fixed;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="1479" y="45" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-7" value="" style="shadow=0;dashed=0;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Georgia;fontSize=18;gradientColor=#ffa500;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="1033.5" y="65.00000000000004" width="48" height="36.8" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-9" value="mqtt_demo_mutual_auth&lt;br&gt;(application)" style="rounded=1;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=4;fillColor=#d5e8d4;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;html=1;shadow=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="491" y="2545" width="250" height="60" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-10" value="" style="aspect=fixed;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="597.5" y="2495" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-11" value="MQTT Library" style="rounded=1;shadow=1;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=4;fillColor=#fff2cc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="982.25" y="2550" width="145" height="50" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-12" value="MQTT Broker" style="rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#b85450;strokeWidth=4;fillColor=#f8cecc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="1417.5" y="2550" width="155" height="50" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-13" value="" style="aspect=fixed;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="1479" y="2500" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-14" value="" style="shadow=0;dashed=0;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Georgia;fontSize=18;gradientColor=#ffa500;html=1;" parent="vm02eSo-aQvuqIzKR4am-1" vertex="1">
          <mxGeometry x="1033.5" y="2520" width="48" height="36.8" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-15" value="Squares" style="" parent="vm02eSo-aQvuqIzKR4am-0" />
        <mxCell id="vm02eSo-aQvuqIzKR4am-8" value="&lt;font face=&quot;Courier Prime Regular&quot; style=&quot;font-size: 15px;&quot;&gt;subscribePublishLoop&lt;/font&gt;" style="shape=umlFrame;whiteSpace=wrap;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#C73500;strokeWidth=5;fillColor=#fa6800;fontFamily=Lucida Console;fontSize=15;swimlaneFillColor=#ffe599;spacingLeft=0;width=190;height=40;spacingRight=8;opacity=60;fontColor=#ffffff;html=1;fontStyle=1;spacingTop=-1;" parent="vm02eSo-aQvuqIzKR4am-15" vertex="1">
          <mxGeometry x="512" y="505" width="1080" height="1830" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-16" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;font-size: 19px; line-height: 101%;&quot; face=&quot;Courier Prime Regular&quot;&gt;Subscribe to Topic&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Lucida Console;fontSize=19;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="vm02eSo-aQvuqIzKR4am-15" vertex="1">
          <mxGeometry x="617.5" y="715" width="879" height="350" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-17" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;font-size: 19px; line-height: 101%;&quot; face=&quot;Courier Prime Regular&quot;&gt;Publish to Topic + Receive Incoming Publish (QoS 1)&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Lucida Console;fontSize=19;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=5;" parent="vm02eSo-aQvuqIzKR4am-15" vertex="1">
          <mxGeometry x="617.5" y="1285" width="879" height="610" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-18" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font face=&quot;Verdana&quot; style=&quot;font-size: 19px; line-height: 101%;&quot;&gt;Unsubscribe From Topic&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Lucida Console;fontSize=19;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="vm02eSo-aQvuqIzKR4am-15" vertex="1">
          <mxGeometry x="617.5" y="1935" width="879" height="290" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-19" value="Untitled Layer" style="" parent="vm02eSo-aQvuqIzKR4am-0" />
        <mxCell id="DUc8DNfSDvmHBgkCGU8j-11" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1050.5" y="585" width="17" height="100" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-20" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1050.5" y="785" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-21" value="&lt;div style=&quot;font-size: 16px&quot;&gt;&lt;font style=&quot;line-height: 16px&quot;&gt;Subscribe to topic filter&amp;nbsp;&lt;b&gt;&quot;/example/topic&quot;&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 16px&quot;&gt;&amp;nbsp;(&lt;b&gt;MQTT_Subscribe&lt;/b&gt;)&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;shadow=0;spacingLeft=1;bendable=0;endFill=1;endSize=10;spacingTop=0;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.023" relative="1" as="geometry">
            <mxPoint x="618" y="785" as="sourcePoint" />
            <mxPoint x="1052" y="785" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-22" value="&lt;font style=&quot;font-size: 17px;&quot;&gt;Send subscription request&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;shadow=0;spacingTop=-13;spacingLeft=1;bendable=0;endFill=1;endSize=10;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0223" y="5" width="60" relative="1" as="geometry">
            <mxPoint x="1070" y="825" as="sourcePoint" />
            <mxPoint x="1497.5" y="825" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-23" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1052" y="865" as="sourcePoint" />
            <mxPoint x="622" y="865" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-24" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1050.5" y="905" width="17" height="110" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-25" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;Process incoming packet (&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_ProcessLoop&lt;/b&gt;)&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;shadow=0;spacingTop=-13;spacingLeft=1;bendable=0;endFill=1;endSize=10;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0223" y="5" relative="1" as="geometry">
            <mxPoint x="618" y="905" as="sourcePoint" />
            <mxPoint x="1047.5" y="905" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-26" value="&lt;font size=&quot;1&quot;&gt;&lt;b style=&quot;font-size: 15px&quot;&gt;SUBACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1497.5" y="945" as="sourcePoint" />
            <mxPoint x="1072" y="945" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-27" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="612" y="988" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-28" value="&lt;font style=&quot;font-size: 13px ; line-height: 90%&quot;&gt;&lt;div&gt;Remove PUBLISH message&lt;/div&gt;&lt;div&gt;from demo cache as&lt;/div&gt;&lt;div&gt;PUBLISH succeeded&lt;/div&gt;&lt;/font&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;spacingLeft=2;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingRight=6;spacingBottom=0;spacingTop=0;jumpSize=6;endSize=6;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="631.02" y="1569.92" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="630.88" y="1571" />
              <mxPoint x="685.88" y="1571" />
              <mxPoint x="685.88" y="1609" />
              <mxPoint x="641.88" y="1609" />
            </Array>
            <mxPoint x="630.88" y="1609" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-29" value="if successful subscription&amp;nbsp;&lt;br&gt;attempt" style="rhombus;fillColor=#d5e8d4;strokeColor=#82b366;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=12;align=center;fontStyle=0;verticalAlign=middle;whiteSpace=wrap;html=1;spacingTop=5;strokeWidth=3;opacity=90;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="534.5" y="1125" width="168.5" height="100" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-30" value="&lt;b&gt;no&lt;/b&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;verticalAlign=bottom;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;exitX=0;exitY=0;exitDx=0;exitDy=0;" parent="vm02eSo-aQvuqIzKR4am-19" source="vm02eSo-aQvuqIzKR4am-29" edge="1">
          <mxGeometry x="-0.9232" y="37" relative="1" as="geometry">
            <mxPoint x="612" y="785" as="targetPoint" />
            <mxPoint x="579.5714285714289" y="1090.2857142857144" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="580" y="785" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-31" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;yes&lt;/font&gt;&lt;/b&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;verticalAlign=top;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.9677" y="11" relative="1" as="geometry">
            <mxPoint x="617.5" y="1285" as="targetPoint" />
            <mxPoint x="617.5" y="1225" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="617.5" y="1225" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-32" value="&lt;font style=&quot;font-size: 13px;&quot;&gt;Retry using exponential&lt;br style=&quot;font-size: 13px;&quot;&gt;backoff strategy&lt;/font&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;fontColor=#000000;opacity=40;flipV=1;rotation=-90;fontStyle=0" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="467" y="905" width="190" height="40" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-33" value="&lt;span style=&quot;font-size: 17px;&quot;&gt;Invoke demo callback&lt;/span&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1052" y="985" as="sourcePoint" />
            <mxPoint x="627.5" y="985" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-34" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1050.5" y="1350.0000000000002" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-36" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1052" y="1430.0000000000002" as="sourcePoint" />
            <mxPoint x="622" y="1430.0000000000002" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-37" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1049.38" y="1500" width="17" height="378.86" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-38" value="&lt;font style=&quot;font-size: 16px&quot;&gt;Process incoming packet (&lt;b&gt;MQTT_ProcessLoop&lt;/b&gt;)&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;shadow=0;spacingTop=-13;spacingLeft=1;endFill=1;endSize=10;bendable=0;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0139" y="5" relative="1" as="geometry">
            <mxPoint x="616.38" y="1500" as="sourcePoint" />
            <mxPoint x="1047.38" y="1500" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-39" value="&lt;font size=&quot;1&quot;&gt;&lt;b style=&quot;font-size: 15px&quot;&gt;PUBACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;jumpSize=6;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1496.38" y="1530" as="sourcePoint" />
            <mxPoint x="1070.88" y="1530" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-40" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="610.88" y="1550" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-41" value="&lt;font style=&quot;font-size: 17px&quot;&gt;Invoke demo callback&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1046.38" y="1550" as="sourcePoint" />
            <mxPoint x="620.88" y="1550" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-42" value="&lt;div style=&quot;font-size: 14px&quot;&gt;&lt;div&gt;Decode SUBACK server&amp;nbsp;&lt;/div&gt;&lt;div&gt;response status for&lt;/div&gt;&lt;div&gt;subscription attempt&lt;/div&gt;&lt;/div&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;spacingLeft=6;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;spacingTop=4;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="632" y="1005" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="632" y="1006" />
              <mxPoint x="687" y="1006" />
              <mxPoint x="687" y="1044" />
              <mxPoint x="643" y="1044" />
            </Array>
            <mxPoint x="632" y="1044" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-43" value="&lt;font style=&quot;font-size: 17px&quot;&gt;Return&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;bendable=0;shadow=0;spacingTop=-13;spacingLeft=1;endFill=1;endSize=10;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0223" y="5" relative="1" as="geometry">
            <mxPoint x="620.88" y="1630" as="sourcePoint" />
            <mxPoint x="1046.38" y="1630" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-45" value="&lt;b&gt;&quot;Hello World!&quot;&lt;/b&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;shadow=0;spacingTop=-13;spacingLeft=1;endFill=1;endSize=10;bendable=0;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0223" y="4" width="60" relative="1" as="geometry">
            <mxPoint x="1072" y="1390.14" as="sourcePoint" />
            <mxPoint x="1497.5" y="1390.14" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-47" value="" style="shape=mxgraph.bpmn.loop;html=1;outlineConnect=0;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;strokeWidth=5;fillColor=#ffd966;gradientColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1467.5" y="1255" width="50" height="50" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-48" value="Loop for &lt;br&gt;maxPublishCount" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=12;fontColor=#000000;arcSize=8;rotation=0;flipH=0;aspect=fixed;fontStyle=1;html=1;spacingRight=-8;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1357.5" y="1235" width="120" height="30" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-49" value="&lt;span style=&quot;font-weight: 700&quot;&gt;PUBLISH&amp;nbsp;&lt;/span&gt;to topic&lt;span style=&quot;font-weight: 700&quot;&gt;&amp;nbsp;&quot;/example/topic&quot;&amp;nbsp;&lt;/span&gt;&lt;br style=&quot;font-weight: 700&quot;&gt;&lt;span style=&quot;font-weight: 700&quot;&gt;&quot;Hello World!&quot;&lt;/span&gt;&lt;font size=&quot;1&quot;&gt;&lt;b style=&quot;font-size: 15px&quot;&gt;&lt;br&gt;&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=0;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1495.13" y="1698.86" as="sourcePoint" />
            <mxPoint x="1069.63" y="1698.86" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-50" value="&lt;font style=&quot;font-size: 13px&quot;&gt;Log publish&lt;br&gt;&lt;div style=&quot;text-align: center&quot;&gt;&lt;span&gt;data&lt;/span&gt;&lt;/div&gt;&lt;/font&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;spacingLeft=2;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingRight=6;spacingBottom=0;spacingTop=0;jumpSize=6;endSize=6;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="628.63" y="1748.86" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="628.63" y="1749.86" />
              <mxPoint x="683.63" y="1749.86" />
              <mxPoint x="683.63" y="1787.86" />
              <mxPoint x="639.63" y="1787.86" />
            </Array>
            <mxPoint x="628.63" y="1787.86" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-51" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="608.63" y="1728.86" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-52" value="&lt;font style=&quot;font-size: 17px&quot;&gt;Invoke demo callback&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1045.13" y="1728.86" as="sourcePoint" />
            <mxPoint x="618.63" y="1728.86" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-53" value="&lt;font style=&quot;font-size: 17px&quot;&gt;Return&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;shadow=0;spacingTop=-13;spacingLeft=1;endFill=1;endSize=10;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0246" y="5" relative="1" as="geometry">
            <mxPoint x="618.63" y="1808.86" as="sourcePoint" />
            <mxPoint x="1045.13" y="1808.86" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-54" value="&lt;font style=&quot;font-size: 15px&quot;&gt;&lt;b&gt;PUBACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;bendable=0;shadow=0;spacingTop=-13;spacingLeft=10;endFill=1;endSize=10;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0223" y="5" width="60" relative="1" as="geometry">
            <mxPoint x="1067.5" y="1840" as="sourcePoint" />
            <mxPoint x="1493" y="1840" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-57" value="&lt;b&gt;&lt;font style=&quot;font-size: 17px&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1041" y="1870" as="sourcePoint" />
            <mxPoint x="615.5" y="1870" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-58" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1050.5" y="1995" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-59" value="&lt;font style=&quot;font-size: 15px&quot;&gt;Send unsubscribe packet (&lt;b&gt;MQTT_Unsubscribe&lt;/b&gt;)&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;snapToPoint=1;fixDash=0;backgroundOutline=0;bendable=0;noJump=1;shadow=0;spacingTop=-13;spacingLeft=1;endFill=1;endSize=10;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0116" y="5" relative="1" as="geometry">
            <mxPoint x="617.5" y="1995" as="sourcePoint" />
            <mxPoint x="1047.5" y="1995" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-60" value="&lt;font style=&quot;font-size: 15px&quot;&gt;Send unsubscribe request&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;shadow=0;spacingTop=-13;spacingLeft=1;endFill=1;endSize=10;bendable=0;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0223" y="5" width="60" relative="1" as="geometry">
            <mxPoint x="1072" y="2035" as="sourcePoint" />
            <mxPoint x="1497.5" y="2035" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-61" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1052" y="2075" as="sourcePoint" />
            <mxPoint x="622" y="2075" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-62" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1050.5" y="2115" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-63" value="&lt;font style=&quot;font-size: 15px&quot;&gt;Process incoming packet (&lt;b&gt;MQTT_ProcessLoop&lt;/b&gt;)&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;shadow=0;spacingTop=-13;spacingLeft=1;endFill=1;endSize=10;editable=1;bendable=0;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0116" y="5" relative="1" as="geometry">
            <mxPoint x="617.5" y="2115" as="sourcePoint" />
            <mxPoint x="1047.5" y="2115" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-64" value="&lt;font size=&quot;1&quot;&gt;&lt;b style=&quot;font-size: 15px&quot;&gt;UNSUBACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1497.5" y="2155" as="sourcePoint" />
            <mxPoint x="1072" y="2155" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-65" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1052" y="2195" as="sourcePoint" />
            <mxPoint x="622" y="2195" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="DUc8DNfSDvmHBgkCGU8j-7" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="615.5" y="563.75" width="430" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="DUc8DNfSDvmHBgkCGU8j-10" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;MQTT_Connect&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="756" y="545" width="140" height="80" as="geometry" />
        </mxCell>
        <mxCell id="DUc8DNfSDvmHBgkCGU8j-8" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;spacingTop=4;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1075.5" y="563.75" width="416" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="DUc8DNfSDvmHBgkCGU8j-12" value="&lt;font size=&quot;1&quot;&gt;&lt;b style=&quot;font-size: 15px&quot;&gt;CONNACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1497.5" y="655" as="sourcePoint" />
            <mxPoint x="1072" y="655" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="DUc8DNfSDvmHBgkCGU8j-13" value="&lt;span style=&quot;font-size: 15px&quot;&gt;&lt;b&gt;SUCCESS&lt;/b&gt;&lt;/span&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1052" y="685" as="sourcePoint" />
            <mxPoint x="617.5" y="685" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="DUc8DNfSDvmHBgkCGU8j-9" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;CONNECT TO MQTT BROKER&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1147" y="545" width="240" height="80" as="geometry" />
        </mxCell>
        <mxCell id="vm02eSo-aQvuqIzKR4am-35" value="&lt;div style=&quot;font-size: 16px&quot;&gt;Publish to topic&amp;nbsp;&lt;b&gt;&quot;/example/topic&quot;&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 16px&quot;&gt;&amp;nbsp;(&lt;b&gt;MQTT_Publish&lt;/b&gt;)&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;bendable=0;shadow=0;spacingTop=0;spacingLeft=1;endFill=1;endSize=10;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.0185" relative="1" as="geometry">
            <mxPoint x="618" y="1356.14" as="sourcePoint" />
            <mxPoint x="1050" y="1356.14" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="lNbkWrs1-MPvUkNCRb-6-0" value="" style="shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="617.5" y="2263.75" width="434.5" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="lNbkWrs1-MPvUkNCRb-6-1" value="MQTT_Disconnect" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="736" y="2271" width="180" height="30" as="geometry" />
        </mxCell>
        <mxCell id="lNbkWrs1-MPvUkNCRb-6-3" value="" style="shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1062" y="2264.75" width="430" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="lNbkWrs1-MPvUkNCRb-6-5" value="" style="shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="617.5" y="2375" width="874.5" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="lNbkWrs1-MPvUkNCRb-6-2" value="DISCONNECT FROM BROKER" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="1147" y="2272" width="250" height="30" as="geometry" />
        </mxCell>
        <mxCell id="lNbkWrs1-MPvUkNCRb-6-4" value="END TLS SESSION" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="972" y="2382" width="180" height="30" as="geometry" />
        </mxCell>
        <mxCell id="S6i48jD0JT7XFfxDOnhM-0" value="" style="edgeStyle=elbowEdgeStyle;elbow=horizontal;endArrow=classic;fontSize=12;fillColor=#d5e8d4;strokeColor=#82b366;rounded=1;gradientDirection=east;shape=flexArrow;strokeWidth=1;shadow=1;startArrow=none;startFill=0;comic=0;width=9;html=1;fontFamily=Courier Prime Regular;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="616.5" y="2455" as="sourcePoint" />
            <mxPoint x="507.5" y="225" as="targetPoint" />
            <Array as="points">
              <mxPoint x="447.5" y="1205" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="AagjXcsnZekNrG6nDSM5-0" value="yes" style="align=left;verticalAlign=top;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;exitX=0.489;exitY=1.002;exitDx=0;exitDy=0;strokeWidth=3;entryX=0.102;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;rounded=0;exitPerimeter=0;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" source="AagjXcsnZekNrG6nDSM5-5" edge="1">
          <mxGeometry y="16" relative="1" as="geometry">
            <mxPoint x="617.6600000000003" y="505" as="targetPoint" />
            <mxPoint x="612.5" y="405" as="sourcePoint" />
            <Array as="points" />
            <mxPoint x="-4" y="-10" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="AagjXcsnZekNrG6nDSM5-1" value="" style="shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="617.5" y="204.25" width="870" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="AagjXcsnZekNrG6nDSM5-2" value="ESTABLISH TLS SESSION WITH CLIENT CREDENTIALS &amp;amp; SERVER ROOT CA CERTIFICATE (OPENSSL)" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;fontStyle=1;html=1;spacingTop=4;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="630" y="208" width="820" height="30" as="geometry" />
        </mxCell>
        <mxCell id="AagjXcsnZekNrG6nDSM5-3" value="Retry using &lt;br&gt;exponential backoff &lt;br&gt;strategy&amp;nbsp;" style="text;resizable=1;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;fontColor=#000000;rotation=0;flipH=0;aspect=fixed;fontStyle=0;horizontal=0;opacity=40;imageAspect=1;resizeWidth=0;resizeHeight=0;absoluteArcSize=0;noLabel=0;portConstraintRotation=0;connectable=1;fixDash=0;container=0;treeFolding=0;treeMoving=0;backgroundOutline=0;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="523" y="204.08" width="60" height="150" as="geometry" />
        </mxCell>
        <mxCell id="AagjXcsnZekNrG6nDSM5-4" value="&lt;b&gt;CONNECTION STATUS&lt;/b&gt;" style="verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;entryX=1;entryY=0.5;entryDx=0;entryDy=0;html=1;shadow=0;labelBorderColor=none;spacingTop=-22;endFill=1;startFill=0;startArrow=none;" parent="vm02eSo-aQvuqIzKR4am-19" target="AagjXcsnZekNrG6nDSM5-5" edge="1">
          <mxGeometry x="0.1437" relative="1" as="geometry">
            <mxPoint x="1498.25" y="374" as="sourcePoint" />
            <mxPoint x="622.75" y="374" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="AagjXcsnZekNrG6nDSM5-5" value="if successful connection&lt;br style=&quot;font-size: 13px;&quot;&gt;attempt" style="rhombus;fillColor=#d5e8d4;strokeColor=#82b366;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;align=center;fontStyle=0;verticalAlign=middle;whiteSpace=wrap;spacingTop=5;strokeWidth=3;html=1;opacity=90;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1">
          <mxGeometry x="541.13" y="325" width="155.75" height="100" as="geometry" />
        </mxCell>
        <mxCell id="AagjXcsnZekNrG6nDSM5-6" value="no" style="edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=bottom;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingLeft=-4;strokeWidth=3;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" edge="1">
          <mxGeometry x="-0.3143" y="-12" relative="1" as="geometry">
            <mxPoint x="610.5" y="225.33333333333348" as="targetPoint" />
            <mxPoint x="578.8333333333335" y="350.3333333333335" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="578.5" y="351" />
              <mxPoint x="578.5" y="225" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="1n7Kdg4NhJ88_JfWpD8q-0" value="&amp;nbsp;LOOP INDEFINITELY " style="text;align=center;verticalAlign=middle;resizable=1;points=[];labelBackgroundColor=#b9e0a5;fontSize=21;horizontal=0;fontStyle=0;labelBorderColor=#000000;whiteSpace=wrap;absoluteArcSize=0;autosize=1;snapToPoint=1;resizeWidth=0;resizeHeight=0;backgroundOutline=0;part=0;collapsible=0;fixDash=0;fillColor=none;gradientColor=#ffffff;strokeColor=none;shadow=1;rounded=1;glass=0;comic=0;fontFamily=Courier Prime Regular;noLabel=0;html=1;" parent="vm02eSo-aQvuqIzKR4am-19" vertex="1" connectable="0">
          <mxGeometry x="481.1275999999999" y="875" width="40" height="230" as="geometry">
            <mxPoint x="-51.992399999999996" y="-311" as="offset" />
          </mxGeometry>
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
  <diagram name="plaintext" id="0FtbxX8n1ZzAMXjUlvkj">
    <mxGraphModel dx="2370" dy="1323" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="2000" pageHeight="3000" math="0" shadow="0">
      <root>
        <mxCell id="FnFRH4eCrMHcen-useDA-0" />
        <mxCell id="FnFRH4eCrMHcen-useDA-1" style="" parent="FnFRH4eCrMHcen-useDA-0" />
        <mxCell id="FnFRH4eCrMHcen-useDA-2" value="mqtt_demo_plaintext&lt;br&gt;(application)" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=#ffffff;rounded=1;fontFamily=Courier Prime Regular;fontStyle=1;fontSize=18;labelBorderColor=none;strokeWidth=4;size=50;shadow=1;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="580" y="310" width="220" height="2260" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-3" value="MQTT Library" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#fff2cc;strokeColor=#d6b656;rounded=1;fontFamily=Courier Prime Regular;fontSize=18;fontStyle=1;strokeWidth=4;shadow=1;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="1050" y="320" width="160" height="2280" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-4" value="MQTT Broker" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#f8cecc;strokeColor=#b85450;rounded=1;shadow=1;comic=0;glass=0;fontFamily=Courier Prime Regular;horizontal=1;fontSize=18;fontStyle=1;labelBackgroundColor=none;labelBorderColor=none;fontColor=#000000;perimeterSpacing=0;strokeWidth=4;size=50;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="1490" y="310" width="160" height="2260" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-5" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;fontFamily=Courier Prime Regular;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="670.5" y="260" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-6" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;fontFamily=Courier Prime Regular;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="1550.5" y="260" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-7" value="" style="shadow=0;dashed=0;html=1;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;gradientColor=#ffa500;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="1106" y="290.00000000000006" width="48" height="36.8" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-9" value="&lt;span style=&quot;white-space: normal&quot;&gt;mqtt_demo_plaintext&lt;br&gt;(application)&lt;/span&gt;" style="html=1;rounded=1;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=4;fillColor=#d5e8d4;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;shadow=1;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="580" y="2630" width="220" height="50" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-10" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;fontFamily=Courier Prime Regular;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="671.5" y="2580" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-11" value="MQTT Library" style="html=1;rounded=1;shadow=1;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=4;fillColor=#fff2cc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="1056.5" y="2630" width="145" height="50" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-12" value="MQTT Broker" style="html=1;rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#b85450;strokeWidth=4;fillColor=#f8cecc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="1492.5" y="2630" width="155" height="50" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-13" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;fontFamily=Courier Prime Regular;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="1551.5" y="2580" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-14" value="" style="shadow=0;dashed=0;html=1;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;gradientColor=#ffa500;" parent="FnFRH4eCrMHcen-useDA-1" vertex="1">
          <mxGeometry x="1105" y="2600" width="48" height="36.8" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-15" value="Squares" style="" parent="FnFRH4eCrMHcen-useDA-0" />
        <mxCell id="FnFRH4eCrMHcen-useDA-8" value="&lt;b&gt;&lt;font face=&quot;Courier Prime Regular&quot; style=&quot;font-size: 15px&quot;&gt;subscribePublishLoop&lt;/font&gt;&lt;/b&gt;" style="shape=umlFrame;whiteSpace=wrap;html=1;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#C73500;strokeWidth=5;fillColor=#fa6800;fontFamily=Lucida Console;fontSize=15;swimlaneFillColor=#ffe599;spacingLeft=0;width=190;height=40;spacingRight=8;opacity=60;fontColor=#ffffff;fontStyle=1;spacingTop=-1;" parent="FnFRH4eCrMHcen-useDA-15" vertex="1">
          <mxGeometry x="580" y="739" width="1080" height="1661" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-16" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;font-size: 19px; line-height: 101%;&quot;&gt;Subscribe to Topic&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=19;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="FnFRH4eCrMHcen-useDA-15" vertex="1">
          <mxGeometry x="690" y="970" width="880" height="350" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-17" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;font-size: 19px; line-height: 101%;&quot;&gt;Publish to Topic + Receive Incoming Publish (QoS 0)&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=19;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=5;" parent="FnFRH4eCrMHcen-useDA-15" vertex="1">
          <mxGeometry x="690.5" y="1530" width="880" height="420" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-49" value="&lt;font style=&quot;font-size: 16px&quot;&gt;&lt;span style=&quot;font-weight: 700&quot;&gt;PUBLISH&amp;nbsp;&lt;/span&gt;to topic&lt;span style=&quot;font-weight: 700&quot;&gt;&amp;nbsp;&quot;/example/topic&quot;&amp;nbsp;&lt;/span&gt;&lt;br style=&quot;font-weight: 700&quot;&gt;&lt;span style=&quot;font-weight: 700&quot;&gt;&quot;Hello World!&quot;&lt;/span&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;&lt;br&gt;&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-17" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="879.5" y="209.17000000000007" as="sourcePoint" />
            <mxPoint x="449.5" y="209.17000000000007" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-18" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;font-size: 19px; line-height: 101%;&quot;&gt;Unsubscribe From Topic&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=19;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="FnFRH4eCrMHcen-useDA-15" vertex="1">
          <mxGeometry x="690" y="1990" width="880" height="290" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-19" value="Untitled Layer" style="" parent="FnFRH4eCrMHcen-useDA-0" />
        <mxCell id="FnFRH4eCrMHcen-useDA-24" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1122" y="1150" width="17" height="110" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-20" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1122" y="1030" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="azeap0gq_PjPhaj3S33Y-6" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1121.5" y="830" width="17" height="100" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-21" value="&lt;font style=&quot;font-size: 16px&quot;&gt;Subscribe to topic filter &lt;b&gt;&quot;/example/topic&quot;&lt;/b&gt;&lt;br style=&quot;font-size: 16px&quot;&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;(&lt;/span&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;MQTT_Subscribe&lt;/b&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;)&lt;/span&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="690" y="1030" as="sourcePoint" />
            <mxPoint x="1120" y="1030" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-22" value="&lt;font style=&quot;font-size: 19px;&quot;&gt;Send subscription request&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1140" y="1070" as="sourcePoint" />
            <mxPoint x="1570" y="1070" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-23" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1120" y="1110" as="sourcePoint" />
            <mxPoint x="690" y="1110" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-25" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;Process incoming packet (&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_ProcessLoop&lt;/b&gt;)&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="690" y="1150" as="sourcePoint" />
            <mxPoint x="1120" y="1150" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-26" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;SUBACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1570" y="1190" as="sourcePoint" />
            <mxPoint x="1140" y="1190" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-27" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="680" y="1233" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-29" value="if successful subscription&amp;nbsp;&lt;br style=&quot;font-size: 13px;&quot;&gt;attempt" style="rhombus;fillColor=#d5e8d4;strokeColor=#82b366;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;opacity=90;align=center;fontStyle=0;verticalAlign=middle;whiteSpace=wrap;html=1;spacingTop=7;strokeWidth=3;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="604.75" y="1370" width="168.5" height="100" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-30" value="&lt;b&gt;no&lt;/b&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;verticalAlign=bottom;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;exitX=0;exitY=0;exitDx=0;exitDy=0;" parent="FnFRH4eCrMHcen-useDA-19" source="FnFRH4eCrMHcen-useDA-29" edge="1">
          <mxGeometry x="-0.9232" y="37" relative="1" as="geometry">
            <mxPoint x="680" y="1030" as="targetPoint" />
            <mxPoint x="647.5714285714289" y="1335.2857142857144" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="648" y="1030" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-31" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;yes&lt;/font&gt;&lt;/b&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;verticalAlign=top;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry x="-0.9677" y="11" relative="1" as="geometry">
            <mxPoint x="690" y="1530" as="targetPoint" />
            <mxPoint x="690" y="1470" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="689" y="1470" />
              <mxPoint x="689" y="1510" />
              <mxPoint x="690" y="1510" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-32" value="&lt;font style=&quot;font-size: 13px;&quot;&gt;Retry using exponential&lt;br style=&quot;font-size: 13px;&quot;&gt;backoff strategy&lt;/font&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;fontColor=#000000;opacity=40;flipV=1;rotation=-90;fontStyle=0" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="535" y="1190" width="190" height="40" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-33" value="&lt;span style=&quot;font-size: 17px;&quot;&gt;Invoke demo callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1120" y="1230" as="sourcePoint" />
            <mxPoint x="690" y="1230" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-34" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1122" y="1588.8600000000001" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-35" value="&lt;div style=&quot;font-size: 16px&quot;&gt;Publish to topic &lt;b&gt;&quot;/example/topic&quot;&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 16px&quot;&gt;&amp;nbsp;(&lt;b&gt;MQTT_Publish&lt;/b&gt;)&lt;/div&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="690" y="1590" as="sourcePoint" />
            <mxPoint x="1120" y="1590" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-36" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1120" y="1668.8600000000001" as="sourcePoint" />
            <mxPoint x="690" y="1668.8600000000001" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-37" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1122" y="1700" width="17" height="210" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-38" value="&lt;span style=&quot;font-size: 16px;&quot;&gt;Process incoming packet (&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_ProcessLoop&lt;/b&gt;)&lt;/span&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="690" y="1700" as="sourcePoint" />
            <mxPoint x="1120" y="1700" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-42" value="&lt;div style=&quot;font-size: 14px&quot;&gt;&lt;div&gt;Decode SUBACK server&amp;nbsp;&lt;/div&gt;&lt;div&gt;response status for&lt;/div&gt;&lt;div&gt;subscription attempt&lt;/div&gt;&lt;/div&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;spacingLeft=6;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;spacingTop=4;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="700" y="1250" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="700" y="1251" />
              <mxPoint x="755" y="1251" />
              <mxPoint x="755" y="1289" />
              <mxPoint x="711" y="1289" />
            </Array>
            <mxPoint x="700" y="1289" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-45" value="&lt;b style=&quot;font-size: 16px&quot;&gt;&quot;Hello World!&quot;&lt;/b&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1140" y="1629" as="sourcePoint" />
            <mxPoint x="1568" y="1628.8600000000001" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-47" value="" style="shape=mxgraph.bpmn.loop;html=1;outlineConnect=0;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;strokeWidth=5;fillColor=#ffd966;gradientColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1550" y="1500" width="50" height="50" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-48" value="Loop for &lt;br&gt;maxPublishCount" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=12;fontColor=#000000;arcSize=8;rotation=0;flipH=0;aspect=fixed;fontStyle=1;html=1;spacingRight=-8;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1430" y="1490" width="120" height="30" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-50" value="&lt;font style=&quot;font-size: 13px&quot;&gt;Log publish&lt;br&gt;&lt;div style=&quot;text-align: center&quot;&gt;&lt;span&gt;data&lt;/span&gt;&lt;/div&gt;&lt;/font&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;spacingLeft=2;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingRight=6;spacingBottom=0;spacingTop=0;jumpSize=6;endSize=6;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="700" y="1780" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="700" y="1781" />
              <mxPoint x="755" y="1781" />
              <mxPoint x="755" y="1819" />
              <mxPoint x="711" y="1819" />
            </Array>
            <mxPoint x="700" y="1819" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-51" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="680" y="1760" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-52" value="&lt;span style=&quot;font-size: 17px;&quot;&gt;Invoke demo callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1120" y="1760" as="sourcePoint" />
            <mxPoint x="690" y="1760" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-53" value="&lt;font style=&quot;font-size: 17px;&quot;&gt;Return&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="690" y="1840" as="sourcePoint" />
            <mxPoint x="1120" y="1840" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-57" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1120" y="1910" as="sourcePoint" />
            <mxPoint x="690" y="1910" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-58" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1122" y="2050" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-59" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;Send unsubscribe packet (&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_Unsubscribe&lt;/b&gt;)&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="690" y="2050" as="sourcePoint" />
            <mxPoint x="1120" y="2050" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-60" value="&lt;font style=&quot;font-size: 17px;&quot;&gt;Send unsubscribe request&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1140" y="2090" as="sourcePoint" />
            <mxPoint x="1570" y="2090" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-61" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1120" y="2130" as="sourcePoint" />
            <mxPoint x="690" y="2130" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-62" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1122" y="2170" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-63" value="&lt;span style=&quot;font-size: 16px;&quot;&gt;Process incoming packet (&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_ProcessLoop&lt;/b&gt;)&lt;/span&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="690" y="2170" as="sourcePoint" />
            <mxPoint x="1120" y="2170" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-64" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;UNSUBACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1570" y="2210" as="sourcePoint" />
            <mxPoint x="1140" y="2210" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-65" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1120" y="2250" as="sourcePoint" />
            <mxPoint x="690" y="2250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ML6_-V73zB4abbYZiB5b-1" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="690" y="2317.75" width="430" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="ML6_-V73zB4abbYZiB5b-2" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1130" y="2318.75" width="430" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="ML6_-V73zB4abbYZiB5b-3" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;DISCONNECT FROM BROKER&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1220" y="2301" width="240" height="80" as="geometry" />
        </mxCell>
        <mxCell id="ML6_-V73zB4abbYZiB5b-4" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="690" y="2429" width="870" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="ML6_-V73zB4abbYZiB5b-0" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;MQTT_Disconnect&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="809" y="2300" width="170" height="80" as="geometry" />
        </mxCell>
        <mxCell id="azeap0gq_PjPhaj3S33Y-2" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="690" y="808.75" width="430" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="azeap0gq_PjPhaj3S33Y-3" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;MQTT_Connect&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=2;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="824" y="785" width="140" height="90" as="geometry" />
        </mxCell>
        <mxCell id="azeap0gq_PjPhaj3S33Y-5" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1143" y="808.75" width="422" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="azeap0gq_PjPhaj3S33Y-7" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;CONNACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry x="-0.0233" relative="1" as="geometry">
            <mxPoint x="1570" y="900" as="sourcePoint" />
            <mxPoint x="1140" y="900" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azeap0gq_PjPhaj3S33Y-8" value="&lt;span style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/b&gt;&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1120" y="930" as="sourcePoint" />
            <mxPoint x="690" y="930" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="azeap0gq_PjPhaj3S33Y-4" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;CONNECT TO MQTT BROKER&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=3;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1215" y="785" width="240" height="90" as="geometry" />
        </mxCell>
        <mxCell id="YfVHkW0YFAxmzRVXobNK-0" value="" style="edgeStyle=elbowEdgeStyle;elbow=horizontal;endArrow=classic;html=1;fontSize=12;fillColor=#d5e8d4;strokeColor=#82b366;rounded=1;gradientDirection=east;shape=flexArrow;strokeWidth=1;shadow=1;startArrow=none;startFill=0;comic=0;width=9;fontFamily=Courier Prime Regular;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="690" y="2520" as="sourcePoint" />
            <mxPoint x="580" y="460" as="targetPoint" />
            <Array as="points">
              <mxPoint x="530" y="1400" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="C39HTfwZZFoMtIk7_jxJ-0" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;yes&lt;/font&gt;&lt;/b&gt;" style="html=1;align=left;verticalAlign=top;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;exitX=0.489;exitY=1.002;exitDx=0;exitDy=0;strokeWidth=3;entryX=0.102;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;rounded=0;exitPerimeter=0;" parent="FnFRH4eCrMHcen-useDA-19" source="C39HTfwZZFoMtIk7_jxJ-5" edge="1">
          <mxGeometry y="16" relative="1" as="geometry">
            <mxPoint x="690.1600000000003" y="740" as="targetPoint" />
            <mxPoint x="685" y="640" as="sourcePoint" />
            <Array as="points" />
            <mxPoint x="-4" y="-10" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="C39HTfwZZFoMtIk7_jxJ-1" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="690" y="439.25" width="870" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="C39HTfwZZFoMtIk7_jxJ-3" value="Retry using &lt;br&gt;exponential backoff &lt;br&gt;strategy&amp;nbsp;" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;fontColor=#000000;rotation=0;flipH=0;aspect=fixed;fontStyle=0;html=1;horizontal=0;opacity=40;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="590" y="445" width="60" height="150" as="geometry" />
        </mxCell>
        <mxCell id="C39HTfwZZFoMtIk7_jxJ-4" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;CONNECTION STATUS&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;entryX=1;entryY=0.5;entryDx=0;entryDy=0;spacingLeft=-20;endFill=1;" parent="FnFRH4eCrMHcen-useDA-19" target="C39HTfwZZFoMtIk7_jxJ-5" edge="1">
          <mxGeometry x="0.1174" y="-10" relative="1" as="geometry">
            <mxPoint x="1570.75" y="609" as="sourcePoint" />
            <mxPoint x="695.25" y="609" as="targetPoint" />
            <mxPoint x="1" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="C39HTfwZZFoMtIk7_jxJ-5" value="if successful connection&lt;br style=&quot;font-size: 13px;&quot;&gt;attempt" style="rhombus;fillColor=#d5e8d4;strokeColor=#82b366;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;opacity=90;align=center;fontStyle=0;verticalAlign=middle;whiteSpace=wrap;html=1;spacingTop=5;strokeWidth=3;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="613.63" y="560" width="155.75" height="100" as="geometry" />
        </mxCell>
        <mxCell id="C39HTfwZZFoMtIk7_jxJ-6" value="&lt;b&gt;no&lt;/b&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;verticalAlign=bottom;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingLeft=-4;strokeWidth=3;" parent="FnFRH4eCrMHcen-useDA-19" edge="1">
          <mxGeometry x="-0.3143" y="-12" relative="1" as="geometry">
            <mxPoint x="683" y="460.3333333333335" as="targetPoint" />
            <mxPoint x="651.3333333333335" y="585.3333333333335" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="651" y="586" />
              <mxPoint x="651" y="460" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ppqSC0Msy0IGyYDorGIf-0" value="&lt;div style=&quot;font-size: 20px&quot;&gt;&lt;font style=&quot;font-size: 20px&quot;&gt;&amp;nbsp;LOOP INDEFINITELY&amp;nbsp;&lt;/font&gt;&lt;/div&gt;" style="text;align=center;verticalAlign=middle;resizable=1;points=[];labelBackgroundColor=#b9e0a5;fontSize=20;horizontal=0;fontStyle=0;labelBorderColor=#000000;whiteSpace=wrap;absoluteArcSize=0;autosize=1;snapToPoint=1;resizeWidth=0;resizeHeight=0;backgroundOutline=0;part=0;collapsible=0;fixDash=0;fillColor=none;gradientColor=#ffffff;strokeColor=none;shadow=1;rounded=1;glass=0;comic=0;fontFamily=Courier Prime Regular;html=1;noLabel=0;connectable=1;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1" connectable="0">
          <mxGeometry x="559.9975999999999" y="1080" width="40" height="230" as="geometry">
            <mxPoint x="-51.992399999999996" y="-311" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-73" value="&lt;h6 style=&quot;font-size: 18px&quot;&gt;&lt;font style=&quot;font-size: 18px ; line-height: 50%&quot;&gt;ESTABLISH TCP CONNECTION (POSIX SOCKETS)&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=3;" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="890" y="405" width="450" height="110" as="geometry" />
        </mxCell>
        <mxCell id="FnFRH4eCrMHcen-useDA-71" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;CLOSE TCP CONNECTION&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1" parent="FnFRH4eCrMHcen-useDA-19" vertex="1">
          <mxGeometry x="1020" y="2411" width="220" height="80" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
  <diagram name="seralizer" id="-FmHDcjHkNG8mBJe8wG1">
    <mxGraphModel dx="1422" dy="794" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" pageWidth="2000" pageHeight="3000" math="0" shadow="0">
      <root>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-0" />
        <mxCell id="rivJliIUVVRy_KQ0KwrP-1" style="" parent="rivJliIUVVRy_KQ0KwrP-0" />
        <mxCell id="MfI2jXB5gfEXLcGXfKTv-3" value="" style="group" parent="rivJliIUVVRy_KQ0KwrP-1" vertex="1" connectable="0">
          <mxGeometry x="327" y="280" width="230" height="2840" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-2" value="mqtt_demo_serializer&lt;br&gt;(application)" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=#ffffff;rounded=1;fontFamily=Courier Prime Regular;fontStyle=1;fontSize=18;labelBorderColor=none;strokeWidth=4;size=50;shadow=1;" parent="MfI2jXB5gfEXLcGXfKTv-3" vertex="1">
          <mxGeometry y="53.515864068288046" width="230" height="2786.484135931712" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-5" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;fontFamily=Courier Prime Regular;" parent="MfI2jXB5gfEXLcGXfKTv-3" vertex="1">
          <mxGeometry x="96.5" width="35.31386751169458" height="47.72144258337106" as="geometry" />
        </mxCell>
        <mxCell id="MfI2jXB5gfEXLcGXfKTv-5" value="" style="group" parent="rivJliIUVVRy_KQ0KwrP-1" vertex="1" connectable="0">
          <mxGeometry x="1400" y="280" width="160" height="2840" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-4" value="MQTT Broker" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#f8cecc;strokeColor=#b85450;rounded=1;shadow=1;comic=0;glass=0;fontFamily=Courier Prime Regular;horizontal=1;fontSize=18;fontStyle=1;labelBackgroundColor=none;labelBorderColor=none;fontColor=#000000;perimeterSpacing=0;strokeWidth=4;size=50;" parent="MfI2jXB5gfEXLcGXfKTv-5" vertex="1">
          <mxGeometry y="53.66279069767443" width="160" height="2786.337209302326" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-6" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;fontFamily=Courier Prime Regular;" parent="MfI2jXB5gfEXLcGXfKTv-5" vertex="1">
          <mxGeometry x="61.5" width="35.82421301480652" height="48.41109866865746" as="geometry" />
        </mxCell>
        <mxCell id="LGC56P34uZmZ05ovbABF-5" value="" style="group" parent="rivJliIUVVRy_KQ0KwrP-1" vertex="1" connectable="0">
          <mxGeometry x="320" y="3170" width="239.38" height="60" as="geometry" />
        </mxCell>
        <mxCell id="LGC56P34uZmZ05ovbABF-4" value="" style="group" parent="LGC56P34uZmZ05ovbABF-5" vertex="1" connectable="0">
          <mxGeometry width="239.37999999999997" height="60" as="geometry" />
        </mxCell>
        <mxCell id="LGC56P34uZmZ05ovbABF-3" value="" style="group" parent="LGC56P34uZmZ05ovbABF-4" vertex="1" connectable="0">
          <mxGeometry width="239.37999999999997" height="60" as="geometry" />
        </mxCell>
        <mxCell id="LGC56P34uZmZ05ovbABF-2" value="" style="group" parent="LGC56P34uZmZ05ovbABF-3" vertex="1" connectable="0">
          <mxGeometry width="239.37999999999997" height="60" as="geometry" />
        </mxCell>
        <mxCell id="n6mQWAvQC8-AhaFLhP-7-0" value="" style="group" parent="LGC56P34uZmZ05ovbABF-2" vertex="1" connectable="0">
          <mxGeometry width="239.37999999999997" height="60" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-9" value="&lt;span style=&quot;white-space: normal&quot;&gt;mqtt_demo_serializer&lt;br&gt;(application)&lt;/span&gt;" style="html=1;rounded=1;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=4;fillColor=#d5e8d4;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;shadow=1;" parent="n6mQWAvQC8-AhaFLhP-7-0" vertex="1">
          <mxGeometry width="239.37999999999997" height="60" as="geometry" />
        </mxCell>
        <mxCell id="LGC56P34uZmZ05ovbABF-7" value="" style="group" parent="rivJliIUVVRy_KQ0KwrP-1" vertex="1" connectable="0">
          <mxGeometry x="1400" y="3120" width="155" height="100" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-12" value="MQTT Broker" style="html=1;rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#b85450;strokeWidth=4;fillColor=#f8cecc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;" parent="LGC56P34uZmZ05ovbABF-7" vertex="1">
          <mxGeometry y="50" width="155" height="50" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-13" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=none;fontFamily=Courier Prime Regular;" parent="LGC56P34uZmZ05ovbABF-7" vertex="1">
          <mxGeometry x="60" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-3" value="MQTT Serializer Library" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#fff2cc;strokeColor=#d6b656;rounded=1;fontFamily=Courier Prime Regular;fontSize=18;fontStyle=1;strokeWidth=4;shadow=1;size=50;" parent="rivJliIUVVRy_KQ0KwrP-1" vertex="1">
          <mxGeometry x="870" y="330" width="180" height="2800" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-7" value="" style="shadow=0;dashed=0;html=1;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;gradientColor=#ffa500;" parent="rivJliIUVVRy_KQ0KwrP-1" vertex="1">
          <mxGeometry x="936" y="295.9146640510054" width="48" height="41.81134543076672" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-11" value="MQTT Serializer&lt;br&gt;&amp;nbsp;Library" style="html=1;rounded=1;shadow=1;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=4;fillColor=#fff2cc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;" parent="rivJliIUVVRy_KQ0KwrP-1" vertex="1">
          <mxGeometry x="880" y="3166.8" width="171.5" height="53.2" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-14" value="" style="shadow=0;dashed=0;html=1;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;gradientColor=#ffa500;" parent="rivJliIUVVRy_KQ0KwrP-1" vertex="1">
          <mxGeometry x="940" y="3130" width="48" height="36.8" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-10" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=none;fontFamily=Courier Prime Regular;" parent="rivJliIUVVRy_KQ0KwrP-1" vertex="1">
          <mxGeometry x="423.25" y="3120" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-15" value="Squares" style="" parent="rivJliIUVVRy_KQ0KwrP-0" />
        <mxCell id="rivJliIUVVRy_KQ0KwrP-16" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;font-size: 19px; line-height: 101%;&quot;&gt;Subscribe to Topic&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=19;opacity=70;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="rivJliIUVVRy_KQ0KwrP-15" vertex="1">
          <mxGeometry x="440" y="1220" width="1040" height="460" as="geometry" />
        </mxCell>
        <mxCell id="wf_OWfZZievCnyhJSWEn-1" value="Subscribe to topic &lt;b style=&quot;font-size: 14px;&quot;&gt;&quot;/example/topic&quot;&lt;/b&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontFamily=Courier Prime Regular;fontSize=14;" parent="rivJliIUVVRy_KQ0KwrP-16" vertex="1">
          <mxGeometry x="365.75" y="180" width="310" height="20" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-39" value="&lt;div style=&quot;font-size: 14px&quot;&gt;Decode SUBACK server&lt;/div&gt;&lt;div style=&quot;font-size: 14px&quot;&gt;response status for&lt;/div&gt;&lt;div style=&quot;font-size: 14px&quot;&gt;subscription attempt&lt;/div&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;spacingLeft=6;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;spacingTop=4;" parent="rivJliIUVVRy_KQ0KwrP-16" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="0.5500000000000114" y="400.56" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="0.5500000000000114" y="401.56" />
              <mxPoint x="55.55000000000001" y="401.56" />
              <mxPoint x="55.55000000000001" y="439.56" />
              <mxPoint x="11.550000000000011" y="439.56" />
            </Array>
            <mxPoint x="0.5500000000000114" y="439.56" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-26" value="&lt;font&gt;&lt;font style=&quot;font-size: 17px&quot;&gt;Deserialize SUBACK&lt;br&gt;&lt;/font&gt;&lt;font style=&quot;font-weight: bold ; font-size: 15px&quot;&gt;MQTT_DeserializeAck&lt;/font&gt;&lt;br style=&quot;font-size: 17px&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;exitX=0.436;exitY=0.006;exitDx=0;exitDy=0;exitPerimeter=0;endFill=1;endSize=8;" parent="rivJliIUVVRy_KQ0KwrP-16" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="0.0019999999997253326" y="280.9000000000001" as="sourcePoint" />
            <mxPoint x="507.47" y="280" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-17" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;font-size: 19px; line-height: 101%;&quot;&gt;Publish to Topic + Keep Alive Loop (QoS 0)&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=19;opacity=70;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=5;" parent="rivJliIUVVRy_KQ0KwrP-15" vertex="1">
          <mxGeometry x="440" y="1770" width="1040" height="480" as="geometry" />
        </mxCell>
        <mxCell id="ERZfY33ZWXer7bcg2vO9-6" value="&lt;b style=&quot;font-size: 11px&quot;&gt;MQTT_Get(Publish/Pingreq)PacketSize&amp;nbsp;&lt;/b&gt;&amp;amp;&amp;nbsp;&lt;b style=&quot;font-size: 12px&quot;&gt;MQTT_Serialize(Publish/Pingreq)&lt;/b&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=top;points=[];fillColor=none;strokeColor=none;rounded=0;fontFamily=Courier Prime Regular;fontSize=11;" parent="rivJliIUVVRy_KQ0KwrP-17" vertex="1">
          <mxGeometry x="6" y="90" width="490" height="20" as="geometry" />
        </mxCell>
        <mxCell id="wf_OWfZZievCnyhJSWEn-0" value="&lt;b style=&quot;font-size: 15px;&quot;&gt;PINGREQ&amp;nbsp;&lt;/b&gt;or&amp;nbsp;&lt;b style=&quot;font-size: 15px;&quot;&gt;&quot;Hello World!&quot;&lt;/b&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontFamily=Courier Prime Regular;fontSize=15;" parent="rivJliIUVVRy_KQ0KwrP-17" vertex="1">
          <mxGeometry x="400.75" y="220" width="240" height="20" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-43" value="&lt;font style=&quot;font-size: 13px&quot;&gt;Log publish&lt;br&gt;&lt;div style=&quot;text-align: center&quot;&gt;&lt;span&gt;data&lt;/span&gt;&lt;/div&gt;&lt;/font&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;spacingLeft=2;endArrow=block;rounded=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingRight=6;spacingBottom=0;spacingTop=0;jumpSize=6;endSize=6;" parent="rivJliIUVVRy_KQ0KwrP-17" edge="1">
          <mxGeometry x="-0.012" relative="1" as="geometry">
            <mxPoint x="-0.660000000000025" y="429.71000000000004" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="-0.660000000000025" y="430.71000000000004" />
              <mxPoint x="54.339999999999975" y="430.71000000000004" />
              <mxPoint x="54.339999999999975" y="468.71000000000004" />
              <mxPoint x="10.339999999999975" y="468.71000000000004" />
            </Array>
            <mxPoint x="-0.660000000000025" y="468.71000000000004" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="pikFv08zKOAZwh3TqBCV-0" value="&lt;b style=&quot;font-size: 15px&quot;&gt;PINGRESP&amp;nbsp;&lt;/b&gt;or&amp;nbsp;&lt;b style=&quot;font-size: 15px&quot;&gt;&quot;Hello World!&quot;&lt;/b&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontFamily=Courier Prime Regular;fontSize=15;" parent="rivJliIUVVRy_KQ0KwrP-17" vertex="1">
          <mxGeometry x="395" y="280" width="250" height="20" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-19" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;font-size: 19px; line-height: 101%;&quot;&gt;Unsubscribe From Topic&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=19;opacity=70;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="rivJliIUVVRy_KQ0KwrP-15" vertex="1">
          <mxGeometry x="440" y="2300" width="1040" height="370" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-54" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;UNSUBACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1040" y="240.5" as="sourcePoint" />
            <mxPoint x="-1" y="240" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="28qKqxeIiMTqHRGJImBx-5" value="&lt;b&gt;SUCCESS&lt;/b&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontFamily=Courier Prime Regular;fontSize=16;" parent="rivJliIUVVRy_KQ0KwrP-19" vertex="1">
          <mxGeometry x="206" y="331.6100000000001" width="80" height="20" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-53" value="&lt;span style=&quot;font-size: 17px&quot;&gt;&lt;span style=&quot;font-size: 17px&quot;&gt;Deserialize UNSUBACK&lt;br&gt;&lt;/span&gt;&lt;b style=&quot;font-size: 17px&quot;&gt;MQTT_DeserializeAck&lt;br&gt;&lt;/b&gt;&lt;/span&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;exitX=0.544;exitY=-0.023;exitDx=0;exitDy=0;exitPerimeter=0;endFill=1;endSize=8;" parent="rivJliIUVVRy_KQ0KwrP-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="-0.0019999999998390194" y="279.8070300000004" as="sourcePoint" />
            <mxPoint x="506.12" y="281.1100000000001" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="P0bdoLIs7rcoHP54zoE_-0" value="&lt;h6 style=&quot;line-height: 100%; font-size: 19px;&quot;&gt;&lt;font style=&quot;font-size: 19px; line-height: 101%;&quot;&gt;Connect to MQTT Broker&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=19;opacity=70;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="rivJliIUVVRy_KQ0KwrP-15" vertex="1">
          <mxGeometry x="440" y="770" width="1040" height="360" as="geometry" />
        </mxCell>
        <mxCell id="vDDtwwgOwoGW0vQ90hYd-0" value="&lt;font style=&quot;font-size: 17px&quot;&gt;Send &lt;b&gt;CONNECT &lt;/b&gt;Over TCP Connection&amp;nbsp;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="P0bdoLIs7rcoHP54zoE_-0" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="-0.5" y="190" as="sourcePoint" />
            <mxPoint x="1039.5" y="190" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="-1_lkQEhT6mmCxKFSHyO-0" value="&lt;h6 style=&quot;line-height: 100% ; font-size: 19px&quot;&gt;&lt;font style=&quot;font-size: 19px ; line-height: 101%&quot;&gt;Disconnect From MQTT Broker&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=19;opacity=70;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="rivJliIUVVRy_KQ0KwrP-15" vertex="1">
          <mxGeometry x="440" y="2730" width="1040" height="220" as="geometry" />
        </mxCell>
        <mxCell id="-1_lkQEhT6mmCxKFSHyO-1" value="&lt;font style=&quot;font-size: 17px&quot;&gt;Send &lt;b&gt;DISCONNECT &lt;/b&gt;Over TCP Connection&lt;br style=&quot;font-size: 17px&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="-1_lkQEhT6mmCxKFSHyO-0" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint y="200" as="sourcePoint" />
            <mxPoint x="1038.5000000000005" y="200" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="bN_tCySS1zcQl4EDL9eE-7" value="&lt;font style=&quot;font-size: 17px&quot;&gt;&lt;font style=&quot;font-size: 17px&quot;&gt;Serialize Disconnect Packet&lt;br&gt;&lt;/font&gt;&lt;span style=&quot;font-size: 15px&quot;&gt;&lt;b style=&quot;font-size: 15px&quot;&gt;MQTT_GetDisconnectPacketSize &lt;/b&gt;&amp;amp; &lt;b style=&quot;font-size: 15px&quot;&gt;MQTT_SerializeDisconnect&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=1;fontSize=18;fontFamily=Courier Prime Regular;labelBackgroundColor=none;endArrow=classic;startArrow=oval;startSize=8;endFill=1;endSize=8;" parent="-1_lkQEhT6mmCxKFSHyO-0" vertex="1">
          <mxGeometry x="-1" y="60" width="510" height="50" as="geometry" />
        </mxCell>
        <mxCell id="bN_tCySS1zcQl4EDL9eE-9" value="&lt;font style=&quot;font-size: 15px&quot;&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;" parent="-1_lkQEhT6mmCxKFSHyO-0" edge="1">
          <mxGeometry x="0.6279" y="-10" relative="1" as="geometry">
            <mxPoint x="0.37000000000000455" y="84" as="sourcePoint" />
            <mxPoint x="503.37" y="84" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-20" value="Untitled Layer" style="" parent="rivJliIUVVRy_KQ0KwrP-0" />
        <mxCell id="bN_tCySS1zcQl4EDL9eE-5" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="951" y="1035" width="17" height="67" as="geometry" />
        </mxCell>
        <mxCell id="bN_tCySS1zcQl4EDL9eE-4" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="950" y="851" width="17" height="59" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-21" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="949" y="1280" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-22" value="&lt;font style=&quot;font-size: 15px&quot;&gt;Serialize Subscribe Packet&lt;br&gt;&lt;b&gt;MQTT_GetSubscribePacketSize &lt;/b&gt;&amp;amp; &lt;b style=&quot;font-size: 15px&quot;&gt;MQTT_SerializeSubscribe&lt;/b&gt;&lt;br style=&quot;font-size: 15px&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;labelPosition=center;verticalLabelPosition=middle;align=center;endFill=1;endSize=8;spacingTop=0;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry x="-0.0138" relative="1" as="geometry">
            <mxPoint x="440" y="1280" as="sourcePoint" />
            <mxPoint x="947" y="1280" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-24" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="947" y="1360" as="sourcePoint" />
            <mxPoint x="440" y="1360" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-25" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="951" y="1500" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-27" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;SUBACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1479" y="1460" as="sourcePoint" />
            <mxPoint x="440" y="1460" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-33" value="" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;horizontal=0;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry x="1" y="32" relative="1" as="geometry">
            <mxPoint x="949" y="1580" as="sourcePoint" />
            <mxPoint x="440" y="1580" as="targetPoint" />
            <mxPoint x="-30" y="-22" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-34" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="949" y="1858.8600000000001" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-35" value="&lt;font style=&quot;line-height: 120%&quot;&gt;&lt;font style=&quot;font-size: 14px&quot;&gt;Serialize PUBLISH or PINGREQ (alternate every iteration)&lt;/font&gt;&lt;br style=&quot;font-size: 15px&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;spacingLeft=-7;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry x="0.0256" relative="1" as="geometry">
            <mxPoint x="440" y="1860" as="sourcePoint" />
            <mxPoint x="947" y="1860" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-36" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="947" y="1938.8600000000001" as="sourcePoint" />
            <mxPoint x="440" y="1939" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-37" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="949.51" y="2100" width="17" height="70" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-41" value="" style="shape=mxgraph.bpmn.loop;html=1;outlineConnect=0;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;strokeWidth=5;fillColor=#ffd966;gradientColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="1460" y="1730" width="50" height="50" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-42" value="Loop for &lt;br&gt;maxLoopCount" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=12;fontColor=#000000;arcSize=8;rotation=0;flipH=0;aspect=fixed;fontStyle=1;html=1;spacingRight=-8;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="1365" y="1730" width="90" height="30" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-48" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="949" y="2360" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-49" value="&lt;font style=&quot;font-size: 14px&quot;&gt;&lt;font style=&quot;font-size: 17px&quot;&gt;Serialize Unsubscribe Packet&lt;/font&gt;&lt;br&gt;&lt;b&gt;MQTT_GetUnsubscribePacketSize&amp;nbsp;&lt;/b&gt;&lt;span&gt;&amp;amp; &lt;/span&gt;&lt;b&gt;MQTT_SerializeUnsubscribe&lt;/b&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="440" y="2360" as="sourcePoint" />
            <mxPoint x="947" y="2360" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-51" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="947" y="2440" as="sourcePoint" />
            <mxPoint x="440" y="2440" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-52" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="949.5" y="2581.61" width="17" height="70" as="geometry" />
        </mxCell>
        <mxCell id="5nlmwgvOe0rI-QtOf-hx-3" value="" style="shape=mxgraph.bpmn.loop;html=1;outlineConnect=0;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;strokeWidth=5;fillColor=#ffd966;gradientColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="1460" y="1180" width="50" height="50" as="geometry" />
        </mxCell>
        <mxCell id="5nlmwgvOe0rI-QtOf-hx-2" value="if server rejects subscription request,&amp;nbsp;&lt;br&gt;&amp;nbsp; &amp;nbsp;send PINGREQ and retry using exponential&lt;br&gt;&lt;div style=&quot;text-align: left&quot;&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;backoff strategy&lt;/span&gt;&lt;/div&gt;" style="text;resizable=1;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=12;fontColor=#000000;arcSize=8;rotation=0;flipH=0;aspect=fixed;fontStyle=1;html=1;spacingRight=-8;portConstraintRotation=0;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="1490" y="1170" width="320" height="50" as="geometry" />
        </mxCell>
        <mxCell id="O70xP3_XndK0jdIPvU3y-1" value="&lt;font style=&quot;font-size: 17px&quot;&gt;Send &lt;b&gt;SUBSCRIBE &lt;/b&gt;Over TCP Connection&amp;nbsp;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="440" y="1400" as="sourcePoint" />
            <mxPoint x="1480" y="1400" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-18" value="&lt;font style=&quot;font-size: 16px&quot;&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;PINGRESP &lt;/b&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;or&lt;/span&gt;&lt;b style=&quot;font-size: 16px&quot;&gt; PUBLISH&lt;/b&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;to topic&lt;/span&gt;&lt;b style=&quot;font-size: 16px&quot;&gt; &quot;/example/topic&quot;&amp;nbsp;&lt;/b&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1480" y="2050" as="sourcePoint" />
            <mxPoint x="441" y="2050" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-38" value="&lt;font&gt;Deserialize PUBLISH or PINGRESP&lt;br&gt;&lt;/font&gt;&lt;font style=&quot;font-weight: bold ; font-size: 15px&quot;&gt;MQTT_DeserializePublish &lt;/font&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;or &lt;b&gt;MQTT_DeserializeAck&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="440.51" y="2100" as="sourcePoint" />
            <mxPoint x="947.51" y="2100" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="pQYzVz35Va2afDXNuPBo-5" value="" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="947.51" y="2170" as="sourcePoint" />
            <mxPoint x="440" y="2169" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="pQYzVz35Va2afDXNuPBo-1" value="&lt;font style=&quot;font-size: 17px&quot;&gt;Send &lt;b&gt;PUBLISH&lt;/b&gt;/&lt;b&gt;PINGREQ &lt;/b&gt;Over TCP Connection&lt;br style=&quot;font-size: 17px&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="440" y="1990" as="sourcePoint" />
            <mxPoint x="1480" y="1990" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-55" value="" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="944.5" y="2651.61" as="sourcePoint" />
            <mxPoint x="440" y="2653" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="EUleUGTEFJAidxwqWkZh-3" value="&lt;font style=&quot;font-size: 15px&quot;&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;exitX=-0.003;exitY=0.729;exitDx=0;exitDy=0;exitPerimeter=0;endFill=1;endSize=8;" parent="rivJliIUVVRy_KQ0KwrP-20" source="EUleUGTEFJAidxwqWkZh-5" edge="1">
          <mxGeometry x="0.6279" y="-10" relative="1" as="geometry">
            <mxPoint x="520" y="850" as="sourcePoint" />
            <mxPoint x="950" y="850" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="EUleUGTEFJAidxwqWkZh-9" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="950" y="911" as="sourcePoint" />
            <mxPoint x="440" y="911" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="bN_tCySS1zcQl4EDL9eE-2" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="951" y="1105" as="sourcePoint" />
            <mxPoint x="441" y="1105" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="bN_tCySS1zcQl4EDL9eE-8" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;gradientColor=none;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="950.63" y="2815" width="17" height="59" as="geometry" />
        </mxCell>
        <mxCell id="bN_tCySS1zcQl4EDL9eE-10" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="950.63" y="2875" as="sourcePoint" />
            <mxPoint x="440" y="2875" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="sMonvuFgvrNRkaWBudRQ-0" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;CONNACK&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1476" y="1000" as="sourcePoint" />
            <mxPoint x="440" y="1000" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="EUleUGTEFJAidxwqWkZh-5" value="&lt;pre&gt;&lt;font face=&quot;Courier Prime Regular&quot;&gt;&lt;font style=&quot;font-size: 17px&quot;&gt;&lt;font style=&quot;font-size: 17px&quot;&gt;Serialize Connect Packet&lt;br&gt;&lt;/font&gt;&lt;/font&gt;&lt;font style=&quot;font-size: 16px&quot;&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;MQTT_GetConnectPacketSize &lt;/b&gt;&amp;amp; &lt;b style=&quot;font-size: 16px&quot;&gt;MQTT_SerializeConnect&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/pre&gt;" style="text;html=1;resizable=1;autosize=1;align=center;verticalAlign=bottom;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=16;fontFamily=Courier Prime Regular;spacingTop=57;resizeWidth=1;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="441" y="750" width="490" height="140" as="geometry" />
        </mxCell>
        <mxCell id="EUleUGTEFJAidxwqWkZh-8" value="&lt;span style=&quot;font-size: 14px&quot;&gt;&lt;font style=&quot;font-size: 17px&quot;&gt;Deserialize CONNACK&lt;/font&gt;&lt;br&gt;&lt;span&gt;&lt;b&gt;MQTT_DeserializeAck&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;" style="text;html=1;resizable=1;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=18;fontFamily=Courier Prime Regular;spacingTop=0;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="581" y="1010" width="210" height="50" as="geometry" />
        </mxCell>
        <mxCell id="Cx0S366s8ILWimbnn2gX-0" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="443.5" y="2990" width="1028" height="40" as="geometry" />
        </mxCell>
        <mxCell id="DhRRyJF4jDgc8BtgN6F5-0" value="" style="edgeStyle=elbowEdgeStyle;elbow=horizontal;endArrow=classic;html=1;fontSize=12;fillColor=#d5e8d4;strokeColor=#82b366;rounded=1;gradientDirection=east;shape=flexArrow;strokeWidth=1;shadow=1;startArrow=none;startFill=0;comic=0;width=9;fontFamily=Courier Prime Regular;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="430" y="3080" as="sourcePoint" />
            <mxPoint x="330" y="462.99999999999994" as="targetPoint" />
            <Array as="points">
              <mxPoint x="290" y="1717" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="a82FmOuunxgbfl7HqpFH-7" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;yes&lt;/font&gt;&lt;/b&gt;" style="html=1;align=left;verticalAlign=top;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;exitX=0.489;exitY=1.002;exitDx=0;exitDy=0;strokeWidth=3;entryX=0.102;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;rounded=0;exitPerimeter=0;" parent="rivJliIUVVRy_KQ0KwrP-20" source="a82FmOuunxgbfl7HqpFH-11" edge="1">
          <mxGeometry y="16" relative="1" as="geometry">
            <mxPoint x="439.7800000000003" y="750" as="targetPoint" />
            <mxPoint x="434.62" y="650" as="sourcePoint" />
            <Array as="points" />
            <mxPoint x="-4" y="-10" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="a82FmOuunxgbfl7HqpFH-8" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="440" y="446.05" width="1030" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="a82FmOuunxgbfl7HqpFH-9" value="Retry using &lt;br&gt;exponential backoff &lt;br&gt;strategy&amp;nbsp;" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;fontColor=#000000;rotation=0;flipH=0;aspect=fixed;fontStyle=0;html=1;horizontal=0;opacity=40;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="343.62" y="452.19999999999993" width="60" height="150" as="geometry" />
        </mxCell>
        <mxCell id="a82FmOuunxgbfl7HqpFH-10" value="&lt;font style=&quot;font-size: 17px;&quot;&gt;&lt;b style=&quot;font-size: 17px;&quot;&gt;CONNECTION STATUS&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=classic;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;entryX=1;entryY=0.5;entryDx=0;entryDy=0;spacingLeft=-13;endFill=1;" parent="rivJliIUVVRy_KQ0KwrP-20" target="a82FmOuunxgbfl7HqpFH-11" edge="1">
          <mxGeometry x="0.1174" y="-10" relative="1" as="geometry">
            <mxPoint x="1480" y="620" as="sourcePoint" />
            <mxPoint x="525.25" y="615.8" as="targetPoint" />
            <mxPoint x="1" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="a82FmOuunxgbfl7HqpFH-11" value="if successful connection&lt;br style=&quot;font-size: 13px;&quot;&gt;attempt" style="rhombus;fillColor=#d5e8d4;strokeColor=#82b366;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;opacity=90;align=center;fontStyle=0;verticalAlign=middle;whiteSpace=wrap;html=1;spacingTop=5;strokeWidth=3;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="363.25" y="570" width="155.75" height="100" as="geometry" />
        </mxCell>
        <mxCell id="a82FmOuunxgbfl7HqpFH-12" value="&lt;b&gt;no&lt;/b&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;verticalAlign=bottom;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingLeft=-4;strokeWidth=3;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry x="-0.3143" y="-12" relative="1" as="geometry">
            <mxPoint x="432.62" y="469.6666666666667" as="targetPoint" />
            <mxPoint x="400.9533333333335" y="594.6666666666667" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="400.62" y="596" />
              <mxPoint x="400.62" y="469.99999999999994" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="a82FmOuunxgbfl7HqpFH-13" value="&lt;h6 style=&quot;font-size: 18px&quot;&gt;&lt;font style=&quot;font-size: 18px ; line-height: 50%&quot;&gt;ESTABLISH TCP CONNECTION (POSIX SOCKETS)&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="720" y="411.79999999999995" width="450" height="110" as="geometry" />
        </mxCell>
        <mxCell id="DiaNxvsJ__ZSLBwM-OEB-0" value="&lt;div style=&quot;font-size: 20px&quot;&gt;&amp;nbsp;LOOP INDEFINITELY&amp;nbsp;&lt;/div&gt;" style="text;align=center;verticalAlign=middle;resizable=1;points=[];labelBackgroundColor=#b9e0a5;fontSize=20;horizontal=0;fontStyle=0;labelBorderColor=#000000;whiteSpace=wrap;absoluteArcSize=0;autosize=1;snapToPoint=1;resizeWidth=0;resizeHeight=0;backgroundOutline=0;part=0;collapsible=0;fixDash=0;fillColor=none;gradientColor=#ffffff;strokeColor=none;shadow=1;rounded=1;glass=0;comic=0;fontFamily=Courier Prime Regular;html=1;noLabel=0;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1" connectable="0">
          <mxGeometry x="323.2475999999999" y="1200" width="40" height="230" as="geometry">
            <mxPoint x="-51.992399999999996" y="-311" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="rivJliIUVVRy_KQ0KwrP-61" value="&lt;h6 style=&quot;font-size: 18px;&quot;&gt;&lt;font style=&quot;font-size: 18px; line-height: 50%;&quot;&gt;CLOSE TCP CONNECTION&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=-16;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="846.5" y="2970" width="230" height="100" as="geometry" />
        </mxCell>
        <mxCell id="LGC56P34uZmZ05ovbABF-9" value="&lt;font style=&quot;font-size: 17px&quot;&gt;Send &lt;b&gt;UNSUBSCRIBE &lt;/b&gt;Over TCP Connection&lt;br style=&quot;font-size: 17px&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="440" y="2490" as="sourcePoint" />
            <mxPoint x="1478.5" y="2490" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="n6mQWAvQC8-AhaFLhP-7-1" value="&lt;pre&gt;&lt;br&gt;&lt;/pre&gt;" style="text;html=1;resizable=1;autosize=1;align=center;verticalAlign=bottom;points=[];fillColor=none;strokeColor=none;rounded=0;fontSize=16;fontFamily=Courier Prime Regular;spacingTop=57;resizeWidth=1;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="727.63" y="1150" width="20" height="110" as="geometry" />
        </mxCell>
        <mxCell id="28qKqxeIiMTqHRGJImBx-3" value="&lt;b&gt;SUCCESS&lt;/b&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;fontSize=16;fontFamily=Courier Prime Regular;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="646" y="1560" width="80" height="20" as="geometry" />
        </mxCell>
        <mxCell id="28qKqxeIiMTqHRGJImBx-4" value="&lt;b&gt;SUCCESS&lt;/b&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;fontFamily=Courier Prime Regular;fontSize=16;" parent="rivJliIUVVRy_KQ0KwrP-20" vertex="1">
          <mxGeometry x="646.51" y="2150" width="80" height="20" as="geometry" />
        </mxCell>
        <mxCell id="EUleUGTEFJAidxwqWkZh-7" value="&lt;font style=&quot;font-size: 15px&quot;&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=classic;startSize=8;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;labelBackgroundColor=none;endFill=1;endSize=8;spacingTop=82;" parent="rivJliIUVVRy_KQ0KwrP-20" edge="1">
          <mxGeometry x="0.6279" y="-10" relative="1" as="geometry">
            <mxPoint x="439.5" y="1035" as="sourcePoint" />
            <mxPoint x="949.5" y="1035" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
  <diagram name="subscription_manager" id="ApWH0TvmhgPFRQBWoIIR">
    <mxGraphModel dx="1422" dy="4794" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="2000" pageHeight="4000" math="0" shadow="0">
      <root>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-0" />
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-1" style="" parent="BZFjzN4WhaS3GjpnRGDo-0" />
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-2" value="&lt;font style=&quot;font-size: 12px&quot;&gt;mqtt_demo_subscription_manager&lt;br&gt;&lt;/font&gt;(application)" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;fillColor=#d5e8d4;strokeColor=#82b366;gradientColor=#ffffff;rounded=1;fontFamily=Courier Prime Regular;fontStyle=1;fontSize=18;labelBorderColor=none;strokeWidth=4;size=50;shadow=1;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="435" y="-3890" width="230" height="3610" as="geometry" />
        </mxCell>
        <mxCell id="bF2CbVyi3QuABcujOXXO-0" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px&quot;&gt;yes&lt;/font&gt;&lt;/b&gt;" style="html=1;align=left;verticalAlign=top;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;exitX=0.489;exitY=1.002;exitDx=0;exitDy=0;strokeWidth=3;entryX=0.102;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;rounded=0;exitPerimeter=0;" parent="BZFjzN4WhaS3GjpnRGDo-2" source="uLoVsa3FR_vYa0YLJ3pJ-22" target="BZFjzN4WhaS3GjpnRGDo-8" edge="1">
          <mxGeometry y="16" relative="1" as="geometry">
            <mxPoint x="115.57499999999982" y="410" as="targetPoint" />
            <mxPoint x="115" y="330" as="sourcePoint" />
            <Array as="points" />
            <mxPoint x="-4" y="-10" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-3" value="MQTT Library" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#fff2cc;strokeColor=#d6b656;rounded=1;fontFamily=Courier Prime Regular;fontSize=18;fontStyle=1;strokeWidth=4;shadow=1;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="1071" y="-3890" width="166" height="3620" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-4" value="MQTT Broker" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;gradientColor=#ffffff;fillColor=#f8cecc;strokeColor=#b85450;rounded=1;shadow=1;comic=0;glass=0;fontFamily=Courier Prime Regular;horizontal=1;fontSize=18;fontStyle=1;labelBackgroundColor=none;labelBorderColor=none;fontColor=#000000;perimeterSpacing=0;strokeWidth=4;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="1352.5" y="-3890" width="160" height="3610" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-5" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;fontFamily=Courier Prime Regular;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="531.5" y="-3940" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-6" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;fontFamily=Courier Prime Regular;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="1414" y="-3940" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-7" value="" style="shadow=0;dashed=0;html=1;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;gradientColor=#ffa500;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="1130" y="-3926.7999999999997" width="48" height="36.8" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-8" value="&lt;b style=&quot;font-size: 14px;&quot;&gt;subscribePublishLoop&lt;/b&gt;" style="shape=umlFrame;whiteSpace=wrap;html=1;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#C73500;strokeWidth=5;fillColor=#fa6800;fontFamily=Courier Prime Regular;fontSize=14;swimlaneFillColor=#ffe599;spacingLeft=0;width=190;height=40;spacingRight=8;opacity=60;fontColor=#ffffff;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="440" y="-3480" width="1080" height="3020" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-9" value="&lt;font style=&quot;white-space: normal ; font-size: 12px&quot;&gt;mqtt_demo_subscription_manager&lt;br&gt;&lt;/font&gt;&lt;span style=&quot;white-space: normal&quot;&gt;(application)&lt;/span&gt;" style="html=1;rounded=1;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=4;fillColor=#d5e8d4;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;shadow=1;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="430" y="-230" width="230" height="50" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-10" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;fontFamily=Courier Prime Regular;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="531.5" y="-280" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-11" value="MQTT Library" style="html=1;rounded=1;shadow=1;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=4;fillColor=#fff2cc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="1081.5" y="-230" width="145" height="50" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-12" value="MQTT Broker" style="html=1;rounded=1;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#b85450;strokeWidth=4;fillColor=#f8cecc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="1357" y="-230" width="155" height="50" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-13" value="" style="aspect=fixed;html=1;points=[];align=center;image;fontSize=12;image=img/lib/mscae/Person.svg;rounded=1;shadow=0;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;gradientColor=#ffffff;imageBackground=#ffffff;fontFamily=Courier Prime Regular;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="1415" y="-280" width="37" height="50" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-14" value="" style="shadow=0;dashed=0;html=1;strokeColor=#d79b00;fillColor=#ffcd28;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.library;rounded=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;gradientColor=#ffa500;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="1130" y="-270" width="48" height="36.8" as="geometry" />
        </mxCell>
        <mxCell id="sVINP5uOxp1ypTq-n9Nk-0" value="MQTT Subscription&lt;br&gt;Manager" style="shape=umlLifeline;perimeter=lifelinePerimeter;whiteSpace=wrap;html=1;container=1;collapsible=0;recursiveResize=0;outlineConnect=0;fillColor=#dae8fc;strokeColor=#6c8ebf;rounded=1;fontFamily=Courier Prime Regular;fontSize=18;fontStyle=1;strokeWidth=4;shadow=1;size=50;gradientColor=#ffffff;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="733" y="-3890" width="200" height="3630" as="geometry" />
        </mxCell>
        <mxCell id="r-mVnWAxHNfgWAGtNI82-1" value="" style="outlineConnect=0;fontColor=#232F3E;gradientColor=none;fillColor=#BC1356;strokeColor=none;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;pointerEvents=1;shape=mxgraph.aws4.inventory;fontFamily=Courier Prime Regular;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="812" y="-3936" width="46" height="46" as="geometry" />
        </mxCell>
        <mxCell id="tjGZuQ-W60TIh5WkME-4-14" value="&lt;span style=&quot;white-space: normal&quot;&gt;&lt;font style=&quot;font-size: 18px&quot;&gt;MQTT Subscription Manager&lt;/font&gt;&lt;/span&gt;" style="html=1;rounded=1;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=4;fillColor=#dae8fc;gradientColor=#ffffff;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;labelBorderColor=none;shadow=1;arcSize=5;align=center;verticalAlign=middle;whiteSpace=wrap;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="733" y="-230" width="200" height="50" as="geometry" />
        </mxCell>
        <mxCell id="tjGZuQ-W60TIh5WkME-4-15" value="" style="outlineConnect=0;fontColor=#232F3E;gradientColor=none;fillColor=#BC1356;strokeColor=none;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;pointerEvents=1;shape=mxgraph.aws4.inventory;fontFamily=Courier Prime Regular;" parent="BZFjzN4WhaS3GjpnRGDo-1" vertex="1">
          <mxGeometry x="810" y="-280" width="46" height="46" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-15" value="Squares" style="" parent="BZFjzN4WhaS3GjpnRGDo-0" />
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-16" value="&lt;h6 style=&quot;line-height: 100%; font-size: 20px;&quot;&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Wildcard Temperature Topic Filter&amp;nbsp;&lt;/span&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=20;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="BZFjzN4WhaS3GjpnRGDo-15" vertex="1">
          <mxGeometry x="550" y="-3350" width="880" height="950" as="geometry" />
        </mxCell>
        <mxCell id="NZHEbYD6bpdYkar-L4s--0" value="&lt;font style=&quot;font-size: 14px;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;Register temperature callback&lt;/span&gt;&lt;br style=&quot;font-size: 14px;&quot;&gt;&lt;br style=&quot;font-size: 14px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=14;fontColor=#000000;labelBackgroundColor=none;entryX=-0.196;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;spacingLeft=2;spacingTop=1;" parent="BZFjzN4WhaS3GjpnRGDo-16" target="BZFjzN4WhaS3GjpnRGDo-27" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint y="60" as="sourcePoint" />
            <mxPoint x="270" y="60" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="NZHEbYD6bpdYkar-L4s--1" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-16" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="270" y="140" as="sourcePoint" />
            <mxPoint y="140.0000000000001" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-41" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-16" vertex="1">
          <mxGeometry x="273" y="760" width="17" height="90" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-45" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-16" vertex="1">
          <mxGeometry x="-7" y="850" width="17" height="60" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-47" value="&lt;span style=&quot;font-size: 16px;&quot;&gt;Invoke temperature callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-16" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="279" y="850" as="sourcePoint" />
            <mxPoint y="850" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-40" value="Send publish message&amp;nbsp;&lt;br&gt;&amp;amp; process PUBACK" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-16" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="613" y="620" as="sourcePoint" />
            <mxPoint x="880" y="620" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-18" value="&lt;h6 style=&quot;line-height: 100%; font-size: 20px;&quot;&gt;&lt;font style=&quot;font-size: 20px; line-height: 101%;&quot;&gt;Unsubscribe From Topics&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=20;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="BZFjzN4WhaS3GjpnRGDo-15" vertex="1">
          <mxGeometry x="550" y="-750" width="880" height="150" as="geometry" />
        </mxCell>
        <mxCell id="tjGZuQ-W60TIh5WkME-4-8" value="&lt;h6 style=&quot;line-height: 100%; font-size: 20px;&quot;&gt;&lt;font style=&quot;font-size: 20px; line-height: 101%;&quot;&gt;Remove Callbacks&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=20;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="BZFjzN4WhaS3GjpnRGDo-15" vertex="1">
          <mxGeometry x="550" y="-1100.43" width="880" height="300.43" as="geometry" />
        </mxCell>
        <mxCell id="tjGZuQ-W60TIh5WkME-4-9" value="&lt;font style=&quot;font-size: 15px;&quot;&gt;&lt;font style=&quot;font-size: 15px;&quot;&gt;&lt;font style=&quot;font-size: 15px;&quot;&gt;Remove temperature callback&lt;/font&gt;&lt;/font&gt;&lt;br style=&quot;font-size: 15px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;labelBackgroundColor=none;spacingRight=7;spacingTop=-3;" parent="tjGZuQ-W60TIh5WkME-4-8" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint y="80.43000000000006" as="sourcePoint" />
            <mxPoint x="270" y="80.43000000000006" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-117" value="&lt;font style=&quot;font-size: 15px;&quot;&gt;&lt;font style=&quot;font-size: 15px;&quot;&gt;&lt;font style=&quot;font-size: 15px;&quot;&gt;Remove humidity callback&lt;/font&gt;&lt;/font&gt;&lt;br style=&quot;font-size: 15px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;labelBackgroundColor=none;spacingRight=7;spacingTop=-4;" parent="tjGZuQ-W60TIh5WkME-4-8" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="4.547473508864641e-13" y="160.8599999999998" as="sourcePoint" />
            <mxPoint x="269.99999999999955" y="160.8599999999998" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-50" value="&lt;h6 style=&quot;line-height: 100%; font-size: 20px;&quot;&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Humidity Topic Filter&lt;/span&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=20;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="BZFjzN4WhaS3GjpnRGDo-15" vertex="1">
          <mxGeometry x="550" y="-2380" width="880" height="590" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-51" value="&lt;font style=&quot;font-size: 15px;&quot;&gt;&lt;span style=&quot;font-size: 15px;&quot;&gt;Register humidity callback&lt;/span&gt;&lt;br style=&quot;font-size: 15px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;labelBackgroundColor=none;entryX=-0.196;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;spacingLeft=2;spacingTop=1;" parent="ikClsNS6Sux03Jtz0XLd-50" target="ikClsNS6Sux03Jtz0XLd-66" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint y="60" as="sourcePoint" />
            <mxPoint x="270" y="60" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-52" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="ikClsNS6Sux03Jtz0XLd-50" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="270" y="140" as="sourcePoint" />
            <mxPoint y="140.0000000000001" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-78" value="&lt;h6 style=&quot;line-height: 100%; font-size: 20px;&quot;&gt;&lt;font style=&quot;font-size: 20px;&quot;&gt;&lt;font style=&quot;font-size: 20px;&quot;&gt;Precipitation Topic Filter&lt;/font&gt;&lt;/font&gt;&lt;/h6&gt;" style="swimlane;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#56517e;strokeWidth=5;fillColor=#d0cee2;fontFamily=Courier Prime Regular;fontSize=20;opacity=50;fontStyle=0;swimlaneFillColor=#ccccff;startSize=29;verticalAlign=middle;whiteSpace=wrap;html=1;gradientColor=#ffffff;spacingBottom=4;" parent="BZFjzN4WhaS3GjpnRGDo-15" vertex="1">
          <mxGeometry x="550" y="-1760" width="880" height="590" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-79" value="&lt;font style=&quot;font-size: 14px;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;Register precipitation callback&lt;/span&gt;&lt;br style=&quot;font-size: 14px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=14;fontColor=#000000;labelBackgroundColor=none;entryX=-0.196;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;spacingLeft=2;spacingTop=1;" parent="ikClsNS6Sux03Jtz0XLd-78" target="ikClsNS6Sux03Jtz0XLd-84" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint y="70" as="sourcePoint" />
            <mxPoint x="270" y="60" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-80" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="ikClsNS6Sux03Jtz0XLd-78" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="270" y="140" as="sourcePoint" />
            <mxPoint y="140.0000000000001" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-19" value="Untitled Layer" style="" parent="BZFjzN4WhaS3GjpnRGDo-0" />
        <mxCell id="ikClsNS6Sux03Jtz0XLd-69" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="540" y="-2040" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="a-5EgAYpV5X_EjewJGmN-14" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-2750" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="a-5EgAYpV5X_EjewJGmN-20" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-1490" width="17" height="90" as="geometry" />
        </mxCell>
        <mxCell id="a-5EgAYpV5X_EjewJGmN-17" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-1560" width="17" height="40" as="geometry" />
        </mxCell>
        <mxCell id="a-5EgAYpV5X_EjewJGmN-16" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-680" width="17" height="40" as="geometry" />
        </mxCell>
        <mxCell id="FXzb3IZCqtvPhRskhGf3-0" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-2900" width="17" height="40" as="geometry" />
        </mxCell>
        <mxCell id="a-5EgAYpV5X_EjewJGmN-10" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-2190" width="17" height="40" as="geometry" />
        </mxCell>
        <mxCell id="a-5EgAYpV5X_EjewJGmN-11" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-2120" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="FXzb3IZCqtvPhRskhGf3-3" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-1305" width="17" height="40" as="geometry" />
        </mxCell>
        <mxCell id="FXzb3IZCqtvPhRskhGf3-2" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-1930" width="17" height="40" as="geometry" />
        </mxCell>
        <mxCell id="FXzb3IZCqtvPhRskhGf3-1" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-2560" width="17" height="40" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-27" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="830" y="-3290" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="tjGZuQ-W60TIh5WkME-4-4" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="823" y="-2930" width="17" height="90" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-51" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="540" y="-3010" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="tjGZuQ-W60TIh5WkME-4-3" value="&lt;font style=&quot;font-size: 13px;&quot;&gt;&lt;span style=&quot;font-size: 13px;&quot;&gt;Subscription Manager Handler&lt;/span&gt;&lt;br style=&quot;font-size: 13px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=13;fontColor=#000000;labelBackgroundColor=none;spacingRight=16;spacingTop=-9;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="560" y="-2930" as="sourcePoint" />
            <mxPoint x="830" y="-2930" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="94vC1wGXfHuNHAQUtaXJ-0" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="552" y="-546.25" width="598" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="94vC1wGXfHuNHAQUtaXJ-1" value="&lt;h6 style=&quot;font-size: 18px;&quot;&gt;&lt;font style=&quot;font-size: 18px; line-height: 50%;&quot;&gt;MQTT_Disconnect&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=1;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="755" y="-580" width="180" height="110" as="geometry" />
        </mxCell>
        <mxCell id="94vC1wGXfHuNHAQUtaXJ-3" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1157" y="-545.25" width="262" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="94vC1wGXfHuNHAQUtaXJ-5" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="550" y="-432" width="870" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="94vC1wGXfHuNHAQUtaXJ-2" value="&lt;h6 style=&quot;font-size: 18px;&quot;&gt;&lt;font style=&quot;font-size: 18px; line-height: 50%;&quot;&gt;DISCONNECT FROM BROKER&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=3;spacingLeft=5;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-580" width="260" height="110" as="geometry" />
        </mxCell>
        <mxCell id="94vC1wGXfHuNHAQUtaXJ-4" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;END TLS SESSION&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="905" y="-450" width="170" height="80" as="geometry" />
        </mxCell>
        <mxCell id="AStLUB3FCI_aZDNT-b-F-1" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="550" y="-3441.25" width="600" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="AStLUB3FCI_aZDNT-b-F-2" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1157" y="-3441.25" width="262" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="AStLUB3FCI_aZDNT-b-F-3" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;CONNECT TO MQTT BROKER&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=2;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1159" y="-3465" width="240" height="90" as="geometry" />
        </mxCell>
        <mxCell id="AStLUB3FCI_aZDNT-b-F-0" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;MQTT_Connect&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1;spacingTop=1;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="768.5" y="-3460" width="140" height="80" as="geometry" />
        </mxCell>
        <mxCell id="G3Nv5brwW1YVpGdtv9H0-0" value="" style="edgeStyle=elbowEdgeStyle;elbow=horizontal;endArrow=classic;html=1;fontSize=12;fillColor=#d5e8d4;strokeColor=#82b366;rounded=1;gradientDirection=east;shape=flexArrow;strokeWidth=1;shadow=1;startArrow=none;startFill=0;comic=0;width=9;fontFamily=Courier Prime Regular;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry width="50" height="50" relative="1" as="geometry">
            <mxPoint x="545" y="-340" as="sourcePoint" />
            <mxPoint x="450" y="-3760" as="targetPoint" />
            <Array as="points">
              <mxPoint x="380" y="-2650" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="uLoVsa3FR_vYa0YLJ3pJ-18" value="" style="html=1;shadow=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.arrow;dy=0.47;dx=43.45;notch=0;fontSize=18;rounded=1;fontFamily=Courier Prime Regular;fontStyle=2;strokeColor=#b85450;strokeWidth=5;gradientDirection=west;glass=0;labelBackgroundColor=none;fillColor=#f8cecc;gradientColor=#ffffff;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="550" y="-3780.75" width="870" height="40.5" as="geometry" />
        </mxCell>
        <mxCell id="uLoVsa3FR_vYa0YLJ3pJ-19" value="&lt;h6&gt;&lt;font style=&quot;font-size: 17px ; line-height: 50%&quot;&gt;ESTABLISH TLS SESSION WITH SERVER ROOT CA CERTIFICATE (OPENSSL)&lt;/font&gt;&lt;/h6&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=0;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;fontStyle=1" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="663" y="-3799" width="660" height="80" as="geometry" />
        </mxCell>
        <mxCell id="uLoVsa3FR_vYa0YLJ3pJ-20" value="Retry using &lt;br&gt;exponential backoff &lt;br&gt;strategy&amp;nbsp;" style="text;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=none;strokeColor=none;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=13;fontColor=#000000;rotation=0;flipH=0;aspect=fixed;fontStyle=0;html=1;horizontal=0;opacity=40;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="450" y="-3775" width="60" height="150" as="geometry" />
        </mxCell>
        <mxCell id="uLoVsa3FR_vYa0YLJ3pJ-21" value="&lt;font size=&quot;1&quot;&gt;&lt;b style=&quot;font-size: 15px&quot;&gt;CONNECTION STATUS&lt;/b&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;entryX=1;entryY=0.5;entryDx=0;entryDy=0;spacingLeft=-20;" parent="BZFjzN4WhaS3GjpnRGDo-19" target="uLoVsa3FR_vYa0YLJ3pJ-22" edge="1">
          <mxGeometry x="0.1174" y="-10" relative="1" as="geometry">
            <mxPoint x="1430.75" y="-3611" as="sourcePoint" />
            <mxPoint x="555.25" y="-3611" as="targetPoint" />
            <mxPoint x="1" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="uLoVsa3FR_vYa0YLJ3pJ-22" value="if successful connection&lt;br&gt;attempt" style="rhombus;fillColor=#d5e8d4;strokeColor=#82b366;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=12;opacity=90;align=center;fontStyle=0;verticalAlign=middle;whiteSpace=wrap;html=1;spacingTop=5;strokeWidth=3;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="473.63" y="-3660" width="155.75" height="100" as="geometry" />
        </mxCell>
        <mxCell id="uLoVsa3FR_vYa0YLJ3pJ-23" value="&lt;b&gt;no&lt;/b&gt;" style="edgeStyle=orthogonalEdgeStyle;html=1;align=left;verticalAlign=bottom;endArrow=open;endSize=8;strokeColor=#ff0000;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingLeft=-4;strokeWidth=3;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry x="-0.3143" y="-12" relative="1" as="geometry">
            <mxPoint x="543" y="-3760" as="targetPoint" />
            <mxPoint x="511" y="-3634" as="sourcePoint" />
            <Array as="points">
              <mxPoint x="511" y="-3634" />
              <mxPoint x="511" y="-3760" />
            </Array>
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-2" value="&lt;font color=&quot;#000000&quot;&gt;&lt;b&gt;* For details about ACKs &lt;br&gt;and ACK handlers, &lt;br&gt;see other demo diagrams *&lt;/b&gt;&lt;/font&gt;" style="text;html=1;resizable=0;autosize=1;align=center;verticalAlign=middle;points=[];fillColor=#ea6b66;strokeColor=#ff3333;rounded=0;shadow=0;dashed=1;labelBackgroundColor=none;fontSize=14;opacity=40;fontColor=#ff3333;fontFamily=Courier Prime Regular;glass=1;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1540" y="-3375" width="230" height="60" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-5" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="543" y="-2840" width="17" height="60" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-6" value="&lt;font style=&quot;font-size: 14px&quot;&gt;Match topic&amp;nbsp;&lt;b&gt;&quot;/demo/temperature/high&quot;&lt;/b&gt;&lt;br&gt;to registered wildcard topic filter&amp;nbsp;&lt;br&gt;&lt;b&gt;&quot;/demo/temperature/+&quot;&lt;/b&gt;&lt;br&gt;&lt;b&gt;MQTT_MatchTopic&lt;/b&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingTop=-41;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="840" y="-2900" as="sourcePoint" />
            <mxPoint x="1150" y="-2900" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="tjGZuQ-W60TIh5WkME-4-7" value="&lt;span style=&quot;font-size: 15px;&quot;&gt;Invoke temperature callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="829" y="-2840" as="sourcePoint" />
            <mxPoint x="550" y="-2840" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-15" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=top;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelPosition=center;verticalLabelPosition=bottom;align=center;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1150" y="-2860" as="sourcePoint" />
            <mxPoint x="840" y="-2860" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-52" value="&lt;span style=&quot;font-size: 17px;&quot;&gt;Invoke demo callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1150" y="-3010" as="sourcePoint" />
            <mxPoint x="550" y="-3010" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-66" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="830" y="-2320" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-68" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="823" y="-1960" width="17" height="90" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-72" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="543" y="-1870" width="17" height="60" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-73" value="&lt;font style=&quot;font-size: 14px&quot;&gt;Match&amp;nbsp;&lt;b style=&quot;font-size: 15px&quot;&gt;&quot;/demo/humidity&quot;&lt;/b&gt;&lt;br&gt;to registered topic filters&amp;nbsp;&lt;br&gt;&lt;b&gt;MQTT_MatchTopic&lt;/b&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingTop=-17;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="840" y="-1930" as="sourcePoint" />
            <mxPoint x="1150" y="-1930" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-74" value="&lt;span style=&quot;font-size: 16px;&quot;&gt;Invoke humidity callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="829" y="-1870" as="sourcePoint" />
            <mxPoint x="550" y="-1870" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-75" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=top;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelPosition=center;verticalLabelPosition=bottom;align=center;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1150" y="-1890" as="sourcePoint" />
            <mxPoint x="840" y="-1890" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-84" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="830" y="-1690" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-86" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="823" y="-1330" width="17" height="90" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-87" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="540" y="-1400" width="17" height="70" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-88" value="&lt;font style=&quot;font-size: 15px;&quot;&gt;&lt;span style=&quot;font-size: 15px;&quot;&gt;Subscription Manager Handler&lt;/span&gt;&lt;br style=&quot;font-size: 15px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=15;fontColor=#000000;labelBackgroundColor=none;spacingRight=16;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="560" y="-1330" as="sourcePoint" />
            <mxPoint x="830" y="-1330" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-89" value="&lt;span style=&quot;font-size: 16px&quot;&gt;Publish to topic&amp;nbsp;&lt;/span&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;&quot;/demo/precipitation&quot;&lt;br&gt;&lt;/b&gt;&lt;b&gt;MQTT_Publish&lt;/b&gt;&amp;nbsp;&amp;amp;&amp;nbsp;&lt;b&gt;MQTT_ProcessLoop&lt;/b&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;&lt;br style=&quot;font-size: 16px&quot;&gt;&lt;br style=&quot;font-size: 16px&quot;&gt;&lt;/span&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry x="-0.0508" y="-10" relative="1" as="geometry">
            <mxPoint x="550" y="-1490" as="sourcePoint" />
            <mxPoint x="1140" y="-1490" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-90" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="543" y="-1240" width="17" height="60" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-91" value="&lt;font style=&quot;font-size: 14px&quot;&gt;Match&amp;nbsp;&lt;b style=&quot;font-size: 15px&quot;&gt;&quot;/demo/precipitation&quot;&lt;/b&gt;&lt;br&gt;to registered topic filters&amp;nbsp;&lt;br&gt;&lt;b&gt;MQTT_MatchTopic&lt;/b&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingTop=-17;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="840" y="-1300" as="sourcePoint" />
            <mxPoint x="1150" y="-1300" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-92" value="&lt;span style=&quot;font-size: 15px&quot;&gt;Invoke precipitation callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="829" y="-1240" as="sourcePoint" />
            <mxPoint x="550" y="-1240" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-93" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=top;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelPosition=center;verticalLabelPosition=bottom;align=center;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1150" y="-1260" as="sourcePoint" />
            <mxPoint x="840" y="-1260" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="tjGZuQ-W60TIh5WkME-4-10" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="823" y="-1020" width="17" height="40.43" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-118" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="823" y="-939.5699999999999" width="17" height="40.43" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-120" value="&lt;font style=&quot;font-size: 14px;&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;Remove precipitation callback&lt;/font&gt;&lt;br style=&quot;font-size: 14px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=14;fontColor=#000000;labelBackgroundColor=none;spacingRight=7;spacingTop=-1;spacingLeft=5;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="550.0000000000005" y="-859.5699999999999" as="sourcePoint" />
            <mxPoint x="819.9999999999995" y="-859.5699999999999" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-121" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#6c8ebf;strokeWidth=7;fillColor=#dae8fc;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="823" y="-859.5699999999999" width="17" height="40.43" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-46" value="&lt;font style=&quot;font-size: 14px&quot;&gt;Match topic&amp;nbsp;&lt;b&gt;&quot;/demo/temperature/low&quot;&lt;/b&gt;&lt;br&gt;to registered wildcard topic filter&amp;nbsp;&lt;br&gt;&lt;b&gt;&quot;/demo/temperature/+&quot;&lt;/b&gt;&lt;br&gt;&lt;b&gt;MQTT_MatchTopic&lt;/b&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=18;fontColor=#000000;spacingTop=-39;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="840" y="-2560" as="sourcePoint" />
            <mxPoint x="1150" y="-2560" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-48" value="&lt;b style=&quot;font-size: 16px;&quot;&gt;&lt;font style=&quot;font-size: 16px;&quot;&gt;SUCCESS&lt;/font&gt;&lt;/b&gt;" style="html=1;verticalAlign=top;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelPosition=center;verticalLabelPosition=bottom;align=center;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1150" y="-2520" as="sourcePoint" />
            <mxPoint x="840" y="-2520" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="jzSOTEx7BUODfq_Y9b2U-1" value="&lt;div style=&quot;font-size: 20px&quot;&gt;&amp;nbsp;LOOP INDEFINITELY&amp;nbsp;&lt;/div&gt;" style="text;align=center;verticalAlign=middle;resizable=1;points=[];labelBackgroundColor=#b9e0a5;fontSize=20;horizontal=0;fontStyle=0;labelBorderColor=#000000;whiteSpace=wrap;absoluteArcSize=0;autosize=1;snapToPoint=1;resizeWidth=0;resizeHeight=0;backgroundOutline=0;part=0;collapsible=0;fixDash=0;fillColor=none;gradientColor=#ffffff;strokeColor=none;shadow=1;rounded=1;glass=0;comic=0;fontFamily=Courier Prime Regular;html=1;noLabel=0;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1" connectable="0">
          <mxGeometry x="413.6275999999999" y="-2510" width="40" height="230" as="geometry">
            <mxPoint x="-51.992399999999996" y="-311" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="a-5EgAYpV5X_EjewJGmN-8" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-3160" width="17" height="40" as="geometry" />
        </mxCell>
        <mxCell id="a-5EgAYpV5X_EjewJGmN-9" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#d6b656;strokeWidth=7;fillColor=#fff2cc;fontFamily=Courier Prime Regular;fontSize=18;gradientDirection=north;perimeterSpacing=0;opacity=80;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="1145" y="-3090" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-22" value="&lt;font style=&quot;font-size: 16px&quot;&gt;Send subscription request&lt;br style=&quot;font-size: 16px&quot;&gt;&amp;amp; process SUBACK&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;exitX=1.067;exitY=0.507;exitDx=0;exitDy=0;exitPerimeter=0;" parent="BZFjzN4WhaS3GjpnRGDo-19" source="a-5EgAYpV5X_EjewJGmN-8" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1170" y="-3140" as="sourcePoint" />
            <mxPoint x="1430" y="-3140" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-71" value="&lt;span style=&quot;font-size: 16px&quot;&gt;Publish to topic&amp;nbsp;&lt;/span&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;&quot;/demo/humidity&quot;&lt;br&gt;&lt;/b&gt;&lt;b&gt;MQTT_Publish&lt;/b&gt;&amp;nbsp;&amp;amp;&amp;nbsp;&lt;b&gt;MQTT_ProcessLoop&lt;/b&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;&lt;br style=&quot;font-size: 16px&quot;&gt;&lt;br style=&quot;font-size: 16px&quot;&gt;&lt;/span&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry x="-0.0508" y="-10" relative="1" as="geometry">
            <mxPoint x="550" y="-2120" as="sourcePoint" />
            <mxPoint x="1140" y="-2120" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-65" value="&lt;span style=&quot;font-size: 16px&quot;&gt;Subscribe to topic filter &lt;b style=&quot;font-size: 16px&quot;&gt;&quot;/demo/humidity&quot;&lt;br&gt;&lt;/b&gt;&lt;b&gt;MQTT_Subscribe &lt;/b&gt;&amp;amp;&lt;b&gt; MQTT_ProcessLoop&lt;/b&gt;&lt;br style=&quot;font-size: 16px&quot;&gt;&lt;/span&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="550" y="-2190" as="sourcePoint" />
            <mxPoint x="1140" y="-2190" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-53" value="Send subscription request&lt;br&gt;&amp;amp; process SUBACK" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1163" y="-2170" as="sourcePoint" />
            <mxPoint x="1434" y="-2170" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-44" value="&lt;span style=&quot;font-size: 16px;&quot;&gt;Publish to topic&amp;nbsp;&lt;/span&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;&quot;/demo/temperature/low&quot;&lt;/b&gt;&lt;span style=&quot;font-size: 16px;&quot;&gt;&lt;br style=&quot;font-size: 16px;&quot;&gt;&lt;/span&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_Publish&lt;/b&gt;&lt;span style=&quot;font-size: 16px;&quot;&gt;&amp;nbsp;&amp;amp;&amp;nbsp;&lt;/span&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_ProcessLoop&lt;/b&gt;&lt;span style=&quot;font-size: 16px;&quot;&gt;&lt;br style=&quot;font-size: 16px;&quot;&gt;&lt;/span&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="550" y="-2750" as="sourcePoint" />
            <mxPoint x="1140" y="-2750" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-21" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;Subscribe to wildcard topic filter&amp;nbsp;&lt;b style=&quot;font-size: 16px;&quot;&gt;&quot;/demo/temperature/+&quot;&lt;br style=&quot;font-size: 16px;&quot;&gt;&lt;/b&gt;&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_Subscribe&lt;/b&gt;&amp;nbsp;&amp;amp;&amp;nbsp;&lt;b style=&quot;font-size: 16px;&quot;&gt;MQTT_ProcessLoop&lt;/b&gt;&lt;br style=&quot;font-size: 16px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;spacingTop=0;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry x="-0.0169" relative="1" as="geometry">
            <mxPoint x="550" y="-3160" as="sourcePoint" />
            <mxPoint x="1140" y="-3160" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-3" value="&lt;span style=&quot;font-size: 16px&quot;&gt;Publish to topic&amp;nbsp;&lt;/span&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;&quot;/demo/temperature/high&quot;&lt;br&gt;&lt;/b&gt;&lt;b&gt;MQTT_Publish&lt;/b&gt;&amp;nbsp;&amp;amp;&amp;nbsp;&lt;b&gt;MQTT_ProcessLoop&lt;/b&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;&lt;br style=&quot;font-size: 16px&quot;&gt;&lt;/span&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="550" y="-3090" as="sourcePoint" />
            <mxPoint x="1140" y="-3090" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-59" value="&lt;font style=&quot;font-size: 16px&quot;&gt;Unsubscribe from topics&lt;br&gt;&lt;b&gt;MQTT_Unsubscribe&lt;/b&gt;&amp;nbsp;&amp;amp;&amp;nbsp;&lt;b&gt;MQTT_ProcessLoop&lt;/b&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;entryX=0.137;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="550" y="-680" as="sourcePoint" />
            <mxPoint x="1149.3289999999997" y="-680" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-60" value="&lt;font style=&quot;font-size: 16px&quot;&gt;Send unsubscribe request&lt;br&gt;&amp;amp; process UNSUBACK&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;exitX=1.017;exitY=0.503;exitDx=0;exitDy=0;exitPerimeter=0;" parent="BZFjzN4WhaS3GjpnRGDo-19" source="a-5EgAYpV5X_EjewJGmN-16" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1170" y="-660" as="sourcePoint" />
            <mxPoint x="1430" y="-660" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-81" value="Send subscription request&lt;br&gt;&amp;amp; process SUBACK" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;exitX=1.078;exitY=0.492;exitDx=0;exitDy=0;exitPerimeter=0;" parent="BZFjzN4WhaS3GjpnRGDo-19" source="a-5EgAYpV5X_EjewJGmN-17" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1166" y="-1540" as="sourcePoint" />
            <mxPoint x="1430" y="-1540" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-83" value="&lt;span style=&quot;font-size: 16px&quot;&gt;Subscribe to topic filter&amp;nbsp;&lt;/span&gt;&lt;b style=&quot;font-size: 16px&quot;&gt;&quot;/demo/precipitation&quot;&lt;br&gt;&lt;/b&gt;&lt;b&gt;MQTT_Subscribe&lt;/b&gt;&amp;nbsp;&amp;amp;&amp;nbsp;&lt;b&gt;MQTT_ProcessLoop&lt;/b&gt;&lt;span style=&quot;font-size: 16px&quot;&gt;&lt;br style=&quot;font-size: 16px&quot;&gt;&lt;br style=&quot;font-size: 16px&quot;&gt;&lt;/span&gt;" style="html=1;verticalAlign=middle;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;labelBackgroundColor=none;bendable=0;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry x="-0.0169" y="-10" relative="1" as="geometry">
            <mxPoint x="550" y="-1560" as="sourcePoint" />
            <mxPoint x="1140" y="-1560" as="targetPoint" />
            <mxPoint x="-1" as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-38" value="&lt;b&gt;PUBLISH&lt;/b&gt;&lt;br&gt;&lt;span style=&quot;font-size: 12px&quot;&gt;to topic&amp;nbsp;&lt;/span&gt;&lt;b style=&quot;font-size: 12px&quot;&gt;&quot;/demo/temperature/low&quot;&lt;/b&gt;" style="html=1;verticalAlign=middle;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1420" y="-2690" as="sourcePoint" />
            <mxPoint x="1160" y="-2690" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-45" value="&lt;font style=&quot;font-size: 16px&quot;&gt;Send publish message&amp;nbsp;&lt;br style=&quot;font-size: 16px&quot;&gt;&amp;amp; process PUBACK&lt;/font&gt;" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1162" y="-3070" as="sourcePoint" />
            <mxPoint x="1429" y="-3070" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="BZFjzN4WhaS3GjpnRGDo-49" value="&lt;font&gt;&lt;b&gt;&lt;font style=&quot;font-size: 16px&quot;&gt;PUBLISH&lt;/font&gt;&lt;/b&gt;&lt;br&gt;&lt;span style=&quot;font-size: 12px&quot;&gt;to topic &lt;/span&gt;&lt;b style=&quot;font-size: 12px&quot;&gt;&quot;/demo/temperature/high&quot;&lt;/b&gt;&lt;br&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry x="-0.0077" y="20" relative="1" as="geometry">
            <mxPoint x="1420" y="-3030" as="sourcePoint" />
            <mxPoint x="1160" y="-3030" as="targetPoint" />
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-42" value="" style="html=1;points=[];perimeter=orthogonalPerimeter;rounded=0;shadow=1;glass=0;comic=0;labelBackgroundColor=none;strokeColor=#82b366;strokeWidth=7;fillColor=#d5e8d4;fontFamily=Courier Prime Regular;fontSize=18;opacity=90;" parent="BZFjzN4WhaS3GjpnRGDo-19" vertex="1">
          <mxGeometry x="540" y="-2670" width="17" height="80" as="geometry" />
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-39" value="&lt;span style=&quot;font-size: 17px;&quot;&gt;Invoke demo callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=17;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1151" y="-2670" as="sourcePoint" />
            <mxPoint x="551" y="-2670" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-43" value="&lt;font style=&quot;font-size: 14px;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;Subscription Manager Handler&lt;/span&gt;&lt;br style=&quot;font-size: 14px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=14;fontColor=#000000;labelBackgroundColor=none;spacingRight=16;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="560" y="-2590" as="sourcePoint" />
            <mxPoint x="830" y="-2590" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-77" value="&lt;span style=&quot;font-size: 16px;&quot;&gt;Invoke demo callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1150" y="-2040" as="sourcePoint" />
            <mxPoint x="550" y="-2040" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-70" value="&lt;font style=&quot;font-size: 14px;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;Subscription Manager Handler&lt;/span&gt;&lt;br style=&quot;font-size: 14px;&quot;&gt;&lt;/font&gt;" style="html=1;verticalAlign=bottom;startArrow=oval;endArrow=block;startSize=8;fontFamily=Courier Prime Regular;fontSize=14;fontColor=#000000;labelBackgroundColor=none;spacingRight=16;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="560" y="-1960" as="sourcePoint" />
            <mxPoint x="830" y="-1960" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-54" value="&lt;b&gt;PUBLISH&lt;/b&gt;&lt;br&gt;&lt;span style=&quot;font-size: 12px&quot;&gt;to topic&amp;nbsp;&lt;/span&gt;&lt;b style=&quot;font-size: 12px&quot;&gt;&quot;/demo/humidity&quot;&lt;/b&gt;" style="html=1;verticalAlign=middle;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1420" y="-2060" as="sourcePoint" />
            <mxPoint x="1160" y="-2060" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-67" value="Send publish message&amp;nbsp;&lt;br&gt;&amp;amp; process PUBACK" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1163" y="-2100" as="sourcePoint" />
            <mxPoint x="1435" y="-2100" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-94" value="&lt;span style=&quot;font-size: 16px;&quot;&gt;Invoke demo callback&lt;/span&gt;" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1150" y="-1400" as="sourcePoint" />
            <mxPoint x="550" y="-1400" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-85" value="Send publish message&amp;nbsp;&lt;br&gt;&amp;amp; process PUBACK" style="html=1;verticalAlign=middle;startArrow=oval;startFill=1;endArrow=block;startSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;rounded=0;bendable=0;snapToPoint=1;anchorPointDirection=0;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry width="60" relative="1" as="geometry">
            <mxPoint x="1163" y="-1470" as="sourcePoint" />
            <mxPoint x="1430" y="-1470" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="ikClsNS6Sux03Jtz0XLd-82" value="&lt;b&gt;PUBLISH&lt;/b&gt;&lt;br&gt;&lt;span style=&quot;font-size: 12px&quot;&gt;to topic&amp;nbsp;&lt;/span&gt;&lt;b style=&quot;font-size: 12px&quot;&gt;&quot;/demo/precipitation&quot;&lt;/b&gt;" style="html=1;verticalAlign=middle;endArrow=open;dashed=1;endSize=8;labelBackgroundColor=none;fontFamily=Courier Prime Regular;fontSize=16;fontColor=#000000;" parent="BZFjzN4WhaS3GjpnRGDo-19" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1430" y="-1420" as="sourcePoint" />
            <mxPoint x="1160" y="-1420" as="targetPoint" />
          </mxGeometry>
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
