-
Notifications
You must be signed in to change notification settings - Fork 1
/
sockets
3 lines (3 loc) · 27.1 KB
/
sockets
1
2
3
<?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" xmlns:xlink="http://www.w3.org/1999/xlink" width="770px" height="853px" version="1.1"><defs/><g transform="translate(0.5,0.5)"><rect x="628" y="201" width="120" height="60" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(659,225)"><switch><foreignObject pointer-events="all" width="57" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 57px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Browser</div></div></foreignObject><text x="29" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="618" y="191" width="120" height="60" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(649,215)"><switch><foreignObject pointer-events="all" width="57" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 57px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Browser</div></div></foreignObject><text x="29" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="608" y="181" width="120" height="60" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(639,205)"><switch><foreignObject pointer-events="all" width="57" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 57px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Browser</div></div></foreignObject><text x="29" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="268" y="1" width="221" height="420" fill="#ffffff" stroke="#000000" pointer-events="none"/><rect x="374" y="151" width="90" height="100" fill="#ffffff" stroke="#ff0000" pointer-events="none"/><g transform="translate(379,181)"><switch><foreignObject pointer-events="all" width="79" height="44" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(255, 0, 0); line-height: 1.2; vertical-align: top; width: 79px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">In-Memory<div>Local Cache</div><div>(super-fast)</div></div></div></foreignObject><text x="40" y="28" fill="#FF0000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="11" y="90" width="90" height="60" fill="#ffffff" stroke="#009900" pointer-events="none"/><g transform="translate(34,114)"><switch><foreignObject pointer-events="all" width="43" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 153, 0); line-height: 1.2; vertical-align: top; width: 43px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Redis</div></div></foreignObject><text x="22" y="14" fill="#009900" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="598" y="171" width="120" height="60" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(629,195)"><switch><foreignObject pointer-events="all" width="57" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 57px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Browser</div></div></foreignObject><text x="29" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><path d="M 419 151 L 419 91 L 498 91 L 658 91 L 658 164.63" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="none"/><path d="M 658 169.88 L 654.5 162.88 L 658 164.63 L 661.5 162.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="500" y="27" width="89" height="60" fill="none" stroke="none" pointer-events="none"/><g transform="translate(502,37)"><switch><foreignObject pointer-events="all" width="85" height="44" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 56px; max-width: 85px; width: 85px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">HTTP Response<div>Widget - Data</div></div></div></foreignObject><text x="43" y="28" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="518" y="201" width="60" height="70" fill="none" stroke="none" pointer-events="none"/><g transform="translate(525,216)"><switch><foreignObject pointer-events="all" width="46" height="44" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 66px; max-width: 56px; width: 46px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">HTTP<div>Request</div><div>Widget</div></div></div></foreignObject><text x="23" y="28" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><path d="M 367.63 201 L 248 201 L 248 141 L 248 120 L 107.37 120" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="none"/><path d="M 372.88 201 L 365.88 204.5 L 367.63 201 L 365.88 197.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 102.12 120 L 109.12 116.5 L 107.37 120 L 109.12 123.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="11" y="251" width="90" height="60" fill="#ffffff" stroke="#0066cc" pointer-events="none"/><g transform="translate(20,275)"><switch><foreignObject pointer-events="all" width="71" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 102, 204); line-height: 1.2; vertical-align: top; width: 71px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">BI_Service</div></div></foreignObject><text x="36" y="14" fill="#0066CC" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><path d="M 107.37 281 L 248 281 L 248 201 L 367.63 201" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="none"/><path d="M 102.12 281 L 109.12 277.5 L 107.37 281 L 109.12 284.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 372.88 201 L 365.88 204.5 L 367.63 201 L 365.88 197.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="108" y="76" width="140" height="45" fill="none" stroke="none" pointer-events="none"/><g transform="translate(116,86)"><switch><foreignObject pointer-events="all" width="124" height="30" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 41px; max-width: 136px; width: 124px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">TCP<div><font color="#0000ff">Expected: ~ < 0.06 sec</font></div></div></div></foreignObject><text x="62" y="21" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="110" y="240" width="128" height="41" fill="none" stroke="none" pointer-events="none"/><g transform="translate(117,248)"><switch><foreignObject pointer-events="all" width="114" height="30" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 37px; max-width: 124px; width: 114px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">HTTP<div><font color="#0000ff">Expected:~ > 1.0 sec</font></div></div></div></foreignObject><text x="57" y="21" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="362" y="11" width="40" height="20" fill="none" stroke="none" pointer-events="none"/><g transform="translate(367,15)"><switch><foreignObject pointer-events="all" width="30" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 16px; max-width: 36px; width: 30px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Node</div></div></foreignObject><text x="15" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="387" y="341" width="64" height="60" fill="#ffffff" stroke="#ff00ff" pointer-events="none"/><g transform="translate(395,365)"><switch><foreignObject pointer-events="all" width="47" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(255, 0, 255); line-height: 1.2; vertical-align: top; width: 47px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">socket</div></div></foreignObject><text x="24" y="14" fill="#FF00FF" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="374" y="277" width="40" height="20" fill="none" stroke="none" pointer-events="none"/><g transform="translate(376,281)"><switch><foreignObject pointer-events="all" width="36" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 16px; max-width: 36px; width: 36px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">update</div></div></foreignObject><text x="18" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><path d="M 598 201 L 470.37 201" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="none"/><path d="M 465.12 201 L 472.12 197.5 L 470.37 201 L 472.12 204.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 419 251 L 419 334.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 419 339.88 L 415.5 332.88 L 419 334.63 L 422.5 332.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 451 371 L 688 371 L 688 267.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 688 262.12 L 691.5 269.12 L 688 267.37 L 684.5 269.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 451 371 L 678 371 L 678 257.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 678 252.12 L 681.5 259.12 L 678 257.37 L 674.5 259.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 451 371 L 668 371 L 668 247.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 668 242.12 L 671.5 249.12 L 668 247.37 L 664.5 249.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 451 371 L 658 371 L 658 237.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 658 232.12 L 661.5 239.12 L 658 237.37 L 654.5 239.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="500" y="371" width="138" height="70" fill="none" stroke="none" pointer-events="none"/><g transform="translate(505,379)"><switch><foreignObject pointer-events="all" width="128" height="58" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 66px; max-width: 134px; width: 128px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">TCP<div>Broadcast</div><div>Data - Ready</div><div><font color="#0000ff">Expected: ~ < 0.06 sec </font></div></div></div></foreignObject><text x="64" y="35" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="274" y="146" width="60" height="40" fill="none" stroke="none" pointer-events="none"/><g transform="translate(281,153)"><switch><foreignObject pointer-events="all" width="46" height="30" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 36px; max-width: 56px; width: 46px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Request<div>Service</div></div></div></foreignObject><text x="23" y="21" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="269" y="217" width="90" height="50" fill="none" stroke="none" pointer-events="none"/><g transform="translate(275,229)"><switch><foreignObject pointer-events="all" width="78" height="30" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 46px; max-width: 86px; width: 78px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Response<div>Service - Data</div></div></div></foreignObject><text x="39" y="21" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="499" y="109" width="80" height="62" fill="none" stroke="none" pointer-events="none"/><g transform="translate(501,120)"><switch><foreignObject pointer-events="all" width="76" height="44" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(255, 0, 255); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 58px; max-width: 76px; width: 76px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><font color="#0000ff">Expected Roundtrip</font><div><font color="#0000ff">~ < 0.06 sec</font></div></div></div></foreignObject><text x="38" y="28" fill="#FF00FF" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1" y="471" width="747" height="380" fill="none" stroke="none" pointer-events="none"/><g transform="translate(36,536)"><switch><foreignObject pointer-events="all" width="677" height="254" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(255, 0, 255); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 376px; max-width: 743px; width: 677px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><div style="text-align: left"><span style="color: rgb(0 , 0 , 0) ; line-height: 1.2"><b>Note: This flow is True for every widget / service. That is requested individually and asynchronously from the browser.</b></span></div><div style="text-align: left"><span style="color: rgb(0 , 0 , 0) ; line-height: 1.2"><b><br /></b></span></div><div style="text-align: left"><span style="color: rgb(0 , 0 , 0) ; line-height: 1.2"><b>Steps:</b></span></div><div style="text-align: left"><span style="color: rgb(0 , 0 , 0) ; line-height: 1.2"><b><br /></b></span></div><div style="text-align: left"><span style="color: rgb(0 , 0 , 0) ; line-height: 1.2"><b>1 - Ajax Request Widget</b></span></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2">2 - </span>Immediately respond 200, 202</font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2">3 - Node checks data in Redis</span></font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2">4 - Node request data from BI</span></font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2">5 - Node notifies socket there is a data update</span></font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2">6 - socket brodcast update to all clients in room</span></font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2">7 - Ajax Request Service</span></font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2">8 - Node dispatches updated data from in memory cache super-fast</span></font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2"><br /></span></font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2">Note:</span></font></b></div><div style="text-align: left"><b style="line-height: 1.2"><font color="#000000"><span style="line-height: 1.2"><br /></span></font></b></div><div style="text-align: left"><b style="line-height: 1.2"><font color="#000000"><span style="line-height: 1.2">200: means widget data was found in cache and is ready.</span></font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2"><br /></span></font></b></div><div style="text-align: left"><b><font color="#000000"><span style="line-height: 1.2">202: means widget data will be available later.</span></font></b></div></div></div></foreignObject><text x="339" y="133" fill="#FF00FF" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="589" y="111" width="179" height="180" fill="none" stroke="#000000" stroke-dasharray="3 3" pointer-events="none"/><rect x="728" y="111" width="40" height="20" fill="none" stroke="none" pointer-events="none"/><g transform="translate(733,115)"><switch><foreignObject pointer-events="all" width="30" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 16px; max-width: 36px; width: 30px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">room</div></div></foreignObject><text x="15" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="525" y="181" width="40" height="20" fill="none" stroke="none" pointer-events="none"/><g transform="translate(534,185)"><switch><foreignObject pointer-events="all" width="22" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 16px; max-width: 36px; width: 22px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">1, 7</div></div></foreignObject><text x="11" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="419" y="111" width="29" height="20" fill="none" stroke="none" pointer-events="none"/><g transform="translate(422,115)"><switch><foreignObject pointer-events="all" width="23" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 16px; max-width: 25px; width: 23px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">2, 8</div></div></foreignObject><text x="12" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="224" y="140" width="24" height="20" fill="none" stroke="none" pointer-events="none"/><g transform="translate(232,144)"><switch><foreignObject pointer-events="all" width="8" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 16px; max-width: 20px; width: 8px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">3</div></div></foreignObject><text x="4" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="224" y="226" width="24" height="20" fill="none" stroke="none" pointer-events="none"/><g transform="translate(232,230)"><switch><foreignObject pointer-events="all" width="8" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 16px; max-width: 20px; width: 8px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">4</div></div></foreignObject><text x="4" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="419" y="281" width="24" height="20" fill="none" stroke="none" pointer-events="none"/><g transform="translate(427,285)"><switch><foreignObject pointer-events="all" width="8" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 16px; max-width: 20px; width: 8px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">5</div></div></foreignObject><text x="4" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="541" y="351" width="24" height="20" fill="none" stroke="none" pointer-events="none"/><g transform="translate(549,355)"><switch><foreignObject pointer-events="all" width="8" height="16" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; overflow: hidden; max-height: 16px; max-width: 20px; width: 8px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">6</div></div></foreignObject><text x="4" y="14" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g></g></svg>