<mxfile host="app.diagrams.net" agent="architecture-diagram" version="24.0.0">
  <diagram name="Link Platform — High-Level Architecture" id="02-high-level-architecture">
    <mxGraphModel dx="1400" dy="900" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1780" pageHeight="590" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <mxCell id="_st1" value="1 · Create" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="60" width="180" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.mgmt" value="&lt;b&gt;Management API&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;Container Apps&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="40" y="150" width="180" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico2" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,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;" vertex="1" parent="n.mgmt">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.reserve" value="&lt;b&gt;Alias reservation&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;conditional create&lt;/font&gt;" style="shape=cylinder3;boundedLbl=1;backgroundOutline=1;size=11;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;fontColor=#1e3a1e;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="40" y="270" width="180" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico3" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADIUlEQVRoge3aTWwVVRjG8V9LkW+kwYDY6kLxC5QNJEIMECEGNSa6MCaGHStXrtyqxI0xJLCCDTGBBRuCiSQuTIgxhAUsABP5SAQlCFhlYaB82AqNdfFO06E9U+5M7+29rf0nbyY9M3Pmee85M/Ocd8o0zaVtHOfOwoosuvBEFp2YjTnZMf9kx9/AAK7jGv7ErziHK1VFlEmgE5vwOtbjOXRUvfAIbuI0vscRnMK/9ei4TQg+KH7JwQmKK/hMjGxlVuCHCRSdir/xqZiKpXgFt5osPh9HxH01ihkFbSfwWNmsG8jT6MexkTvaEwcvFU+TVmN1qjGVQKqtFUjqalWxNTMlE7gt7vxWo7fMwV9p/qMzH31YWyaBDuxrAeGD+AtvlRGfZzOON0n4HezG4qri86zCTpxvsOi7+A4fYmFVsV3Yj2UF+7vxAb7At7ikmtG7IVznfnyM1xTYBbyNHakdKTvdjavixjmAPfixoOM8S8RbfEnW76Jc//1Zf/1iHfB79vdYzMF7+AhrcBjv1qBDt9G/1gV8iS1YUEsnFVmObTgkplNewzepE8YagSIGREIXcBG/ZNurYmHSl108da1FmCsWR89msTzbvihGsIjkCFRZUXUYXkqORa9IZpaYDkXze1zUa0mY4tEsGsqU9EKTilQCdakGNICkrlQC19HTWC2VOF3m4LWGbXUrROGifixewtEmC+/D9irih2jDG/ga9yZQ+DV8jieriF6A5xPti/E+9uJn8Uaul+BbYrQ/wTqjyz3tCqoSRVbikjBxu/BbQaJzxdt4ZXbO49l2vmEj1+lBI3dXPCT+EA+Ky/gp2w4mrtGON0WZsUcFMzcgTNRWE/BWzfGyKClezGlJmrmHWYkZeCeL+zgpqmMnDRu5O+MU2yXM3At4FRvwVK0nl/FCM8X8XDeivUckc1lMlV4xVfrE3J4pptVCYermibLlM8KJziuhYRT1MHNDHzY21qGv0kxJLzSpmJIJTJcWGxDTpcVmCP9/lBarfKnvFh+6VwnPMvSl/pGS/dwUpvEszogy43Fh+mpmPP9qMJJ6lxanmRT8B1M0bJ9FjBNdAAAAAElFTkSuQmCC;" vertex="1" parent="n.reserve">
          <mxGeometry x="12" y="39" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st4" value="2 · Own" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="290" y="60" width="190" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.linktable" value="&lt;b&gt;Link table&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;Cosmos DB · 12B links&lt;/font&gt;" style="shape=cylinder3;boundedLbl=1;backgroundOutline=1;size=11;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;fontColor=#1e3a1e;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="290" y="210" width="190" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico5" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADIUlEQVRoge3aTWwVVRjG8V9LkW+kwYDY6kLxC5QNJEIMECEGNSa6MCaGHStXrtyqxI0xJLCCDTGBBRuCiSQuTIgxhAUsABP5SAQlCFhlYaB82AqNdfFO06E9U+5M7+29rf0nbyY9M3Pmee85M/Ocd8o0zaVtHOfOwoosuvBEFp2YjTnZMf9kx9/AAK7jGv7ErziHK1VFlEmgE5vwOtbjOXRUvfAIbuI0vscRnMK/9ei4TQg+KH7JwQmKK/hMjGxlVuCHCRSdir/xqZiKpXgFt5osPh9HxH01ihkFbSfwWNmsG8jT6MexkTvaEwcvFU+TVmN1qjGVQKqtFUjqalWxNTMlE7gt7vxWo7fMwV9p/qMzH31YWyaBDuxrAeGD+AtvlRGfZzOON0n4HezG4qri86zCTpxvsOi7+A4fYmFVsV3Yj2UF+7vxAb7At7ikmtG7IVznfnyM1xTYBbyNHakdKTvdjavixjmAPfixoOM8S8RbfEnW76Jc//1Zf/1iHfB79vdYzMF7+AhrcBjv1qBDt9G/1gV8iS1YUEsnFVmObTgkplNewzepE8YagSIGREIXcBG/ZNurYmHSl108da1FmCsWR89msTzbvihGsIjkCFRZUXUYXkqORa9IZpaYDkXze1zUa0mY4tEsGsqU9EKTilQCdakGNICkrlQC19HTWC2VOF3m4LWGbXUrROGifixewtEmC+/D9irih2jDG/ga9yZQ+DV8jieriF6A5xPti/E+9uJn8Uaul+BbYrQ/wTqjyz3tCqoSRVbikjBxu/BbQaJzxdt4ZXbO49l2vmEj1+lBI3dXPCT+EA+Ky/gp2w4mrtGON0WZsUcFMzcgTNRWE/BWzfGyKClezGlJmrmHWYkZeCeL+zgpqmMnDRu5O+MU2yXM3At4FRvwVK0nl/FCM8X8XDeivUckc1lMlV4xVfrE3J4pptVCYermibLlM8KJziuhYRT1MHNDHzY21qGv0kxJLzSpmJIJTJcWGxDTpcVmCP9/lBarfKnvFh+6VwnPMvSl/pGS/dwUpvEszogy43Fh+mpmPP9qMJJ6lxanmRT8B1M0bJ9FjBNdAAAAAElFTkSuQmCC;" vertex="1" parent="n.linktable">
          <mxGeometry x="12" y="39" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st6" value="3 · Propagate" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="540" y="60" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.revoke" value="&lt;b&gt;Revocation publisher&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;own channel · 60 s&lt;/font&gt;" style="shape=process;size=0.08;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;fontColor=#4a3200;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="540" y="150" width="200" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico7" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAABIUlEQVRoge2WTWrCUBRGjz+F0g04aVyBQhchdAfdRbfQPXSoky5AKM6KCxEpHThwBUoHRVJ1EC2P16b3vUG8z3gPXHgJN3A+CMkHhnHZNLzrDLjSEPmDb2AJbEMfeAZ2ic1rTOJZAsL+fErSTefsv04pIDo1pYXUsQDauAFyNYtyRKe2cx4BT949TbbAUFvCMAzjf0L6Tx/oVC0SwRJ4D10eUHyPtVupOzlwdxSUqkSP9Fpqi8ILkAOkJv+LWpW5s6T2Ab5OYhHPj5dUncfAPXBbqU4cH8CbtoRhGEaB23U6wANwo+TiswEmwCL0gSn6VdmfuSTt/omz0KQnpCst1L4LJY8F0MYNsFazKGclLbh1+vEw15XpxJEDL9oShmFUzB4YGqve0UGgewAAAABJRU5ErkJggg==;" vertex="1" parent="n.revoke">
          <mxGeometry x="21" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.proj" value="&lt;b&gt;Projection publisher&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;change feed · 5 min&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="540" y="270" width="200" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico8" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACpUlEQVRoge3YTYhNYRzH8Y+3iLzkbZoSdhJZkI1YUWzYWbCxJCU1ZShlpVhQKIoFG28pKxaKDUnyUtTQZJCExZSJEYMMFs+cXMe5955z7jn3jppf/evWfc7/+f6e5/+8nMOIWqsxJeWdhA3YhMUYQG9JfRWqZTiJfvyKxRPsxuyW0VXRHAGsx7/QSfED17ER41rACyYMAVwZAkoDnhTvhRlb2izwWiXSaJRWYvOxDy9yQOWZnW+4jPUaKLFGS+QBdmIGFuGgsAuVXmLTcUS+EnmDA1hQJff4oUG5mnNQ7mNdLfjJeJQx6QDOY61sZ0o7dqErY38/saVa0r0ZEt3BVkzLAF1Ny3EcfSn77sOUpEQ36zz4FkexpADoJI0XFu4lfK/DsjopwdOEhgO4INReWdeOJEUl9iSB6Rc2Rw1H10n0CS/RjcEySKuoF8/wOstDSTMQxaA/x//YIkljahcOs1c1WP6agbQG4mvhIOYWBD0aa6Sr/UIMRFF5KcuzPqYJh93zjP0WZqAyeoSpn5UCPLpPfWmgv8INRPEV57Aqljsa7ax9DDbbQGV0oQOn8Tnjs++wHwtbaSBP3Pb3i87EegbK3BLT6oOwAx0TDq5MaqWBhziFs8KCzqVmG+jHRZzA4yISNtPAGewQFnRhqncXKlLdCoanuQZK0YiBVuu/NzAcDrJqasOeeo0qDXwsjyWT2tCJbcJVIkkfoh+VJXSrRKg0asNh4RW2Q3X4r7iX9Mds4R20rItaZx3wtDfWvbVGYR6uNclAVvA+bMeoWgYirRC+i5ZhYKbwTp0WvH+ofa6PaCtxoyADh2Qf8X2Ymgc8rjJmpJQRb6WRUsHLNNJU8LgaMdJS8LiyGBlW4HHVMjKsweNaKXyW78Zd4atdIdvhiEZUsH4D+zfN9JHFLwAAAAAASUVORK5CYII=;" vertex="1" parent="n.proj">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st9" value="4 · Resolve" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="800" y="60" width="190" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.afd" value="&lt;b&gt;Front Door edge&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;anycast · 30 s cache&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;fontColor=#4a3200;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="800" y="90" width="190" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico10" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAABzklEQVRoge3XsYsUMRjG4efURgQbQQ4OxSu2EEEEwVo7Qey8VlGxFnv/BnsFCy0Ee7sDRXsrUQQREexszgOFc3HXIg7sjJPc3TK7k4H8IEXyzYT3JfnyJRQKhUKhznEc6FvEPBzBa0zxEaN+5eyf64L4qn2zBxM5LdWxRn8Nb3A69VNOBtpYxUsJE7kbYBcTh1rGjuLgIhVFOJyIrWITl/Ap9tF5fFZPpNxaMrE3MxC4l/ZV2CWo58BazFlmnMTFqjNr4OfSpczHb7yvOrMGHgtLlDMT3BFyFaw0PjinvxJ+BTcS8Qlu4uly5Oyfe+KJ+0fE3BAK2QS38KQtmLuBpHjaK3Ff7DT6ne75q/iAt7jQxYQtrOOHsOfHwvW6Ezb+TVgl1LuuJm7hFG7jbFcTNsVPDafguSZUveaRNggDMfGDMJASn52B5lViA8+kj9cpvixMUZotPMLDtuBl/ydsjm0i3NlQr8T35VXYYqzgTNWZNfB9+VrmZtw2uC68OfveIru1bTOvx2YSj/BK+nk5xoNEfJHs4LlwrYkykl6JrI7RGCkTgzBA3MRgDNBuYrtXRXPQNPGiXzl1mqdQjBO4i1/CCbS1MEWFQqFQWCZ/AdclH6RcD+9yAAAAAElFTkSuQmCC;" vertex="1" parent="n.afd">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.resolver" value="&lt;b&gt;Regional resolver&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;read-only&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="800" y="210" width="190" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico11" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACpUlEQVRoge3YTYhNYRzH8Y+3iLzkbZoSdhJZkI1YUWzYWbCxJCU1ZShlpVhQKIoFG28pKxaKDUnyUtTQZJCExZSJEYMMFs+cXMe5955z7jn3jppf/evWfc7/+f6e5/+8nMOIWqsxJeWdhA3YhMUYQG9JfRWqZTiJfvyKxRPsxuyW0VXRHAGsx7/QSfED17ER41rACyYMAVwZAkoDnhTvhRlb2izwWiXSaJRWYvOxDy9yQOWZnW+4jPUaKLFGS+QBdmIGFuGgsAuVXmLTcUS+EnmDA1hQJff4oUG5mnNQ7mNdLfjJeJQx6QDOY61sZ0o7dqErY38/saVa0r0ZEt3BVkzLAF1Ny3EcfSn77sOUpEQ36zz4FkexpADoJI0XFu4lfK/DsjopwdOEhgO4INReWdeOJEUl9iSB6Rc2Rw1H10n0CS/RjcEySKuoF8/wOstDSTMQxaA/x//YIkljahcOs1c1WP6agbQG4mvhIOYWBD0aa6Sr/UIMRFF5KcuzPqYJh93zjP0WZqAyeoSpn5UCPLpPfWmgv8INRPEV57Aqljsa7ax9DDbbQGV0oQOn8Tnjs++wHwtbaSBP3Pb3i87EegbK3BLT6oOwAx0TDq5MaqWBhziFs8KCzqVmG+jHRZzA4yISNtPAGewQFnRhqncXKlLdCoanuQZK0YiBVuu/NzAcDrJqasOeeo0qDXwsjyWT2tCJbcJVIkkfoh+VJXSrRKg0asNh4RW2Q3X4r7iX9Mds4R20rItaZx3wtDfWvbVGYR6uNclAVvA+bMeoWgYirRC+i5ZhYKbwTp0WvH+ofa6PaCtxoyADh2Qf8X2Ymgc8rjJmpJQRb6WRUsHLNNJU8LgaMdJS8LiyGBlW4HHVMjKsweNaKXyW78Zd4atdIdvhiEZUsH4D+zfN9JHFLwAAAAAASUVORK5CYII=;" vertex="1" parent="n.resolver">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.hot" value="&lt;b&gt;Hot set cache&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;Azure Cache for Redis&lt;/font&gt;" style="shape=cylinder3;boundedLbl=1;backgroundOutline=1;size=11;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;fontColor=#1e3a1e;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="800" y="330" width="190" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico12" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,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;" vertex="1" parent="n.hot">
          <mxGeometry x="12" y="39" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st13" value="5 · Redirect" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="1050" y="60" width="180" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.client" value="&lt;b&gt;Clicker's browser&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;302 + no-store&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#f5f5f5;strokeColor=#8c8c8c;fontColor=#333333;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1050" y="210" width="180" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico14" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAAB40lEQVRoge3Yz6sOURzH8dfjXlfuQkoW6ooiIUk2imRna+kvYCMLUlIsWNhYKFtZKUp3y80/YGOHKD+6RCGJErnyazF3MsbM85z73HnmTDnv+tQ0c2bm8znnzJyZL4lEIpH4n+k1dJ21mMJKfMFjvG7o2iNjChfwFL8q9ARnsTqWwTrGcE7W01XGy/qEo5ob7UWxAjPCjJd1DRPtW/7DOG4bznyuqyKOxPkAgyE6jD24IXtOPmMWV7B9VObX4WtDAb73OfYDZ4xglC41ZD5UJ5s038PLlgPMYUOIuSUBbTbJ3vltMoFDIQ1DArRtPmdvSKOQALFW0kXfdxlO4IV253+uOyEmx2v2b8U0tgTHbZ57w564Ex/E6fWynuE4loeaX4VXHTBe1kNsCwlwuQNm6/RuUIg1+NYBo/30SGk6FV+jB7G0X8IOsBlH6g5Oi9/DIZotmi6OQKwVd6Gsl33e4O8AUf+WFsjGfKMYoPNVhAKT+UYxwIMIRoblTdXO3eI/oCGakxUX/qGHux0wOEg3q8zn7JP9l8Y2Waef2NUvAJzqgNE6XRxknmwqnZ5PG9twUdfVf/5Xsh/3O2D8I46pKbUMqr+MzQc5gB2y1Xqy7xnN8BbPcUtWknzfwj0TiUQikWif37lJeEKjXHZHAAAAAElFTkSuQmCC;" vertex="1" parent="n.client">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st15" value="6 · Count" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="1290" y="60" width="170" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.logs" value="&lt;b&gt;Edge access log&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;Event Hubs&lt;/font&gt;" style="shape=process;size=0.08;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;fontColor=#4a3200;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1290" y="150" width="170" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico16" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAAEYAAABGCAYAAABxLuKEAAAABmJLR0QA/wD/AP+gvaeTAAAEv0lEQVR4nO2bXWhcRRTH/2fuR9Jt6qLEj6pgq2hbYqKggtQiSglUofggKj6ZyMYNhIhIm4jgx4toGlBMIJ/IoqAIgohvMdFarBGqATVp1YKtVBARkjZsaja7d+b44Camuzt313D33g2d39vec2bmnz/3zpm5dwIYDAaDIXRo/Y+BgYErHMe5vyiJ6IxSKhOerOqRy+ViruvuKLwuhPgqmUwurv5eM2Z4eDglpWwLR15tYtt2qrOz82kAEADAzKSUeipaWdEjpWxjZgsALABobGzcCeC5SFXVBjQ9Pf3uxMTEeQEAnudRuRaXGyJqAbWKMUaDDQC2bbNfEhGlmdkLR1LVcQA06IKrXtgAwMxLruv6dfZIMpk8Gqi8iBgZGTlIRJ/q4isrK0uAeZS0GGM0GGM0GGM0GGM02JUkCSF8y/nrP925Q7FIAKTvj6EsiPdfaPr25P/UGCiWZUmllDYei8UkkDemu7t7fmxs7DSA2woTmfnPWCz2g99gzPYhAnf5KiJAQd0C4Iny8quHUuprAKcAXFsiPJdIJBaAvDFEpADs2uhgDLWFUNF2y3exFAb5dy5N5fLMHKPBGKPBGKOhoqpUTXqOttyoJO/2yyHis/37534NSxMQkDFEyMG3oK9lrhRdkvydKF0h/oMp0zt513V9rTOLvnkBEtAdY78JkllWVKfLIKGYpHinROiaCgaoBzJxAJvLmBf3nDgN4Nkg+qoVzOSrwRijIZBH6dWjD9jLan6vZP3KlhRyXkPDibf2frMcxJgA0HN81zbBrvZvUJT1juz7Jb2RvgMx5m85/zKAl3xvPwE4y0vjAJ4piDBQfj+RU3RJ3eudbO7gDMb020EAcPnwZEtbf+uP75Xrv5BgyjVwQ0XVmnF1UVvC28wo+l5ewM+/L+75A5hb15CbKvCTiNTtlUgrJPIFXt/+2ecry5ytrpACzOSrwRijwRijIfI5pmeq5UOA7/FNIpy9EHcfGrt7JheSrGCMYeALEA6CfftTxPRZidaPo1x5Ydx85fnMdgDnVi9JwjHBeBL/fnLVkSPGMd++NUR+/KNnqllVooNY3dTXevJcubygMHOMBmOMBmOMhkAm38OfNz9GzK8BZPnlEeONvtbZ8SDGrDaBGCMYBxh0a7k8JjwMoNCY3wDsLNP0whYbCxuUtyEiX8egPnuHyLhFm8v1ZCxr4ciDs0thSQJqwJj8+5INvTOpJmby1bB2x4yOju4TQhxQSl2y2LIs6/tEIvFR+NKqR/4c3r0lQlOrZw1tAOjv798KYFIpVV+YKaXk8fHxMx0dHTPVlRsOqVRqdzab/QSln5ZDqVQq3t7enhEAUFdXFwNQZEoeklJe7zsaVfi9hynyuSSbzW6Hfgpx0+n0NiCoTWRd9hUsO8dZ6NcxxMTSdr4MYrwwCMSYfGX5OIi+agVTlTQYYzQYYzSsnsFz/E4yMvN9g4ODuqq1qfA8r0kI/f1ARA6QN8bzvHoi35dovWXimwZmhpRSG/c8rx4wj5IWY4wGY4wGAQBEdDFqIbVCPB5PA+s+WwwNDS2X2kReThDRxa6urgZg3ZbAsqxWZv4AwFUl2pxCiAcDqwkzbyWiov+ZIKK/HMd5NApNBoPBYMjzD7S7anQZuyyIAAAAAElFTkSuQmCC;" vertex="1" parent="n.logs">
          <mxGeometry x="21" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.adx" value="&lt;b&gt;Click store&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;Azure Data Explorer&lt;/font&gt;" style="shape=cylinder3;boundedLbl=1;backgroundOutline=1;size=11;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;fontColor=#1e3a1e;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1290" y="270" width="170" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico17" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,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;" vertex="1" parent="n.adx">
          <mxGeometry x="12" y="39" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_st18" value="7 · Police" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="1530" y="60" width="210" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.screen" value="&lt;b&gt;Destination screening&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;at create, then periodic&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontColor=#3a2b44;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1530" y="150" width="210" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico19" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADDUlEQVRoge3azatVVRjH8Y+aebMX4Q6EQKQXaiBRDkS46TCLZgbpIMgKylHQC6HYX+BMmgS90BvhoJpEgmiFoNmk0sAyiKK07GVwzTJLUe9tsN1w2j37nL32XvvcBn5hDc5z1lrP73fWWnuvtThcZm6Z11O/a/EwVuIP7MJrONlTvixMYBMOYzYoZ/EW1syVwDpuwXZMi4VH5VNsxuI50Avm4y68h5lAYNPyG57DjeMSvhRb8X0H0VG5iPexAQv6EL4GO3EuUdi04ldOafMNnsFkV9GjFmWTsn+gn0OJbVsv+iuwDac6CB80MMidePOSuJR+DigeyY14IYPwOgMlS/EsjiX09TtuGyX+dt2eKk0NlCzAeuxtmPfdUQYezyi+iYFBbsUOwxf9qWqj+ZXP1yQkzM3XeArLFC+5r4I6/9FXNXA2v65kzuAlvBh891c1UDXwdx+KWnJdEBtpYDqziC673ehFdroaqBo40SFhxGyHtsuD2PFqoGrgxw4JI7qMwE1B7IdqIBqBMx2S5mIxVgTxY9VA1cAMvsgopO0UWoWFQfxwNVA1AJ+3TBrRdgqtrokfqgYiAwdbJs3JVBD7VYNFDB9ml5PG1bg7iH8QVY4M/IQvcypK5D7xlmZPVDkyAO9kk5POg0HsghoDdayQZzd6IFH8sktiq/3sqmtQNwJH8Uli8hxsEx/qX2/T2SbjHYEbxJcGJ3BlGwMT+HmMBl6p6WNLG/ElT47JwJR47p/Eki4GrlJs8Po0cK3iLihq/3QX8SUPdDDwUYP+X61p+y0W5TAwD/t6MrC5pt0M1uUQX3Kz4jSU08AG8byfxcs5xZc8mtHAPervWY/q8Xakbr6mGHhsiPjT4oNMNhbh45YGFuL5IXXP494+xZdM4kiigSl8NqTeBTw0DvEl1yuOnqMMHFG8YYfde57D/eMUXzIpbTpF5U+ZH5epTEhf2GX5Tv3Zd+w8ori/byr+DR33OH2wHG8bLvw4Ns6VwKasxW7/Fv4LnpBpbzNIX381oNh+3KGYWgf9P67uL5OdfwCdL2jqexBRtgAAAABJRU5ErkJggg==;" vertex="1" parent="n.screen">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.queueui" value="&lt;b&gt;Review and appeal&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;human in the loop&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1530" y="270" width="210" height="90" as="geometry" />
        </mxCell>
        <mxCell id="_ico20" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACjUlEQVRoge3YzYuNURzA8Q9hGK+lMfIy3kZCSkQiFlaykgg7K0ulzMbaTlEW/gOSlI1ssFeTBWIkBuNtWEhThNE8FudOHnfONfc+575Y3G/9Nvee8zvf3/Oc55znPLRp06ZNK5mS0LcDe7ASc/ER/XiWrtVYFuEiRpBF4iEOSbs4DWOXcKVj4uVxHbNboxlnF76rTn487mBaK2TLmY9htcmPx9kW+E7grGLyGb5hafOV/zAFbxQvIMPpplvn2FRBqpa43Si5qVW0WVGHceqRI0o1BXTUYZyZif17cAtHinTeKX0K3UuQX4HBUp5fOFZrgk5hJUkp4HxB+ZV4WZZrFJtrTXQtsYAdBeRX4VUk13ssqTXZRuH2FZG/WSHnUdzH9sh/q/E6kusd1tUqP86ZAvLDWB7JdUSYChm+lBWRn/P5+IANReUJG9q5GuTfYWskz3oT7+bnUtteDEVyvcHaFPk8h018sPIxhqsqz9M5eBDp9xlvI78PlQqLUvSdvQP7sF9YKeYJ06UfNzAwSf8u3BV2+X8xhL14UdCzoXQJh59Kd/I11rTMrkq68EhcfnU9BtgmHB8H8LWUfASXcUBY0maV2nZjC/qEqZRfie7ipDDVyunGk1z7QXV4d1oobF5jKt/i8t2xmnafcDwy3mI8xnPhvSeJXuGhSdl5J4sLkXGnY0aq/AI8bbD8ePSlysa41CT5TNjMknbWcnrws4kFZLhSzwJONVk+E1a2zhTp/Ilsd0qignQKS29h8gUsS3MpTNK4+QLmJIoUJba5VU01h/r/mv+hgCylc76Al4kiRRmsV6KDmr+MDkj/ZvQXJ4SzZ6PFR4VP78mvzJVOZPM19vn4hh8NzN+mTZs2TeI35dX9b/op46sAAAAASUVORK5CYII=;" vertex="1" parent="n.queueui">
          <mxGeometry x="9" y="33" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_spine21" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="230" y="250" as="sourcePoint" />
            <mxPoint x="280" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_spine22" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="490" y="250" as="sourcePoint" />
            <mxPoint x="530" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_spine23" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="750" y="250" as="sourcePoint" />
            <mxPoint x="790" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_spine24" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1000" y="250" as="sourcePoint" />
            <mxPoint x="1040" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_spine25" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1240" y="250" as="sourcePoint" />
            <mxPoint x="1280" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_spine26" value="" style="html=1;endArrow=block;endFill=1;strokeColor=#b8c4d0;strokeWidth=2;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1470" y="250" as="sourcePoint" />
            <mxPoint x="1520" y="250" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_e27" value="claim" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.mgmt" target="n.reserve">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_e28" value="3% miss" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.afd" target="n.resolver">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_e29" value="point read" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.resolver" target="n.hot">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_e30" value="deny-set" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;dashed=1;endArrow=open;endFill=0;strokeColor=#d79b00;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.revoke" target="n.resolver">
          <mxGeometry relative="1" x="-0.6" as="geometry" />
        </mxCell>
        <mxCell id="_e31" value="warm" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;dashed=1;endArrow=open;endFill=0;strokeColor=#d79b00;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.proj" target="n.hot">
          <mxGeometry relative="1" x="-0.7" as="geometry" />
        </mxCell>
        <mxCell id="_e32" value="every click, cached or not" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;dashed=1;endArrow=open;endFill=0;strokeColor=#d79b00;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.afd" target="n.logs">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="_e33" value="block" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;dashed=1;endArrow=block;endFill=1;strokeColor=#b85450;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.screen" target="n.revoke">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="1640" y="60" />
              <mxPoint x="640" y="60" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="title" value="Link Platform — High-Level Architecture" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=20;fontStyle=1;fontColor=#16202c;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="20" width="1690" height="30" as="geometry" />
        </mxCell>
        <mxCell id="rule" value="" style="line;strokeWidth=1;html=1;strokeColor=#c9d3de;" vertex="1" parent="1">
          <mxGeometry x="40" y="50" width="1690" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg34" value="" style="rounded=1;arcSize=30;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="40" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg35" value="Application we own" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="70" y="490" width="110" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg36" value="" style="rounded=1;arcSize=30;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
          <mxGeometry x="200" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg37" value="Data store" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="230" y="490" width="70" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg38" value="" style="rounded=1;arcSize=30;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1">
          <mxGeometry x="320" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg39" value="Queue / topic" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="350" y="490" width="80" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg40" value="" style="rounded=1;arcSize=30;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1">
          <mxGeometry x="450" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg41" value="Interface / broker" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="480" y="490" width="110" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg42" value="" style="rounded=1;arcSize=30;html=1;fillColor=#f5f5f5;strokeColor=#8c8c8c;" vertex="1" parent="1">
          <mxGeometry x="610" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg43" value="External / third party" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="640" y="490" width="130" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg44" value="" style="rounded=1;arcSize=30;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;" vertex="1" parent="1">
          <mxGeometry x="790" y="490" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg45" value="Security / platform" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="820" y="490" width="110" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg46" value="" style="html=1;endArrow=none;strokeColor=#5a6570;strokeWidth=1.4;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="950" y="500" as="sourcePoint" />
            <mxPoint x="980" y="500" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_lg47" value="synchronous" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="980" y="490" width="70" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg48" value="" style="html=1;endArrow=none;dashed=1;strokeColor=#d79b00;strokeWidth=1.4;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1070" y="500" as="sourcePoint" />
            <mxPoint x="1100" y="500" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_lg49" value="event / async" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="1100" y="490" width="80" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg50" value="" style="html=1;endArrow=none;dashed=1;strokeColor=#b85450;strokeWidth=1.4;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="1210" y="500" as="sourcePoint" />
            <mxPoint x="1230" y="500" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_lg51" value="failure / alternate" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="1230" y="490" width="110" height="20" as="geometry" />
        </mxCell>
        <mxCell id="note" value="Stage 4 reads only stages 3's output. No arrow runs from the redirect path back into the link table." style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="520" width="1690" height="20" as="geometry" />
        </mxCell>
        <mxCell id="foot-rule" value="" style="line;strokeWidth=1;html=1;strokeColor=#e3e9ef;" vertex="1" parent="1">
          <mxGeometry x="40" y="540" width="1690" height="10" as="geometry" />
        </mxCell>
        <mxCell id="foot" value="v 1.0   ·   owner Platform Architecture   ·   date 2026-09" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=9;fontColor=#9aa7b4;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="550" width="1690" height="10" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
