lotus/storage/sealer/docs/sector-storage.svg
2022-06-14 20:03:38 +02:00

3 lines
75 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!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" style="background-color: rgb(255, 255, 255);" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="851px" height="1001px" viewBox="-0.5 -0.5 851 1001" content="&lt;mxfile host=&quot;app.diagrams.net&quot; modified=&quot;2020-04-06T17:42:42.123Z&quot; agent=&quot;5.0 (X11)&quot; etag=&quot;ilAX9XQorx-cbKmfSJum&quot; version=&quot;12.9.8&quot; type=&quot;browser&quot;&gt;&lt;diagram id=&quot;6lDjA8ebbJXz-MvvKowY&quot; name=&quot;Page-1&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;"><defs/><g><rect x="0" y="680" width="610" height="320" fill="#bac8d3" stroke="#23445d" pointer-events="all"/><rect x="479.5" y="680" width="120" height="50" fill="none" stroke="#000000" pointer-events="all"/><rect x="0" y="0" width="850" height="640" fill="#bac8d3" stroke="#23445d" pointer-events="all"/><rect x="0" y="30" width="840" height="470" fill="#fad9d5" stroke="#ae4132" pointer-events="all"/><rect x="60" y="440" width="770" height="60" fill="#fad9d5" stroke="#ae4132" stroke-dasharray="3 3" pointer-events="all"/><rect x="500" y="110" width="285" height="210" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><rect x="605" y="110" width="80" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 78px; height: 1px; padding-top: 120px; margin-left: 606px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>LocalWorker</div></div></div></div></foreignObject><text x="645" y="124" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">LocalWorker</text></switch></g><path d="M 620 170 L 640 170 L 640 230 L 626.37 230" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 621.12 230 L 628.12 226.5 L 626.37 230 L 628.12 233.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="500" y="160" width="120" height="20" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><rect x="500" y="160" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 170px; margin-left: 501px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.Local</div></div></div></foreignObject><text x="535" y="174" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.Local</text></switch></g><path d="M 620 140 L 710 140 L 710 273.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 710 278.88 L 706.5 271.88 L 710 273.63 L 713.5 271.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="500" y="130" width="120" height="20" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><rect x="500" y="130" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 140px; margin-left: 501px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.Store</div></div></div></foreignObject><text x="535" y="144" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.Store</text></switch></g><path d="M 620 200 L 680 200 L 680 273.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 680 278.88 L 676.5 271.88 L 680 273.63 L 683.5 271.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="500" y="190" width="120" height="20" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><rect x="500" y="190" width="100" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 98px; height: 1px; padding-top: 200px; margin-left: 501px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.SectorIndex</div></div></div></foreignObject><text x="550" y="204" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.SectorInd...</text></switch></g><rect x="510" y="250" width="140" height="60" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><rect x="535" y="250" width="90" height="24" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 88px; height: 1px; padding-top: 262px; margin-left: 536px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>ffiwrapper.Sealer</div></div></div></div></foreignObject><text x="580" y="266" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">ffiwrapper.Seal...</text></switch></g><rect x="565" y="286" width="85" height="24" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 83px; height: 1px; padding-top: 298px; margin-left: 566px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">SectorProvider</div></div></div></foreignObject><text x="608" y="302" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">SectorProvider</text></switch></g><path d="M 650 280 L 575 280 Q 565 280 565 290 L 565 310" fill="none" stroke="#6c8ebf" stroke-miterlimit="10" pointer-events="stroke"/><rect x="650" y="280" width="120" height="30" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><g transform="translate(-0.5 -0.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: 295px; margin-left: 651px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">localProvider</div></div></div></foreignObject><text x="710" y="299" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">localProvider</text></switch></g><path d="M 710 310 L 710 310" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 710 310 L 710 310 L 710 310 L 710 310 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="500" y="220" width="120" height="20" fill="#d5e8d4" stroke="#82b366" stroke-dasharray="3 3" pointer-events="all"/><path d="M 500 230 L 470 230 L 470 270 L 446.37 270" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 441.12 270 L 448.12 266.5 L 446.37 270 L 448.12 273.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="500" y="220" width="40" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 38px; height: 1px; padding-top: 230px; margin-left: 501px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Worker</div></div></div></foreignObject><text x="520" y="234" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Worker</text></switch></g><path d="M 557.5 250 L 560 250 L 560 246.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 560 241.12 L 563.5 248.12 L 560 246.37 L 556.5 248.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="10" y="70" width="220" height="160" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/><rect x="77.5" y="70" width="85" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 83px; height: 1px; padding-top: 80px; margin-left: 79px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>stores.Remote</div></div></div></div></foreignObject><text x="120" y="84" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.Remote</text></switch></g><rect x="30" y="130" width="170" height="100" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/><rect x="80" y="130" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 140px; margin-left: 81px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.Local</div></div></div></foreignObject><text x="115" y="144" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.Local</text></switch></g><rect x="80" y="150" width="120" height="20" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/><rect x="100" y="150" width="100" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 98px; height: 1px; padding-top: 160px; margin-left: 101px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.SectorIndex</div></div></div></foreignObject><text x="150" y="164" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.SectorInd...</text></switch></g><rect x="40" y="180" width="100" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 98px; height: 1px; padding-top: 190px; margin-left: 41px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>localPaths []string</div></div></div></div></foreignObject><text x="90" y="194" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">localPaths []str...</text></switch></g><rect x="40" y="200" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 210px; margin-left: 41px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">urls []string</div></div></div></foreignObject><text x="75" y="214" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">urls []stri...</text></switch></g><rect x="110" y="100" width="120" height="20" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/><rect x="110" y="100" width="120" height="20" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/><rect x="130" y="100" width="100" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 98px; height: 1px; padding-top: 110px; margin-left: 131px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.SectorIndex</div></div></div></foreignObject><text x="180" y="114" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.SectorInd...</text></switch></g><path d="M 200 180 L 200 170 L 493.63 170" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 498.88 170 L 491.88 173.5 L 493.63 170 L 491.88 166.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 230 150 L 230 140 L 493.63 140" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 498.88 140 L 491.88 143.5 L 493.63 140 L 491.88 136.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 145 390 L 145 430 L 145 430 L 145 463.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 145 468.88 L 141.5 461.88 L 145 463.63 L 148.5 461.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="20" y="300" width="250" height="90" fill="#ffff88" stroke="#36393d" pointer-events="all"/><rect x="85" y="300" width="120" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 310px; margin-left: 86px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">specs-storage.Prover</div></div></div></foreignObject><text x="145" y="314" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">specs-storage.Prover</text></switch></g><rect x="170" y="350" width="90" height="30" fill="#ffff88" stroke="#36393d" pointer-events="all"/><rect x="170" y="355" width="90" height="25" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 88px; height: 1px; padding-top: 368px; margin-left: 171px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">ronlyProvider</div></div></div></foreignObject><text x="215" y="371" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">ronlyProvider</text></switch></g><path d="M 157.5 230 L 157.5 290 L 215 290 L 215 343.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 215 348.88 L 211.5 341.88 L 215 343.63 L 218.5 341.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 230 110 L 230 110" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 230 110 L 230 110 L 230 110 L 230 110 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="340" y="70" width="120" height="20" fill="#b1ddf0" stroke="#10739e" pointer-events="all"/><rect x="340" y="70" width="120" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 80px; margin-left: 341px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.Index</div></div></div></foreignObject><text x="400" y="84" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.Index</text></switch></g><path d="M 400 90 L 400 110 L 236.37 110" fill="none" stroke="#10739e" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 231.12 110 L 238.12 106.5 L 236.37 110 L 238.12 113.5 Z" fill="#10739e" stroke="#10739e" stroke-miterlimit="10" pointer-events="all"/><path d="M 400 90 L 400 200 L 493.63 200" fill="none" stroke="#10739e" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 498.88 200 L 491.88 203.5 L 493.63 200 L 491.88 196.5 Z" fill="#10739e" stroke="#10739e" stroke-miterlimit="10" pointer-events="all"/><path d="M 400 90 L 400 160 L 206.37 160" fill="none" stroke="#10739e" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 201.12 160 L 208.12 156.5 L 206.37 160 L 208.12 163.5 Z" fill="#10739e" stroke="#10739e" stroke-miterlimit="10" pointer-events="all"/><rect x="415" y="470" width="120" height="30" fill="#fad9d5" stroke="#ae4132" pointer-events="all"/><rect x="435" y="470" width="80" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 78px; height: 1px; padding-top: 485px; margin-left: 436px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">FetchHandler</div></div></div></foreignObject><text x="475" y="489" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">FetchHandler</text></switch></g><rect x="30" y="320" width="140" height="60" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><rect x="55" y="320" width="90" height="24" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 88px; height: 1px; padding-top: 332px; margin-left: 56px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>ffiwrapper.Sealer</div></div></div></div></foreignObject><text x="100" y="336" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">ffiwrapper.Seal...</text></switch></g><rect x="85" y="356" width="85" height="24" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 83px; height: 1px; padding-top: 368px; margin-left: 86px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">SectorProvider</div></div></div></foreignObject><text x="128" y="372" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">SectorProvider</text></switch></g><path d="M 170 350 L 95 350 Q 85 350 85 360 L 85 380" fill="none" stroke="#6c8ebf" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 270 470 L 270 450 L 327.5 450 L 327.5 416.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 327.5 411.12 L 331 418.12 L 327.5 416.37 L 324 418.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="225" y="470" width="180" height="30" fill="#fad9d5" stroke="#ae4132" pointer-events="all"/><g transform="translate(-0.5 -0.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: 178px; height: 1px; padding-top: 485px; margin-left: 226px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>specs-storage.[Sealer,Storage]</div></div></div></div></foreignObject><text x="315" y="489" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">specs-storage.[Sealer,Storage]</text></switch></g><rect x="75" y="470" width="140" height="30" fill="#fad9d5" stroke="#ae4132" pointer-events="all"/><g transform="translate(-0.5 -0.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: 138px; height: 1px; padding-top: 485px; margin-left: 76px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">specs-storage.Prover</div></div></div></foreignObject><text x="145" y="489" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">specs-storage.Prover</text></switch></g><rect x="715" y="440" width="120" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 450px; margin-left: 716px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Manager API</div></div></div></foreignObject><text x="775" y="454" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Manager API</text></switch></g><path d="M 157.5 230 L 157.5 290 L 280 290 L 280 430 L 475 430 L 475 463.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 475 468.88 L 471.5 461.88 L 475 463.63 L 478.5 461.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="290" y="220" width="150" height="190" rx="22.5" ry="22.5" fill="#fad9d5" stroke="#ae4132" stroke-dasharray="3 3" pointer-events="all"/><rect x="335" y="220" width="60" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 58px; height: 1px; padding-top: 230px; margin-left: 336px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Scheduler</div></div></div></foreignObject><text x="365" y="234" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Scheduler</text></switch></g><rect x="320" y="240" width="120" height="110" fill="#fad9d5" stroke="#ae4132" stroke-dasharray="3 3" pointer-events="all"/><rect x="320" y="240" width="120" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 321px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">[]workerHandle</div></div></div></foreignObject><text x="380" y="254" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">[]workerHandle</text></switch></g><rect x="340" y="260" width="100" height="40" fill="#fad9d5" stroke="#ae4132" stroke-dasharray="3 3" pointer-events="all"/><rect x="395" y="260" width="45" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 43px; height: 1px; padding-top: 270px; margin-left: 396px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Worker</div></div></div></foreignObject><text x="418" y="274" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Worker</text></switch></g><rect x="390" y="305" width="40" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 38px; height: 1px; padding-top: 315px; margin-left: 391px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">WorkerInfo</div></div></div></foreignObject><text x="410" y="319" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Worker...</text></switch></g><rect x="370" y="320" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 330px; margin-left: 371px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">resourceInfo</div></div></div></foreignObject><text x="405" y="334" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">resourceInfo</text></switch></g><path d="M 380 350 L 380 350" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 380 350 L 380 350 L 380 350 L 380 350 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="330" y="380" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 390px; margin-left: 331px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">schedQueue</div></div></div></foreignObject><text x="365" y="394" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">schedQueue</text></switch></g><rect x="545" y="470" width="120" height="30" fill="#b1ddf0" stroke="#10739e" stroke-dasharray="3 3" pointer-events="all"/><path d="M 575 466.13 L 575 410 L 480 410 L 480 200" fill="none" stroke="#10739e" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 575 471.38 L 571.5 464.38 L 575 466.13 L 578.5 464.38 Z" fill="#10739e" stroke="#10739e" stroke-miterlimit="10" pointer-events="all"/><path d="M 600 503.87 L 600 533.8 L 650 533.8 L 650 570" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 600 498.62 L 603.5 505.62 L 600 503.87 L 596.5 505.62 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="550" y="472.5" width="100" height="25" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 98px; height: 1px; padding-top: 485px; margin-left: 551px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.SectorIndex</div></div></div></foreignObject><text x="600" y="489" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.SectorInd...</text></switch></g><rect x="347.5" y="40" width="145" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 143px; height: 1px; padding-top: 50px; margin-left: 349px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">sector-storage.Manager</div></div></div></foreignObject><text x="420" y="54" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">sector-storage.Manager</text></switch></g><path d="M 712.5 470 L 690 470 L 690 400 L 470 400 L 470 290 L 446.37 290" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 441.12 290 L 448.12 286.5 L 446.37 290 L 448.12 293.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="675" y="470" width="150" height="30" fill="none" stroke="#000000" pointer-events="all"/><path d="M 750 501.37 L 750 532.5 L 735 532.5 L 735 570" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 750 496.12 L 753.5 503.12 L 750 501.37 L 746.5 503.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="675" y="475" width="150" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 148px; height: 1px; padding-top: 485px; margin-left: 676px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">worker management APIs</div></div></div></foreignObject><text x="750" y="489" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">worker management APIs</text></switch></g><rect x="0" y="0" width="120" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 15px; margin-left: 1px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Filecoin 'Miner' Node</div></div></div></foreignObject><text x="60" y="19" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Filecoin 'Miner' Node</text></switch></g><rect x="330" y="560" width="490" height="80" fill="none" stroke="#000000" pointer-events="all"/><rect x="330" y="560" width="60" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 58px; height: 1px; padding-top: 570px; margin-left: 331px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">HTTP API</div></div></div></foreignObject><text x="360" y="574" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">HTTP API</text></switch></g><rect x="350" y="610" width="120" height="30" fill="#bac8d3" stroke="#23445d" pointer-events="all"/><rect x="370" y="610" width="80" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 78px; height: 1px; padding-top: 625px; margin-left: 371px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">/remote</div></div></div></foreignObject><text x="410" y="629" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">/remote</text></switch></g><path d="M 410 603.63 L 410 530 L 475 530 L 475 500" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 410 608.88 L 406.5 601.88 L 410 603.63 L 413.5 601.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="480" y="570" width="340" height="70" fill="none" stroke="#000000" pointer-events="all"/><rect x="480" y="570" width="60" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 58px; height: 1px; padding-top: 580px; margin-left: 481px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>JsonRPC</div></div></div></div></foreignObject><text x="510" y="584" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">JsonRPC</text></switch></g><path d="M 550 646.37 L 550 660 L 300 660 L 300 680" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 550 641.12 L 553.5 648.12 L 550 646.37 L 546.5 648.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="490" y="610" width="120" height="30" fill="none" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.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: 625px; margin-left: 491px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">/rpc/v0</div></div></div></foreignObject><text x="550" y="629" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">/rpc/v0</text></switch></g><rect x="291" y="780" width="285" height="210" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><rect x="396" y="780" width="80" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 78px; height: 1px; padding-top: 790px; margin-left: 397px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>LocalWorker</div></div></div></div></foreignObject><text x="436" y="794" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">LocalWorker</text></switch></g><path d="M 411 840 L 431 840 L 431 900 L 417.37 900" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 412.12 900 L 419.12 896.5 L 417.37 900 L 419.12 903.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="291" y="830" width="120" height="20" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><rect x="291" y="830" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 840px; margin-left: 292px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.Local</div></div></div></foreignObject><text x="326" y="844" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.Local</text></switch></g><path d="M 411 810 L 501 810 L 501 943.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 501 948.88 L 497.5 941.88 L 501 943.63 L 504.5 941.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="291" y="800" width="120" height="20" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><path d="M 284.63 810 L 260.5 810 L 260.5 820 L 230 820" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 289.88 810 L 282.88 813.5 L 284.63 810 L 282.88 806.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="291" y="800" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 810px; margin-left: 292px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.Store</div></div></div></foreignObject><text x="326" y="814" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.Store</text></switch></g><path d="M 411 870 L 471 870 L 471 943.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 471 948.88 L 467.5 941.88 L 471 943.63 L 474.5 941.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="291" y="860" width="120" height="20" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><path d="M 284.63 870 L 270.3 870 L 270.25 700" fill="none" stroke="#10739e" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 289.88 870 L 282.88 873.5 L 284.63 870 L 282.88 866.5 Z" fill="#10739e" stroke="#10739e" stroke-miterlimit="10" pointer-events="all"/><rect x="291" y="860" width="100" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 98px; height: 1px; padding-top: 870px; margin-left: 292px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.SectorIndex</div></div></div></foreignObject><text x="341" y="874" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.SectorInd...</text></switch></g><rect x="301" y="920" width="140" height="60" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><rect x="326" y="920" width="90" height="24" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 88px; height: 1px; padding-top: 932px; margin-left: 327px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>ffiwrapper.Sealer</div></div></div></div></foreignObject><text x="371" y="936" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">ffiwrapper.Seal...</text></switch></g><rect x="356" y="956" width="85" height="24" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 83px; height: 1px; padding-top: 968px; margin-left: 357px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">SectorProvider</div></div></div></foreignObject><text x="399" y="972" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">SectorProvider</text></switch></g><path d="M 441 950 L 366 950 Q 356 950 356 960 L 356 980" fill="none" stroke="#6c8ebf" stroke-miterlimit="10" pointer-events="stroke"/><rect x="441" y="950" width="120" height="30" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><g transform="translate(-0.5 -0.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: 965px; margin-left: 442px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">localProvider</div></div></div></foreignObject><text x="501" y="969" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">localProvider</text></switch></g><path d="M 501 980 L 501 980" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 501 980 L 501 980 L 501 980 L 501 980 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="291" y="890" width="120" height="20" fill="#d5e8d4" stroke="#82b366" stroke-dasharray="3 3" pointer-events="all"/><path d="M 291 900 L 250 900 L 250 715 L 349.63 715" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 354.88 715 L 347.88 718.5 L 349.63 715 L 347.88 711.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="291" y="890" width="40" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 38px; height: 1px; padding-top: 900px; margin-left: 292px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Worker</div></div></div></foreignObject><text x="311" y="904" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Worker</text></switch></g><path d="M 348.5 920 L 351 920 L 351 916.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 351 911.12 L 354.5 918.12 L 351 916.37 L 347.5 918.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="10" y="740" width="220" height="160" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/><rect x="77.5" y="740" width="85" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 83px; height: 1px; padding-top: 750px; margin-left: 79px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>stores.Remote</div></div></div></div></foreignObject><text x="120" y="754" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.Remote</text></switch></g><rect x="30" y="800" width="170" height="100" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/><rect x="80" y="800" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 810px; margin-left: 81px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.Local</div></div></div></foreignObject><text x="115" y="814" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.Local</text></switch></g><rect x="80" y="820" width="120" height="20" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/><path d="M 206.37 830 L 270.3 830 L 270.25 700" fill="none" stroke="#10739e" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 201.12 830 L 208.12 826.5 L 206.37 830 L 208.12 833.5 Z" fill="#10739e" stroke="#10739e" stroke-miterlimit="10" pointer-events="all"/><rect x="100" y="820" width="100" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 98px; height: 1px; padding-top: 830px; margin-left: 101px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.SectorIndex</div></div></div></foreignObject><text x="150" y="834" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.SectorInd...</text></switch></g><rect x="40" y="850" width="100" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 98px; height: 1px; padding-top: 860px; margin-left: 41px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>localPaths []string</div></div></div></div></foreignObject><text x="90" y="864" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">localPaths []str...</text></switch></g><rect x="40" y="870" width="70" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 68px; height: 1px; padding-top: 880px; margin-left: 41px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">urls []string</div></div></div></foreignObject><text x="75" y="884" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">urls []stri...</text></switch></g><rect x="110" y="770" width="120" height="20" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/><rect x="110" y="770" width="120" height="20" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/><rect x="130" y="770" width="100" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 98px; height: 1px; padding-top: 780px; margin-left: 131px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">stores.SectorIndex</div></div></div></foreignObject><text x="180" y="784" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">stores.SectorInd...</text></switch></g><path d="M 230 780 L 230 780" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 230 780 L 230 780 L 230 780 L 230 780 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="181" y="680" width="139" height="20" fill="none" stroke="#000000" pointer-events="all"/><path d="M 240.5 706.37 L 240.5 720 L 200 720" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 240.5 701.12 L 244 708.12 L 240.5 706.37 L 237 708.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="181" y="680" width="119" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 117px; height: 1px; padding-top: 690px; margin-left: 182px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Miner JsonRPC client</div></div></div></foreignObject><text x="241" y="694" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Miner JsonRPC client</text></switch></g><rect x="15" y="710" width="185" height="20" rx="3" ry="3" fill="none" stroke="#000000" stroke-dasharray="3 3" pointer-events="all"/><g transform="translate(-0.5 -0.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: 183px; height: 1px; padding-top: 720px; margin-left: 16px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">miner.Register(remoteWorker)</div></div></div></foreignObject><text x="108" y="724" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">miner.Register(remoteWorker)</text></switch></g><rect x="330" y="680" width="269" height="90" fill="none" stroke="#000000" stroke-dasharray="3 3" pointer-events="all"/><rect x="540" y="750" width="59" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 57px; height: 1px; padding-top: 760px; margin-left: 541px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">HTTP API</div></div></div></foreignObject><text x="570" y="764" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">HTTP API</text></switch></g><rect x="489" y="700" width="101" height="20" fill="#fad9d5" stroke="#ae4132" pointer-events="all"/><path d="M 521 726.37 L 521 760 L 72.5 760 L 72.5 800" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 521 721.12 L 524.5 728.12 L 521 726.37 L 517.5 728.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="501" y="700" width="80" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 78px; height: 1px; padding-top: 710px; margin-left: 502px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">FetchHandler</div></div></div></foreignObject><text x="541" y="714" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">FetchHandler</text></switch></g><rect x="514.5" y="680" width="50" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 48px; height: 1px; padding-top: 690px; margin-left: 516px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">/remote</div></div></div></foreignObject><text x="540" y="694" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">/remote</text></switch></g><rect x="341" y="680" width="120" height="70" fill="none" stroke="#000000" pointer-events="all"/><rect x="356" y="705" width="89" height="20" fill="#fff2cc" stroke="#d6b656" stroke-dasharray="3 3" pointer-events="all"/><g transform="translate(-0.5 -0.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: 87px; height: 1px; padding-top: 715px; margin-left: 357px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">RemoteWorker</div></div></div></foreignObject><text x="401" y="719" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">RemoteWorker</text></switch></g><rect x="341" y="680" width="69" height="20" fill="none" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.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: 67px; height: 1px; padding-top: 690px; margin-left: 342px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">/rpc/v0</div></div></div></foreignObject><text x="376" y="694" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">/rpc/v0</text></switch></g><rect x="341" y="730" width="59" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 57px; height: 1px; padding-top: 740px; margin-left: 342px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">JsonRPC</div></div></div></foreignObject><text x="371" y="744" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">JsonRPC</text></switch></g><path d="M 284.63 840 L 210 840 L 210 850 L 200 850" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 289.88 840 L 282.88 843.5 L 284.63 840 L 282.88 836.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="0" y="680" width="110" height="20" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.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: 108px; height: 1px; padding-top: 690px; margin-left: 1px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Seal Worker Node</div></div></div></foreignObject><text x="55" y="694" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Seal Worker Node</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://desk.draw.io/support/solutions/articles/16000042487" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg>