blog/about/website-architecture.drawio

307 lines
34 KiB
Plaintext

<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (X11; Linux x86_64; rv:136.0) Gecko/20100101 Firefox/136.0" version="26.2.8" pages="2">
<diagram name="VBackground-1 (Background)" id="VBackground-1_(Background)">
<mxGraphModel dx="1434" dy="675" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="2" style="vsdxID=1;fillColor=#000000;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry width="1188" height="840" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
<diagram name="Page-1" id="Page-1">
<mxGraphModel dx="680" dy="317" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="2" value="Connector" parent="0" />
<mxCell id="3" style="vsdxID=1;fillColor=#000000;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="2" vertex="1">
<mxGeometry x="270" y="130" width="1188" height="840" as="geometry" />
</mxCell>
<mxCell id="3B2QuEyeK2QcOZP8EJfO-87" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="570" y="330" width="470" height="160" as="geometry" />
</mxCell>
<mxCell id="3B2QuEyeK2QcOZP8EJfO-88" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=#FFFFFF;fillColor=none;" parent="2" vertex="1">
<mxGeometry x="590" y="350" width="190" height="120" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-71" value="Caddy" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="600" y="430" width="170" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-72" value="cloudflared" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="690" y="380" width="80" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-73" value="tor" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="600" y="380" width="70" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-78" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=#FFFFFF;fillColor=none;" parent="2" vertex="1">
<mxGeometry x="830" y="350" width="190" height="120" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-80" value="cloudflared" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="840" y="380" width="80" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-81" value="i2pd" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="940" y="380" width="70" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-82" value="Caddy" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="840" y="430" width="170" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-89" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="840" y="520" width="200" height="160" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-91" value="Git" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="860" y="630" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-92" value="&lt;div&gt;CI&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="860" y="570" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-93" value="curben.gitlab.io" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="930" y="600" width="100" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-95" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="570" y="520" width="160" height="160" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-97" value="Git" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="620" y="640" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-98" value="Actions" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="620" y="594" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-99" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;curbengh.github.io&lt;/font&gt;" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="590" y="550" width="120" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-106" value="curben.netlify.app" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="790" y="690" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-107" value="&lt;div&gt;curben.pages.dev&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;fontColor=#FFFFFF;labelBorderColor=none;strokeColor=#FFFFFF;" parent="2" vertex="1">
<mxGeometry x="930" y="690" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="LHLRnkCgl6snlPtJKe81-67" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#FFFFFF;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="2" target="p8MnXqdWJZwP9HQIEqOg-91">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="920" y="700" as="sourcePoint" />
<mxPoint x="809.95" y="650" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LHLRnkCgl6snlPtJKe81-76" value="" style="endArrow=none;html=1;rounded=0;" edge="1" parent="2">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="750" y="560" as="sourcePoint" />
<mxPoint x="800" y="510" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LHLRnkCgl6snlPtJKe81-77" value="" style="endArrow=none;html=1;rounded=0;strokeColor=#66FFB3;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;startArrow=classic;startFill=1;" edge="1" parent="2" source="LHLRnkCgl6snlPtJKe81-72" target="p8MnXqdWJZwP9HQIEqOg-92">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="410" y="640" as="sourcePoint" />
<mxPoint x="460" y="590" as="targetPoint" />
<Array as="points">
<mxPoint x="890" y="550" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="LHLRnkCgl6snlPtJKe81-78" value="&lt;span style=&quot;color: rgb(255, 255, 255);&quot;&gt;Workstation&lt;/span&gt;" style="fontColor=#0066CC;verticalAlign=top;verticalLabelPosition=bottom;labelPosition=center;align=center;html=1;outlineConnect=0;fillColor=none;strokeColor=#FFFFFF;gradientColor=none;gradientDirection=north;strokeWidth=2;shape=mxgraph.networks.terminal;fillStyle=solid;" vertex="1" parent="2">
<mxGeometry x="760" y="599.37" width="50" height="40.63" as="geometry" />
</mxCell>
<mxCell id="1" value="Page-1" parent="0" />
<mxCell id="15" style="vsdxID=28;fillColor=none;gradientColor=none;strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="750" y="230" width="100" height="100" as="geometry" />
</mxCell>
<mxCell id="16" style="vsdxID=29;fillColor=#ac4201;gradientColor=none;shape=stencil(lZZRc9sgDMc/jV91lgQInrvue/TWdPEtS3ppunXffng2wsgXentzFIkfSH8JBn54Oz69HgYa327Xy4/D7+n5dhz4y0A0nY+H63TLXwM/Dvzwcrkevl8v7+fn5ffr0+w5f/28/JpX+FjiYgCKcxSNfxYLCZD7Z/m6BHx7vy4RuIZ4ELeGrCZMy+8PWl0QXHFZTUjgw+rFi0kCoKxebL3uwMVBEAPfrLzChIGC4TOgwSMki3cwcg8fErjU4j0kbunBAfuWPrZo70CwRY/gYo/sCDCag+uJSEvHNu0jJNfCKW8vtHCKwKlHz9sTc25K4GPLx1izs5qYIJmyowBSy2cB1y07Bq1x4ecYNmVHU/PZxbA9uD27W3KpIsXdsqW8ELlFO4HYonOBjdpCTmoXPbZc0SxVodfNldZzgDbh+0NXr/sJN/neLkxaSTF6i1zbgVUV0Rk8g6dP9Oa94XtNoOqdqioLP+h8UL37MtAqX73u8QUsfrNwwecOsHgPwbd4RiC/O37qjlh2tWKrKTGw4bvc22bO4GgmjYtlrig9JaBu8n0Ah4YedUM65RBsvyWvsMIPvBuyaSwSuTdks9LMBZNjorlj5imLhr/xYvXSkVT5sX/HcJ3fpfpZwyb7IlVWtfeiEZ9EMMXPFupO+uwg3OLnGHP8bEqm9bPJtJ7kUu/o3dzn5IS0g5txpypTMul9r12vPuXOw09EXyPKlVeHQCEnt7vYOcuJWvb2UVOGgH3VnKbz/z2D8kd9RL1Mp9PyBtv+bx9d2bQ82PjxLw==);strokeColor=#ffffff;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="15" vertex="1">
<mxGeometry y="21" width="100" height="57" as="geometry" />
</mxCell>
<mxCell id="17" value="&lt;font style=&quot;font-size:14px;font-family:Consolas;color:#ffffff;direction:ltr;letter-spacing:0px;line-height:120%;opacity:1&quot;&gt;Cloudflare&lt;br/&gt;&lt;/font&gt;" style="text;vsdxID=28;fillColor=none;gradientColor=none;strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;verticalAlign=middle;align=center;;html=1;" parent="15" vertex="1">
<mxGeometry x="1.68" y="39.89" width="96.64" height="28.23" as="geometry" />
</mxCell>
<mxCell id="32" value="&lt;font style=&quot;font-size: 14px; font-family: Consolas; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1;&quot;&gt;mdleom.com&lt;br style=&quot;&quot;&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=69;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontSize=18;" parent="15" vertex="1">
<mxGeometry x="20" width="64" height="13" as="geometry" />
</mxCell>
<mxCell id="18" style="vsdxID=30;fillColor=none;gradientColor=none;strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="620" y="230" width="100" height="100" as="geometry" />
</mxCell>
<mxCell id="19" style="vsdxID=31;fillColor=#00b050;gradientColor=none;shape=stencil(lZZRc9sgDMc/jV91lgQInrvue/TWdPEtS3ppunXffng2wsgXentzFIkfSH8JBn54Oz69HgYa327Xy4/D7+n5dhz4y0A0nY+H63TLXwM/Dvzwcrkevl8v7+fn5ffr0+w5f/28/JpX+FjiYgCKcxSNfxYLCZD7Z/m6BHx7vy4RuIZ4ELeGrCZMy+8PWl0QXHFZTUjgw+rFi0kCoKxebL3uwMVBEAPfrLzChIGC4TOgwSMki3cwcg8fErjU4j0kbunBAfuWPrZo70CwRY/gYo/sCDCag+uJSEvHNu0jJNfCKW8vtHCKwKlHz9sTc25K4GPLx1izs5qYIJmyowBSy2cB1y07Bq1x4ecYNmVHU/PZxbA9uD27W3KpIsXdsqW8ELlFO4HYonOBjdpCTmoXPbZc0SxVodfNldZzgDbh+0NXr/sJN/neLkxaSTF6i1zbgVUV0Rk8g6dP9Oa94XtNoOqdqioLP+h8UL37MtAqX73u8QUsfrNwwecOsHgPwbd4RiC/O37qjlh2tWKrKTGw4bvc22bO4GgmjYtlrig9JaBu8n0Ah4YedUM65RBsvyWvsMIPvBuyaSwSuTdks9LMBZNjorlj5imLhr/xYvXSkVT5sX/HcJ3fpfpZwyb7IlVWtfeiEZ9EMMXPFupO+uwg3OLnGHP8bEqm9bPJtJ7kUu/o3dzn5IS0g5txpypTMul9r12vPuXOw09EXyPKlVeHQCEnt7vYOcuJWvb2UVOGgH3VnKbz/z2D8kd9RL1Mp9PyBtv+bx9d2bQ82PjxLw==);strokeColor=#ffffff;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="18" vertex="1">
<mxGeometry y="21" width="100" height="57" as="geometry" />
</mxCell>
<mxCell id="20" value="&lt;font style=&quot;font-size:14px;font-family:Consolas;color:#ffffff;direction:ltr;letter-spacing:0px;line-height:120%;opacity:1&quot;&gt;Tor&lt;br/&gt;&lt;/font&gt;" style="text;vsdxID=30;fillColor=none;gradientColor=none;strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;verticalAlign=middle;align=center;;html=1;" parent="18" vertex="1">
<mxGeometry x="28.84" y="37.89" width="42.33" height="28.23" as="geometry" />
</mxCell>
<mxCell id="33" value="&lt;font style=&quot;font-size: 12px; font-family: Consolas; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1;&quot;&gt;xw226*.onion&lt;br style=&quot;&quot;&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=70;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontSize=14;" parent="18" vertex="1">
<mxGeometry x="10" width="74" height="13" as="geometry" />
</mxCell>
<mxCell id="57" style="vsdxID=45;edgeStyle=none;startArrow=classic;endArrow=none;startSize=5;endSize=5;strokeColor=#00b050;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.484;exitY=0.991;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="19" target="p8MnXqdWJZwP9HQIEqOg-73" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="610" y="320" as="sourcePoint" />
<mxPoint x="670" y="320" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="65" style="vsdxID=79;edgeStyle=none;startArrow=none;endArrow=classic;startSize=5;endSize=5;strokeColor=#00b050;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;startFill=0;endFill=1;entryX=0.204;entryY=-0.014;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryPerimeter=0;" parent="1" source="p8MnXqdWJZwP9HQIEqOg-73" target="p8MnXqdWJZwP9HQIEqOg-71" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="710" y="420.01" as="sourcePoint" />
<mxPoint x="762.376" y="419.9999999999999" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="27" value="&lt;font style=&quot;font-size:14px;font-family:Consolas;color:#ffffff;direction:ltr;letter-spacing:0px;line-height:120%;opacity:1&quot;&gt;nixOS VM 1&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=60;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="580" y="350" width="107" height="24" as="geometry" />
</mxCell>
<mxCell id="67" style="vsdxID=89;edgeStyle=none;startArrow=classic;endArrow=none;startSize=5;endSize=5;strokeColor=#7030a0;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;entryX=0.447;entryY=0.011;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.513;exitY=0.982;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="46" target="p8MnXqdWJZwP9HQIEqOg-81" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-1" as="offset" />
<Array as="points" />
<mxPoint x="940" y="310" as="sourcePoint" />
<mxPoint x="999" y="310" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="28" value="&lt;font style=&quot;font-size:14px;font-family:Consolas;color:#ffffff;direction:ltr;letter-spacing:0px;line-height:120%;opacity:1&quot;&gt;Cloud Provider&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=62;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="930" y="465" width="107" height="28" as="geometry" />
</mxCell>
<mxCell id="45" style="vsdxID=81;fillColor=none;gradientColor=none;strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="880" y="230" width="100" height="100" as="geometry" />
</mxCell>
<mxCell id="46" style="vsdxID=82;fillColor=#7030a0;gradientColor=none;shape=stencil(lZZRc9sgDMc/jV91lgQInrvue/TWdPEtS3ppunXffng2wsgXentzFIkfSH8JBn54Oz69HgYa327Xy4/D7+n5dhz4y0A0nY+H63TLXwM/Dvzwcrkevl8v7+fn5ffr0+w5f/28/JpX+FjiYgCKcxSNfxYLCZD7Z/m6BHx7vy4RuIZ4ELeGrCZMy+8PWl0QXHFZTUjgw+rFi0kCoKxebL3uwMVBEAPfrLzChIGC4TOgwSMki3cwcg8fErjU4j0kbunBAfuWPrZo70CwRY/gYo/sCDCag+uJSEvHNu0jJNfCKW8vtHCKwKlHz9sTc25K4GPLx1izs5qYIJmyowBSy2cB1y07Bq1x4ecYNmVHU/PZxbA9uD27W3KpIsXdsqW8ELlFO4HYonOBjdpCTmoXPbZc0SxVodfNldZzgDbh+0NXr/sJN/neLkxaSTF6i1zbgVUV0Rk8g6dP9Oa94XtNoOqdqioLP+h8UL37MtAqX73u8QUsfrNwwecOsHgPwbd4RiC/O37qjlh2tWKrKTGw4bvc22bO4GgmjYtlrig9JaBu8n0Ah4YedUM65RBsvyWvsMIPvBuyaSwSuTdks9LMBZNjorlj5imLhr/xYvXSkVT5sX/HcJ3fpfpZwyb7IlVWtfeiEZ9EMMXPFupO+uwg3OLnGHP8bEqm9bPJtJ7kUu/o3dzn5IS0g5txpypTMul9r12vPuXOw09EXyPKlVeHQCEnt7vYOcuJWvb2UVOGgH3VnKbz/z2D8kd9RL1Mp9PyBtv+bx9d2bQ82PjxLw==);strokeColor=#ffffff;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="45" vertex="1">
<mxGeometry y="21" width="100" height="57" as="geometry" />
</mxCell>
<mxCell id="47" value="&lt;font style=&quot;font-size:14px;font-family:Consolas;color:#ffffff;direction:ltr;letter-spacing:0px;line-height:120%;opacity:1&quot;&gt;I2P&lt;br/&gt;&lt;/font&gt;" style="text;vsdxID=81;fillColor=none;gradientColor=none;strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;verticalAlign=middle;align=center;;html=1;" parent="45" vertex="1">
<mxGeometry x="28.84" y="37.89" width="42.33" height="28.23" as="geometry" />
</mxCell>
<mxCell id="53" value="&lt;font style=&quot;font-size: 12px; font-family: Consolas; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1;&quot;&gt;mdleom.i2p&lt;br style=&quot;&quot;&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=88;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontSize=14;" parent="45" vertex="1">
<mxGeometry x="10" width="74" height="13" as="geometry" />
</mxCell>
<mxCell id="3B2QuEyeK2QcOZP8EJfO-86" style="vsdxID=79;startArrow=none;endArrow=classic;startSize=5;endSize=5;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;startFill=0;endFill=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.765;entryY=0.015;entryDx=0;entryDy=0;strokeColor=#AC4201;entryPerimeter=0;" parent="1" source="p8MnXqdWJZwP9HQIEqOg-72" target="p8MnXqdWJZwP9HQIEqOg-71" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<mxPoint x="709.9975000000001" y="410" as="sourcePoint" />
<mxPoint x="761.746" y="410.25" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-79" value="&lt;font style=&quot;font-size:14px;font-family:Consolas;color:#ffffff;direction:ltr;letter-spacing:0px;line-height:120%;opacity:1&quot;&gt;nixOS VM 2&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=60;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="820" y="350" width="107" height="24" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-83" style="vsdxID=79;startArrow=none;endArrow=classic;startSize=5;endSize=5;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;startFill=0;endFill=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.236;entryY=0.004;entryDx=0;entryDy=0;strokeColor=#AC4201;entryPerimeter=0;" parent="1" source="p8MnXqdWJZwP9HQIEqOg-80" target="p8MnXqdWJZwP9HQIEqOg-82" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<mxPoint x="740" y="420" as="sourcePoint" />
<mxPoint x="741" y="441" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-84" style="vsdxID=89;edgeStyle=none;startArrow=classic;endArrow=none;startSize=5;endSize=5;strokeColor=#7030a0;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;entryX=0.535;entryY=0.996;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.809;exitY=0.024;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="p8MnXqdWJZwP9HQIEqOg-82" target="p8MnXqdWJZwP9HQIEqOg-81" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="-1" as="offset" />
<Array as="points" />
<mxPoint x="460" y="439" as="sourcePoint" />
<mxPoint x="519" y="439" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-85" value="" style="vsdxID=43;edgeStyle=none;startArrow=none;endArrow=none;startSize=5;endSize=5;strokeColor=#ac4201;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=0;endFill=0;entryX=-0.007;entryY=0.483;entryDx=0;entryDy=0;entryPerimeter=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="p8MnXqdWJZwP9HQIEqOg-72" target="p8MnXqdWJZwP9HQIEqOg-80" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="780" y="400" as="sourcePoint" />
<mxPoint x="839" y="400" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-87" value="" style="vsdxID=43;edgeStyle=none;startArrow=classic;endArrow=none;startSize=5;endSize=5;strokeColor=#ac4201;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=1;endFill=0;exitX=0.54;exitY=0.985;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="16" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="790" y="310" as="sourcePoint" />
<mxPoint x="803" y="395" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-90" value="GitLab" style="verticalAlign=middle;align=center;vsdxID=62;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#FFFFFF;" parent="1" vertex="1">
<mxGeometry x="980" y="522" width="60" height="28" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-96" value="GitHub" style="verticalAlign=middle;align=center;vsdxID=62;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#FFFFFF;" parent="1" vertex="1">
<mxGeometry x="570" y="522" width="60" height="28" as="geometry" />
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-100" value="" style="vsdxID=43;edgeStyle=none;startArrow=openThin;endArrow=none;startSize=5;endSize=5;strokeColor=#FFFFFF;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=0;endFill=0;entryX=0.517;entryY=-0.01;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" target="p8MnXqdWJZwP9HQIEqOg-98" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="651" y="580" as="sourcePoint" />
<mxPoint x="651" y="590" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-101" value="" style="vsdxID=43;edgeStyle=none;startArrow=openThin;endArrow=none;startSize=5;endSize=5;strokeColor=#FFFFFF;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=0;endFill=0;entryX=0.512;entryY=0.009;entryDx=0;entryDy=0;exitX=0.51;exitY=0.987;exitDx=0;exitDy=0;exitPerimeter=0;entryPerimeter=0;" parent="1" source="p8MnXqdWJZwP9HQIEqOg-98" target="p8MnXqdWJZwP9HQIEqOg-97" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="650" y="620" as="sourcePoint" />
<mxPoint x="650" y="634" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-102" value="" style="vsdxID=43;edgeStyle=none;startArrow=classic;endArrow=none;startSize=5;endSize=5;strokeColor=#FFFFFF;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=1;endFill=0;entryX=-0.013;entryY=0.583;entryDx=0;entryDy=0;exitX=1.019;exitY=0.435;exitDx=0;exitDy=0;exitPerimeter=0;entryPerimeter=0;" parent="1" source="p8MnXqdWJZwP9HQIEqOg-97" target="p8MnXqdWJZwP9HQIEqOg-91" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="770" y="690" />
</Array>
<mxPoint x="661" y="634" as="sourcePoint" />
<mxPoint x="661" y="650" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-103" value="" style="vsdxID=43;edgeStyle=none;startArrow=none;endArrow=none;startSize=5;endSize=5;strokeColor=#FFFFFF;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=0;endFill=0;entryX=0.334;entryY=0.019;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.489;exitY=0.75;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" edge="1" source="LHLRnkCgl6snlPtJKe81-70">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="805.8299999999997" y="449.9999999999999" as="sourcePoint" />
<mxPoint x="806.04" y="570.5699999999999" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-104" value="" style="vsdxID=43;edgeStyle=none;startArrow=classic;endArrow=classic;startSize=5;endSize=5;strokeColor=#66FFB3;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=1;endFill=1;entryX=-0.007;entryY=0.483;entryDx=0;entryDy=0;entryPerimeter=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="770" y="451" as="sourcePoint" />
<mxPoint x="839" y="450" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-105" value="" style="vsdxID=43;edgeStyle=none;startArrow=classic;endArrow=none;startSize=5;endSize=5;strokeColor=#FFFFFF;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=1;endFill=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="p8MnXqdWJZwP9HQIEqOg-92" target="p8MnXqdWJZwP9HQIEqOg-91" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="810" y="460" as="sourcePoint" />
<mxPoint x="810" y="581" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-109" value="" style="vsdxID=43;edgeStyle=none;startArrow=openThin;endArrow=openThin;startSize=5;endSize=5;strokeColor=#FFFFFF;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=0;endFill=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" parent="1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="920" y="700" />
</Array>
<mxPoint x="930" y="705" as="sourcePoint" />
<mxPoint x="900" y="705" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="p8MnXqdWJZwP9HQIEqOg-110" value="" style="vsdxID=43;edgeStyle=orthogonalEdgeStyle;startArrow=openThin;endArrow=none;startSize=5;endSize=5;strokeColor=#FFFFFF;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=0;endFill=0;exitX=0.452;exitY=-0.013;exitDx=0;exitDy=0;exitPerimeter=0;entryX=1.01;entryY=0.407;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" source="p8MnXqdWJZwP9HQIEqOg-93" target="p8MnXqdWJZwP9HQIEqOg-92" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<mxPoint x="661" y="590" as="sourcePoint" />
<mxPoint x="895" y="585" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LHLRnkCgl6snlPtJKe81-75" value="" style="vsdxID=43;edgeStyle=none;startArrow=none;endArrow=none;startSize=5;endSize=5;strokeColor=#66FFB3;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#FFFFFF;rounded=0;align=center;startFill=0;endFill=0;entryX=0.578;entryY=0.06;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.489;exitY=0.75;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="1" target="LHLRnkCgl6snlPtJKe81-71">
<mxGeometry relative="1" as="geometry">
<mxPoint as="offset" />
<Array as="points" />
<mxPoint x="805.8299999999997" y="449.9999999999999" as="sourcePoint" />
<mxPoint x="806.04" y="570.5699999999999" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LHLRnkCgl6snlPtJKe81-70" style="vsdxID=28;fillColor=none;gradientColor=none;strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="736" y="500" width="100" height="100" as="geometry" />
</mxCell>
<mxCell id="LHLRnkCgl6snlPtJKe81-71" style="vsdxID=29;fillColor=#66FFB3;gradientColor=none;shape=stencil(lZZRc9sgDMc/jV91lgQInrvue/TWdPEtS3ppunXffng2wsgXentzFIkfSH8JBn54Oz69HgYa327Xy4/D7+n5dhz4y0A0nY+H63TLXwM/Dvzwcrkevl8v7+fn5ffr0+w5f/28/JpX+FjiYgCKcxSNfxYLCZD7Z/m6BHx7vy4RuIZ4ELeGrCZMy+8PWl0QXHFZTUjgw+rFi0kCoKxebL3uwMVBEAPfrLzChIGC4TOgwSMki3cwcg8fErjU4j0kbunBAfuWPrZo70CwRY/gYo/sCDCag+uJSEvHNu0jJNfCKW8vtHCKwKlHz9sTc25K4GPLx1izs5qYIJmyowBSy2cB1y07Bq1x4ecYNmVHU/PZxbA9uD27W3KpIsXdsqW8ELlFO4HYonOBjdpCTmoXPbZc0SxVodfNldZzgDbh+0NXr/sJN/neLkxaSTF6i1zbgVUV0Rk8g6dP9Oa94XtNoOqdqioLP+h8UL37MtAqX73u8QUsfrNwwecOsHgPwbd4RiC/O37qjlh2tWKrKTGw4bvc22bO4GgmjYtlrig9JaBu8n0Ah4YedUM65RBsvyWvsMIPvBuyaSwSuTdks9LMBZNjorlj5imLhr/xYvXSkVT5sX/HcJ3fpfpZwyb7IlVWtfeiEZ9EMMXPFupO+uwg3OLnGHP8bEqm9bPJtJ7kUu/o3dzn5IS0g5txpypTMul9r12vPuXOw09EXyPKlVeHQCEnt7vYOcuJWvb2UVOGgH3VnKbz/z2D8kd9RL1Mp9PyBtv+bx9d2bQ82PjxLw==);strokeColor=#ffffff;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" vertex="1" parent="LHLRnkCgl6snlPtJKe81-70">
<mxGeometry y="21" width="100" height="57" as="geometry" />
</mxCell>
<mxCell id="LHLRnkCgl6snlPtJKe81-72" value="Tailscale" style="text;vsdxID=28;fillColor=none;gradientColor=none;strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;verticalAlign=middle;align=center;;html=1;fontColor=light-dark(#000000,#000000);" vertex="1" parent="LHLRnkCgl6snlPtJKe81-70">
<mxGeometry x="1.68" y="36" width="96.64" height="28.23" as="geometry" />
</mxCell>
<mxCell id="LHLRnkCgl6snlPtJKe81-79" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.493;entryY=1.005;entryDx=0;entryDy=0;entryPerimeter=0;strokeColor=#66FFB3;" edge="1" parent="LHLRnkCgl6snlPtJKe81-70" source="LHLRnkCgl6snlPtJKe81-70" target="LHLRnkCgl6snlPtJKe81-71">
<mxGeometry relative="1" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>