diff --git a/docs/general/images/architecture/client-km-compute.svg b/docs/general/images/architecture/client-km-compute.svg
index 445fe55b7e..9d1eadb20d 100644
--- a/docs/general/images/architecture/client-km-compute.svg
+++ b/docs/general/images/architecture/client-km-compute.svg
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- Do not edit this file with editors other than draw.io -->
 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="764px" height="486px" viewBox="-0.5 -0.5 764 486" content="&lt;mxfile host=&quot;app.diagrams.net&quot; modified=&quot;2023-12-13T11:51:26.562Z&quot; agent=&quot;Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/119.0&quot; etag=&quot;AERsRifxl3iZ6WRSKPWk&quot; version=&quot;22.1.8&quot; type=&quot;device&quot;&gt;&lt;diagram id=&quot;0lp0ar3YvEH75QBAiC_L&quot; name=&quot;Page-1&quot;&gt;5Vpbc6M2FP41zLQPZgTCFx5jx0l3umnTdaabPCog29oAokI49v76lUAYRLCDbezsTvOQQYdzdP30nQs24CRc3zIUL++ojwPDBv7agNeGbY+GQ/FfCja5YADsXLBgxM9FVimYke9YCYGSpsTHiabIKQ04iXWhR6MIe1yTIcboq642p4E+aowWakRQCmYeCvAbta/E50u1rH5F+w9MFstiZAuoNyEqlJUgWSKfvlZEcGrACaOU50/heoIDuXfFvuR2NzvebifGcMTbGKyuP91vHq/4lx67A+Bf5x/beugN1Nz4plgwo2nkY2kDDDimjC/pgkYo+ExpLISWEH7DnG/UUaGUUyFa8jBQb/Ga8Edpbg77qvmkepPP1+tqY1M0Is42j9XGU6UL2S7tslZhmHDE+JU8aCGIaIQL2Q0JAqXzdqfU5iU0ZR7esz0F4hBbYL5HT2Ea+4sqbNQ53GIaYjFnocBwgDhZ6dhCCqKLrV55iuJBHeQBh6qu3AoFqRrJsAeBmP/YJyvxuJCPtlkIxRgVeYPqrVi7DabxEoeYoaC13T1i6IGEWBjfp88B8cTDn3hTaD6zum29xxo05fZ+Rs+CYDTAoYAsIvHsiePFTAhWmHEirvCVehES35d9jBlOyHf0nPUngRFTEvFs9/tjo38tNSgXB0SlFYRDIQjkeGPkvSyyizGhAWUl0t4ia98tk/PC6ybaUnPSmEEDjrICJnRhbqn4tOfkzdbIUn3fy6WXHfccR+/WgnoXdD5PJAxq0NxO8Xi0uo3nPFNNtdGns1IzwXTALgXfFdz3VHluJrvz8xHsmo+aUWMPgYYa6AK9i3xByqp76BRBwn6mg+2Zbhp5bBPLFQoJCmPJLtl/IZmlzyHhrbt6YChKkJeRya9BeLZtwq4Yz+2K8XrAtIE70mBmdUJ5Vr/GeO6lGM9qg9pJQOQWt4Xbb3+JyNv8lhi2mBO4wxzdoeQla7Xs4W+UEGEOJp8//X40YkuelkB9XRKOZzHKOO1V5Ac6jueCRAt4GTbEo3l/Lv4yjmX0BVfeAeAO1bud7PkGbDtBZdk13oKq/VqG+FudZSW8H4DdKDspZBtdxgkWoXlrV9XGAfooWW6PfOtnt402fvZ4j2i39IjWhTziqIYsp4aYfKLn84jOZYFk9s8HpTckAEcjZz8FdAaXzgOok9jBbuMwCv6WjqA16WfpGLhDEVpg1trKuAGGe2O4juHaH+IqPA+j3a5C/nXjKOBAv87bYs6HOQrLvvAFHzjDyhUX4RgA8OR7XmZj5qAPNU9huu7wHW+Rte4xI2JLZfy7nUNddg4GgS0ZpPOSULPDcfo1hI7aORxxQGhTUVOZwTlcEmzDXs5Fy1Ez7LGsFxT5re0nVOBOZHTSXiRNOK9mxYiwoznwAgneXMy66QZ0kuYVbNRFZcuynOEZ0ryBXi+7YJY33OPyOgzgRYJcBGFdx/DAHNpOlZ2tgv0PZefz823nAf5pbnrUhvQGB1emxBnZoKG09K79F5ykAf+ZiWo/IVXrVNC0DqCo4mtIF6UoC0BXo5Ouyu+WzlL26FIs1co5H5VaVNzthIZxytub/m/zC8f58PzC3Q8IUFx5If0vld+uxwGe87JVPyUZf2gHUyjKF70k83RXQsGy4nVuVu9IA4MgvzTJaXC6xl6akyCYRivCaBTqJdN87INQIw6ON3NctsyTGE7683zBDfUNxXNVICrRoZHawSis1az6BRlVQeg2gBCeC4T2O991TkCT1cblntD/LY5EUpIlB60r+CcMV0tAjgZ3Fw78LPCWG6HCYavZ6x8M9+GOjLkKd9AA9/7Z4P7OB6FTyLMrFu6bB/LqTzZ/kbzPiS9AQ1AQbLbeI49Oirz+V15gVskAXxnJ1iQSRxuMA+q9eEtEtC/QHUy2a9f6gexT55dd5ZIugj1Xzx0ct4F4Rt0Qj2iWvyzMc4Xy55lw+gM=&lt;/diagram&gt;&lt;/mxfile&gt;"><defs/><g><path d="M 210 165 L 426.24 71.3" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 433.46 68.17 L 425.91 77.16 L 426.24 71.3 L 421.74 67.52 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)rotate(337 202.30425113776323 55.60794065738571)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 56px; margin-left: 202px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div>2.</div><div>Get Ephemeral</div><div>ParaTime Public Key<br /></div></div></div></div></foreignObject><text x="202" y="59" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">2....</text></switch></g><path d="M 255 255 L 426.18 326.33" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 433.45 329.35 L 421.74 330.16 L 426.18 326.33 L 425.78 320.47 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)rotate(22.3 233.0130724453877 170.2299045365471)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 170px; margin-left: 233px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div>3.</div><div>Encrypt &amp; Submit</div><div>Transaction<br /></div></div></div></div></foreignObject><text x="233" y="174" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">3....</text></switch></g><rect x="75" y="165" width="180" height="90" rx="13.5" ry="13.5" fill="#e8f5ffff" stroke="#0097ffff" stroke-width="1.5" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 140px; margin-left: 51px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div>Client</div><div>(Node.js, MetaMask,</div><div>Oasis CLI)<br /></div></div></div></div></foreignObject><text x="110" y="144" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Client...</text></switch></g><path d="M 435 90 L 263.82 161.33" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" stroke-dasharray="4.5 4.5" pointer-events="stroke"/><path d="M 256.55 164.36 L 264.22 155.47 L 263.82 161.33 L 268.26 165.16 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><path d="M 525 90 L 525 320.45" fill="none" stroke="#3884ff" stroke-width="1.5" stroke-miterlimit="10" stroke-dasharray="4.5 4.5" pointer-events="stroke"/><path d="M 525 328.32 L 519.75 317.82 L 525 320.45 L 530.25 317.82 Z" fill="#3884ff" stroke="#3884ff" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><rect x="435" y="0" width="180" height="90" rx="13.5" ry="13.5" fill="#cceaffff" stroke="#000000" stroke-width="1.5" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 30px; margin-left: 291px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div>Oasis Node</div><div>Key Manager</div><div>🔒<br /></div></div></div></div></foreignObject><text x="350" y="34" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Oasis Node...</text></switch></g><path d="M 551.46 329.73 L 552.5 99.28" fill="none" stroke="#3884ff" stroke-width="1.5" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 552.53 91.41 L 557.74 101.93 L 552.5 99.28 L 547.24 101.88 Z" fill="#3884ff" stroke="#3884ff" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 150px; margin-left: 430px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: #3884ff; "><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(56, 132, 255); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div>4.</div><div>Get Ephemeral</div><div>ParaTime Secret and</div><div>Contract State Keypair<br /></div></div></div></div></foreignObject><text x="430" y="153" fill="#3884ff" font-family="Helvetica" font-size="11px" text-anchor="middle">4....</text></switch></g><path d="M 435 352.5 L 214.12 258.99" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" stroke-dasharray="4.5 4.5" pointer-events="stroke"/><path d="M 206.86 255.92 L 218.58 255.18 L 214.12 258.99 L 214.49 264.85 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)rotate(23.1 210.30151213591694 230.73210669354512)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 231px; margin-left: 210px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div>6.</div><div>Encrypted Transaction</div><div>Result<br /></div></div></div></div></foreignObject><text x="210" y="234" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">6....</text></switch></g><rect x="435" y="330" width="180" height="90" rx="13.5" ry="13.5" fill="#cceaffff" stroke="#000000" stroke-width="1.5" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 250px; margin-left: 291px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div>Oasis Node</div><div>ParaTime Compute</div><div>🔒<br /></div></div></div></div></foreignObject><text x="350" y="254" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Oasis Node...</text></switch></g><rect x="15" y="439.5" width="285" height="45" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 308px; margin-left: 12px;"><div style="box-sizing: border-box; font-size: 0px; text-align: left;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div align="left"><font style="font-size: 11px;">🔒 Trusted Execution Environment</font></div></div></div></div></foreignObject><text x="12" y="312" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">🔒 Trusted Execution Environment</text></switch></g><rect x="0" y="90" width="150" height="75" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 85px; margin-left: 50px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div style="font-size: 11px;">1.</div><div style="font-size: 11px;">Generate Client</div><div style="font-size: 11px;">Keypair</div></div></div></div></foreignObject><text x="50" y="88" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">1....</text></switch></g><rect x="493.5" y="405" width="270" height="75" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 295px; margin-left: 419px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: #3884ff; "><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(56, 132, 255); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div style="font-size: 11px;"><font style="font-size: 11px;">5.</font></div><div style="font-size: 11px;"><font style="font-size: 11px;">Confidentially Execute Contract</font></div><div style="font-size: 11px;"><font style="font-size: 11px;">and Write to Blockchain<br style="font-size: 11px;" /></font></div></div></div></div></foreignObject><text x="419" y="298" fill="#3884ff" font-family="Helvetica" font-size="11px" text-anchor="middle">5....</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg>
\ No newline at end of file
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="764px" height="486px" viewBox="-0.5 -0.5 509 324" class="ge-export-svg-auto" content="&lt;mxfile host=&quot;app.diagrams.net&quot; agent=&quot;Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36&quot; scale=&quot;1&quot; border=&quot;0&quot; version=&quot;25.0.3&quot;&gt;&#10;  &lt;diagram id=&quot;0lp0ar3YvEH75QBAiC_L&quot; name=&quot;Page-1&quot;&gt;&#10;    &lt;mxGraphModel dx=&quot;1010&quot; dy=&quot;668&quot; grid=&quot;1&quot; gridSize=&quot;10&quot; guides=&quot;1&quot; tooltips=&quot;1&quot; connect=&quot;1&quot; arrows=&quot;1&quot; fold=&quot;1&quot; page=&quot;0&quot; pageScale=&quot;1&quot; pageWidth=&quot;850&quot; pageHeight=&quot;1100&quot; math=&quot;0&quot; shadow=&quot;0&quot;&gt;&#10;      &lt;root&gt;&#10;        &lt;mxCell id=&quot;0&quot; /&gt;&#10;        &lt;mxCell id=&quot;1&quot; parent=&quot;0&quot; /&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-6&quot; style=&quot;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0.75;entryDx=0;entryDy=0;startArrow=none;startFill=0;&quot; parent=&quot;1&quot; source=&quot;vDIPyXAtR-rM00V4Q21T-1&quot; target=&quot;vDIPyXAtR-rM00V4Q21T-2&quot; edge=&quot;1&quot;&gt;&#10;          &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-7&quot; value=&quot;&amp;lt;div&amp;gt;2.&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;Get Ephemeral&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;ParaTime Public Key&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];rotation=337;labelBackgroundColor=none;&quot; parent=&quot;vDIPyXAtR-rM00V4Q21T-6&quot; vertex=&quot;1&quot; connectable=&quot;0&quot;&gt;&#10;          &lt;mxGeometry x=&quot;0.393&quot; y=&quot;-4&quot; relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#10;            &lt;mxPoint x=&quot;-44&quot; y=&quot;-13&quot; as=&quot;offset&quot; /&gt;&#10;          &lt;/mxGeometry&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-9&quot; style=&quot;edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;exitX=1;exitY=1;exitDx=0;exitDy=0;&quot; parent=&quot;1&quot; source=&quot;vDIPyXAtR-rM00V4Q21T-1&quot; target=&quot;vDIPyXAtR-rM00V4Q21T-3&quot; edge=&quot;1&quot;&gt;&#10;          &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#10;            &lt;mxPoint x=&quot;270&quot; y=&quot;390&quot; as=&quot;sourcePoint&quot; /&gt;&#10;          &lt;/mxGeometry&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-10&quot; value=&quot;&amp;lt;div&amp;gt;3.&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;Encrypt &amp;amp;amp; Submit&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;Transaction&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];rotation=22.3;labelBackgroundColor=none;&quot; parent=&quot;vDIPyXAtR-rM00V4Q21T-9&quot; vertex=&quot;1&quot; connectable=&quot;0&quot;&gt;&#10;          &lt;mxGeometry x=&quot;-0.2098&quot; y=&quot;1&quot; relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#10;            &lt;mxPoint x=&quot;15&quot; y=&quot;-19&quot; as=&quot;offset&quot; /&gt;&#10;          &lt;/mxGeometry&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-1&quot; value=&quot;&amp;lt;div&amp;gt;Client&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;(Node.js, MetaMask,&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;Oasis CLI)&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=#e8f5ffff;strokeColor=#0097ffff;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#10;          &lt;mxGeometry x=&quot;120&quot; y=&quot;330&quot; width=&quot;120&quot; height=&quot;60&quot; as=&quot;geometry&quot; /&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-8&quot; style=&quot;edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;startArrow=none;startFill=0;dashed=1;entryX=1;entryY=0;entryDx=0;entryDy=0;&quot; parent=&quot;1&quot; source=&quot;vDIPyXAtR-rM00V4Q21T-2&quot; target=&quot;vDIPyXAtR-rM00V4Q21T-1&quot; edge=&quot;1&quot;&gt;&#10;          &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#10;            &lt;mxPoint x=&quot;280&quot; y=&quot;340&quot; as=&quot;targetPoint&quot; /&gt;&#10;          &lt;/mxGeometry&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-14&quot; style=&quot;edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;startArrow=none;startFill=0;dashed=1;strokeColor=#3884ff;&quot; parent=&quot;1&quot; source=&quot;vDIPyXAtR-rM00V4Q21T-2&quot; target=&quot;vDIPyXAtR-rM00V4Q21T-3&quot; edge=&quot;1&quot;&gt;&#10;          &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-2&quot; value=&quot;&amp;lt;div&amp;gt;Oasis Node&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;Key Manager&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;🔒&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=#cceaffff;strokeColor=#000000;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#10;          &lt;mxGeometry x=&quot;360&quot; y=&quot;220&quot; width=&quot;120&quot; height=&quot;60&quot; as=&quot;geometry&quot; /&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-12&quot; style=&quot;edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.647;exitY=-0.003;exitDx=0;exitDy=0;startArrow=none;startFill=0;entryX=0.653;entryY=0.997;entryDx=0;entryDy=0;entryPerimeter=0;exitPerimeter=0;strokeColor=#3884ff;&quot; parent=&quot;1&quot; source=&quot;vDIPyXAtR-rM00V4Q21T-3&quot; target=&quot;vDIPyXAtR-rM00V4Q21T-2&quot; edge=&quot;1&quot;&gt;&#10;          &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#10;            &lt;mxPoint x=&quot;450&quot; y=&quot;280&quot; as=&quot;targetPoint&quot; /&gt;&#10;            &lt;Array as=&quot;points&quot; /&gt;&#10;          &lt;/mxGeometry&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-13&quot; value=&quot;&amp;lt;div&amp;gt;4.&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;Get Ephemeral&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;ParaTime Secret and&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;Contract State Keypair&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontColor=#3884ff;labelBackgroundColor=none;&quot; parent=&quot;vDIPyXAtR-rM00V4Q21T-12&quot; vertex=&quot;1&quot; connectable=&quot;0&quot;&gt;&#10;          &lt;mxGeometry x=&quot;0.1147&quot; y=&quot;1&quot; relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#10;            &lt;mxPoint x=&quot;63&quot; y=&quot;19&quot; as=&quot;offset&quot; /&gt;&#10;          &lt;/mxGeometry&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-17&quot; style=&quot;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.25;exitDx=0;exitDy=0;startArrow=none;startFill=0;dashed=1;entryX=0.724;entryY=1.003;entryDx=0;entryDy=0;entryPerimeter=0;&quot; parent=&quot;1&quot; source=&quot;vDIPyXAtR-rM00V4Q21T-3&quot; target=&quot;vDIPyXAtR-rM00V4Q21T-1&quot; edge=&quot;1&quot;&gt;&#10;          &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-18&quot; value=&quot;&amp;lt;div&amp;gt;6.&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;Encrypted Transaction&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;Result&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBackgroundColor=none;rotation=23.1;&quot; parent=&quot;vDIPyXAtR-rM00V4Q21T-17&quot; vertex=&quot;1&quot; connectable=&quot;0&quot;&gt;&#10;          &lt;mxGeometry x=&quot;-0.1039&quot; y=&quot;-4&quot; relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#10;            &lt;mxPoint x=&quot;-13&quot; y=&quot;28&quot; as=&quot;offset&quot; /&gt;&#10;          &lt;/mxGeometry&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-3&quot; value=&quot;&amp;lt;div&amp;gt;Oasis Node&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;ParaTime Compute&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;🔒&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=#cceaffff;strokeColor=#000000;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#10;          &lt;mxGeometry x=&quot;360&quot; y=&quot;440&quot; width=&quot;120&quot; height=&quot;60&quot; as=&quot;geometry&quot; /&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-19&quot; value=&quot;&amp;lt;div align=&amp;quot;left&amp;quot;&amp;gt;&amp;lt;font style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;🔒 Trusted Execution Environment&amp;lt;/font&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;labelBackgroundColor=none;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#10;          &lt;mxGeometry x=&quot;80&quot; y=&quot;513&quot; width=&quot;190&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-20&quot; value=&quot;&amp;lt;div style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;1.&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;Generate Client&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;Keypair&amp;lt;/div&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;labelBackgroundColor=none;fontSize=11;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#10;          &lt;mxGeometry x=&quot;70&quot; y=&quot;280&quot; width=&quot;100&quot; height=&quot;50&quot; as=&quot;geometry&quot; /&gt;&#10;        &lt;/mxCell&gt;&#10;        &lt;mxCell id=&quot;vDIPyXAtR-rM00V4Q21T-21&quot; value=&quot;&amp;lt;div style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;&amp;lt;font style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;5.&amp;lt;/font&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;&amp;lt;font style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;Confidentially Execute Contract&amp;lt;/font&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;&amp;lt;font style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;and Write to Blockchain&amp;lt;br style=&amp;quot;font-size: 11px;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=11;fontColor=#3884ff;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#10;          &lt;mxGeometry x=&quot;399&quot; y=&quot;490&quot; width=&quot;180&quot; height=&quot;50&quot; as=&quot;geometry&quot; /&gt;&#10;        &lt;/mxCell&gt;&#10;      &lt;/root&gt;&#10;    &lt;/mxGraphModel&gt;&#10;  &lt;/diagram&gt;&#10;&lt;/mxfile&gt;&#10;"><defs><style type="text/css">@media (prefers-color-scheme: dark) {&#xa;svg.ge-export-svg-auto:not(mjx-container &gt; svg) { filter: invert(100%) hue-rotate(180deg); }&#xa;svg.ge-export-svg-auto foreignObject img,&#xa;svg.ge-export-svg-auto image:not(svg.ge-export-svg-auto switch image),&#xa;svg.ge-export-svg-auto svg:not(mjx-container &gt; svg)&#xa;{ filter: invert(100%) hue-rotate(180deg) }&#xa;}</style><style type="text/css">@import url(https://fonts.googleapis.com/css2?family=Architects+Daughter:wght@400;500);&#xa;</style></defs><g><g data-cell-id="0"><g data-cell-id="1"><g data-cell-id="vDIPyXAtR-rM00V4Q21T-6"><g><path d="M 140 110 L 284.16 47.53" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 288.97 45.44 L 283.94 51.44 L 284.16 47.53 L 281.16 45.02 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-7"><g><g transform="translate(-0.5 -0.5)rotate(337 202.8473890268392 55.60786147341105)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 56px; margin-left: 203px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div>2.</div><div>Get Ephemeral</div><div>ParaTime Public Key<br /></div></div></div></div></foreignObject><text x="203" y="59" fill="rgb(0, 0, 0)" font-family="&quot;Helvetica&quot;" font-size="11px" text-anchor="middle">2....</text></switch></g></g></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-9"><g><path d="M 170 170 L 284.12 217.55" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 288.97 219.57 L 281.16 220.11 L 284.12 217.55 L 283.85 213.65 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-10"><g><g transform="translate(-0.5 -0.5)rotate(22.3 232.73441524096688 170.34464063126507)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 170px; margin-left: 233px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div>3.</div><div>Encrypt &amp; Submit</div><div>Transaction<br /></div></div></div></div></foreignObject><text x="233" y="174" fill="rgb(0, 0, 0)" font-family="&quot;Helvetica&quot;" font-size="11px" text-anchor="middle">3....</text></switch></g></g></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-1"><g><rect x="50" y="110" width="120" height="60" rx="9" ry="9" fill="#e8f5ffff" stroke="#0097ffff" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 140px; margin-left: 51px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div>Client</div><div>(Node.js, MetaMask,</div><div>Oasis CLI)<br /></div></div></div></div></foreignObject><text x="110" y="144" fill="rgb(0, 0, 0)" font-family="&quot;Helvetica&quot;" font-size="12px" text-anchor="middle">Client...</text></switch></g></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-8"><g><path d="M 290 60 L 175.88 107.55" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 171.03 109.57 L 176.15 103.65 L 175.88 107.55 L 178.84 110.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-14"><g><path d="M 350 60 L 350 213.63" fill="none" stroke="#3884ff" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 350 218.88 L 346.5 211.88 L 350 213.63 L 353.5 211.88 Z" fill="#3884ff" stroke="#3884ff" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-2"><g><rect x="290" y="0" width="120" height="60" rx="9" ry="9" fill="#cceaffff" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 30px; margin-left: 291px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div>Oasis Node</div><div>Key Manager</div><div>🔒<br /></div></div></div></div></foreignObject><text x="350" y="34" fill="rgb(0, 0, 0)" font-family="&quot;Helvetica&quot;" font-size="12px" text-anchor="middle">Oasis Node...</text></switch></g></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-12"><g><path d="M 367.64 219.82 L 368.33 66.19" fill="none" stroke="#3884ff" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 368.35 60.94 L 371.82 67.95 L 368.33 66.19 L 364.82 67.92 Z" fill="#3884ff" stroke="#3884ff" stroke-miterlimit="10" pointer-events="all"/></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-13"><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 150px; margin-left: 431px;"><div data-drawio-colors="color: #3884ff; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(56, 132, 255); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div>4.</div><div>Get Ephemeral</div><div>ParaTime Secret and</div><div>Contract State Keypair<br /></div></div></div></div></foreignObject><text x="431" y="154" fill="#3884ff" font-family="&quot;Helvetica&quot;" font-size="11px" text-anchor="middle">4....</text></switch></g></g></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-17"><g><path d="M 290 235 L 142.74 172.66" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 137.91 170.62 L 145.72 170.12 L 142.74 172.66 L 142.99 176.57 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-18"><g><g transform="translate(-0.5 -0.5)rotate(23.1 210.67765428165785 231.12466530426832)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 231px; margin-left: 211px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div>6.</div><div>Encrypted Transaction</div><div>Result<br /></div></div></div></div></foreignObject><text x="211" y="234" fill="rgb(0, 0, 0)" font-family="&quot;Helvetica&quot;" font-size="11px" text-anchor="middle">6....</text></switch></g></g></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-3"><g><rect x="290" y="220" width="120" height="60" rx="9" ry="9" fill="#cceaffff" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 250px; margin-left: 291px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div>Oasis Node</div><div>ParaTime Compute</div><div>🔒<br /></div></div></div></div></foreignObject><text x="350" y="254" fill="rgb(0, 0, 0)" font-family="&quot;Helvetica&quot;" font-size="12px" text-anchor="middle">Oasis Node...</text></switch></g></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-19"><g><rect x="10" y="293" width="190" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 308px; margin-left: 12px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div align="left"><font style="font-size: 11px;">🔒 Trusted Execution Environment</font></div></div></div></div></foreignObject><text x="12" y="312" fill="rgb(0, 0, 0)" font-family="&quot;Helvetica&quot;" font-size="12px">🔒 Trusted Execution Environment</text></switch></g></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-20"><g><rect x="0" y="60" width="100" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 85px; margin-left: 50px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div style="font-size: 11px;">1.</div><div style="font-size: 11px;">Generate Client</div><div style="font-size: 11px;">Keypair</div></div></div></div></foreignObject><text x="50" y="88" fill="rgb(0, 0, 0)" font-family="&quot;Helvetica&quot;" font-size="11px" text-anchor="middle">1....</text></switch></g></g></g><g data-cell-id="vDIPyXAtR-rM00V4Q21T-21"><g><rect x="329" y="270" width="180" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 295px; margin-left: 419px;"><div data-drawio-colors="color: #3884ff; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(56, 132, 255); line-height: 1.2; pointer-events: all; white-space: nowrap;"><div style="font-size: 11px;"><font style="font-size: 11px;">5.</font></div><div style="font-size: 11px;"><font style="font-size: 11px;">Confidentially Execute Contract</font></div><div style="font-size: 11px;"><font style="font-size: 11px;">and Write to Blockchain<br style="font-size: 11px;" /></font></div></div></div></div></foreignObject><text x="419" y="298" fill="#3884ff" font-family="&quot;Helvetica&quot;" font-size="11px" text-anchor="middle">5....</text></switch></g></g></g></g></g></g></svg>
\ No newline at end of file
diff --git a/external/oasis-core b/external/oasis-core
index 18da8bc49d..fb92f74e1f 160000
--- a/external/oasis-core
+++ b/external/oasis-core
@@ -1 +1 @@
-Subproject commit 18da8bc49d92a543795246b8bb7fb574df070eec
+Subproject commit fb92f74e1f64373d2f67de82141c0a9f80fc485c
diff --git a/external/sapphire-paratime b/external/sapphire-paratime
index d45181d448..c2a7a11327 160000
--- a/external/sapphire-paratime
+++ b/external/sapphire-paratime
@@ -1 +1 @@
-Subproject commit d45181d448b30b1ee203308e9cf92121677f78d0
+Subproject commit c2a7a1132721f5b3f7c5bbca099a0ca64f01e407
diff --git a/src/css/custom.css b/src/css/custom.css
index 5d1a500ef6..c084450079 100644
--- a/src/css/custom.css
+++ b/src/css/custom.css
@@ -142,11 +142,6 @@ html[data-theme="dark"] {
   --ifm-link-hover-color: inherit !important;
 }
 
-/* Hack to make .svg and .png diagrams readable in dark theme */
-html[data-theme='dark'] main img {
-  background-color: #fff;
-}
-
 /* Show the content of tabs slightly indented with a border on the left */
 .tabs-container > div {
   margin-top: inherit !important;