solana/src/img/tvu.svg

307 lines
7.3 KiB
XML

<svg class="bob" font-family="arial" font-size="14" height="368" width="680" xmlns="http://www.w3.org/2000/svg">
<defs>
<marker id="triangle" markerHeight="8" markerWidth="8" orient="auto" refX="4" refY="2" viewBox="0 0 8 4">
<polygon fill="black" points="0,0 0,4 8,2 0,0"/>
</marker>
<marker id="clear_triangle" markerHeight="10" markerWidth="10" orient="auto" refX="1" refY="7" viewBox="0 0 20 14">
<polygon fill="none" points="2,2 2,12 18,7 2,2" stroke="black" stroke-width="2"/>
</marker>
<marker id="circle" markerHeight="5" markerWidth="5" orient="auto" refX="10" refY="10" viewBox="0 0 20 20">
<circle cx="10" cy="10" fill="black" r="8"/>
</marker>
<marker id="square" markerHeight="5" markerWidth="5" orient="auto" refX="10" refY="10" viewBox="0 0 20 20">
<rect fill="black" height="20" width="20" x="0" y="0"/>
</marker>
<marker id="open_circle" markerHeight="10" markerWidth="10" orient="auto" refX="10" refY="10" viewBox="0 0 20 20">
<circle cx="10" cy="10" fill="white" r="4" stroke="black" stroke-width="2"/>
</marker>
<marker id="big_open_circle" markerHeight="20" markerWidth="20" orient="auto" refX="20" refY="20" viewBox="0 0 40 40">
<circle cx="20" cy="20" fill="white" r="6" stroke="black" stroke-width="2"/>
</marker>
</defs>
<style type="text/css">
line,path {
stroke: black;
stroke-width: 2;
stroke-opacity: 1;
fill-opacity: 1;
stroke-linecap: round;
stroke-linejoin: miter;
}
line.dashed {
stroke-dasharray: 5;
}
circle.solid {
fill:black;
stroke: black;
stroke-width: 2;
stroke-opacity: 1;
fill-opacity: 1;
stroke-linecap: round;
stroke-linejoin: miter;
}
circle.open {
fill:none;
stroke: black;
stroke-width: 2;
stroke-opacity: 1;
fill-opacity: 1;
stroke-linecap: round;
stroke-linejoin: miter;
}
tspan.head{
fill: none;
stroke: none;
}
</style>
<rect fill="white" height="368" width="680" x="0" y="0"/>
<g>
<line x1="12" x2="12" y1="140" y2="164"/>
<path d="M 12 164 A 4 4 0 0 0 16 168" fill="none"/>
<path d="M 16 136 A 4 4 0 0 0 12 140" fill="none"/>
</g>
<g>
<line x1="12" x2="12" y1="188" y2="212"/>
<path d="M 12 212 A 4 4 0 0 0 16 216" fill="none"/>
<path d="M 16 184 A 4 4 0 0 0 12 188" fill="none"/>
</g>
<g>
<line x1="16" x2="52" y1="136" y2="136"/>
<line x1="52" x2="80" y1="136" y2="136"/>
<path d="M 84 140 A 4 4 0 0 0 80 136" fill="none"/>
</g>
<g>
<line x1="16" x2="80" y1="168" y2="168"/>
<path d="M 80 168 A 4 4 0 0 0 84 164" fill="none"/>
</g>
<g>
<line x1="16" x2="112" y1="184" y2="184"/>
<path d="M 116 188 A 4 4 0 0 0 112 184" fill="none"/>
</g>
<g>
<line x1="16" x2="112" y1="216" y2="216"/>
<path d="M 112 216 A 4 4 0 0 0 116 212" fill="none"/>
</g>
<g>
<line marker-end="url(#triangle)" x1="52" x2="52" y1="12" y2="124"/>
<path d="M 56 8 A 4 4 0 0 0 52 12" fill="none"/>
</g>
<g>
<line x1="56" x2="440" y1="8" y2="8"/>
<path d="M 444 12 A 4 4 0 0 0 440 8" fill="none"/>
</g>
<g>
<line x1="84" x2="84" y1="140" y2="164"/>
</g>
<g>
<line marker-end="url(#triangle)" x1="84" x2="164" y1="152" y2="152"/>
</g>
<g>
<line x1="116" x2="116" y1="188" y2="212"/>
</g>
<g>
<line marker-end="url(#triangle)" x1="116" x2="164" y1="200" y2="200"/>
</g>
<g>
<line x1="148" x2="148" y1="44" y2="144"/>
<path d="M 152 40 A 4 4 0 0 0 148 44" fill="none"/>
</g>
<g>
<line x1="148" x2="148" y1="160" y2="192"/>
</g>
<g>
<line x1="148" x2="148" y1="208" y2="276"/>
<path d="M 148 276 A 4 4 0 0 0 152 280" fill="none"/>
</g>
<g>
<line x1="152" x2="444" y1="40" y2="40"/>
<line x1="444" x2="444" y1="12" y2="40"/>
<line x1="444" x2="444" y1="40" y2="104"/>
<line x1="444" x2="544" y1="40" y2="40"/>
<line x1="444" x2="444" y1="104" y2="136"/>
<line marker-end="url(#triangle)" x1="444" x2="564" y1="104" y2="104"/>
<line x1="444" x2="520" y1="136" y2="136"/>
<path d="M 524 140 A 4 4 0 0 0 520 136" fill="none"/>
<path d="M 548 44 A 4 4 0 0 0 544 40" fill="none"/>
</g>
<g>
<line x1="152" x2="444" y1="280" y2="280"/>
<line x1="444" x2="544" y1="280" y2="280"/>
<path d="M 544 280 A 4 4 0 0 0 548 276" fill="none"/>
</g>
<g>
<line x1="172" x2="172" y1="124" y2="212"/>
<path d="M 172 212 A 4 4 0 0 0 176 216" fill="none"/>
<path d="M 176 120 A 4 4 0 0 0 172 124" fill="none"/>
</g>
<g>
<line x1="176" x2="232" y1="120" y2="120"/>
<path d="M 236 124 A 4 4 0 0 0 232 120" fill="none"/>
</g>
<g>
<line x1="176" x2="232" y1="216" y2="216"/>
<path d="M 232 216 A 4 4 0 0 0 236 212" fill="none"/>
</g>
<g>
<line x1="236" x2="236" y1="124" y2="212"/>
</g>
<g>
<line marker-end="url(#triangle)" x1="236" x2="260" y1="168" y2="168"/>
</g>
<g>
<line x1="268" x2="268" y1="140" y2="196"/>
<path d="M 268 196 A 4 4 0 0 0 272 200" fill="none"/>
<path d="M 272 136 A 4 4 0 0 0 268 140" fill="none"/>
</g>
<g>
<line x1="272" x2="308" y1="136" y2="136"/>
<line x1="308" x2="308" y1="108" y2="136"/>
<line x1="308" x2="368" y1="136" y2="136"/>
<path d="M 312 104 A 4 4 0 0 0 308 108" fill="none"/>
<path d="M 372 140 A 4 4 0 0 0 368 136" fill="none"/>
</g>
<g>
<line x1="272" x2="368" y1="200" y2="200"/>
<path d="M 368 200 A 4 4 0 0 0 372 196" fill="none"/>
</g>
<g>
<line x1="312" x2="444" y1="104" y2="104"/>
</g>
<g>
<line x1="372" x2="372" y1="140" y2="196"/>
</g>
<g>
<line marker-end="url(#triangle)" x1="372" x2="396" y1="168" y2="168"/>
</g>
<g>
<line x1="404" x2="404" y1="140" y2="196"/>
<path d="M 404 196 A 4 4 0 0 0 408 200" fill="none"/>
<path d="M 408 136 A 4 4 0 0 0 404 140" fill="none"/>
</g>
<g>
<line x1="408" x2="444" y1="136" y2="136"/>
</g>
<g>
<line x1="408" x2="444" y1="200" y2="200"/>
<line marker-end="url(#triangle)" x1="444" x2="444" y1="200" y2="316"/>
<line x1="444" x2="520" y1="200" y2="200"/>
<path d="M 520 200 A 4 4 0 0 0 524 196" fill="none"/>
</g>
<g>
<line x1="420" x2="420" y1="332" y2="356"/>
<path d="M 420 356 A 4 4 0 0 0 424 360" fill="none"/>
<path d="M 424 328 A 4 4 0 0 0 420 332" fill="none"/>
</g>
<g>
<line x1="424" x2="472" y1="328" y2="328"/>
<path d="M 476 332 A 4 4 0 0 0 472 328" fill="none"/>
</g>
<g>
<line x1="424" x2="472" y1="360" y2="360"/>
<path d="M 472 360 A 4 4 0 0 0 476 356" fill="none"/>
</g>
<g>
<line x1="464" x2="472" y1="176" y2="160"/>
</g>
<g>
<line x1="476" x2="476" y1="332" y2="356"/>
</g>
<g>
<line x1="524" x2="524" y1="140" y2="196"/>
</g>
<g>
<line x1="548" x2="548" y1="44" y2="96"/>
</g>
<g>
<line x1="548" x2="548" y1="112" y2="276"/>
</g>
<g>
<line x1="572" x2="572" y1="92" y2="116"/>
<path d="M 572 116 A 4 4 0 0 0 576 120" fill="none"/>
<path d="M 576 88 A 4 4 0 0 0 572 92" fill="none"/>
</g>
<g>
<line x1="576" x2="672" y1="88" y2="88"/>
<path d="M 676 92 A 4 4 0 0 0 672 88" fill="none"/>
</g>
<g>
<line x1="576" x2="672" y1="120" y2="120"/>
<path d="M 672 120 A 4 4 0 0 0 676 116" fill="none"/>
</g>
<g>
<line x1="676" x2="676" y1="92" y2="116"/>
</g>
<g>
<text x="25" y="156">
Leader
</text>
</g>
<g>
<text x="25" y="204">
Validators
</text>
</g>
<g>
<text x="169" y="60">
Tvu
</text>
</g>
<g>
<text x="185" y="156">
Blob
</text>
</g>
<g>
<text x="185" y="172">
Fetch
</text>
</g>
<g>
<text x="185" y="188">
Stage
</text>
</g>
<g>
<text x="281" y="156">
Retransmit
</text>
</g>
<g>
<text x="297" y="172">
Stage
</text>
</g>
<g>
<text x="417" y="156">
Replicate
</text>
</g>
<g>
<text x="417" y="172">
Stage
</text>
</g>
<g>
<text x="417" y="188">
Vote
</text>
</g>
<g>
<text x="433" y="348">
Bank
</text>
</g>
<g>
<text x="457" y="188">
Stage
</text>
</g>
<g>
<text x="585" y="108">
Validators
</text>
</g>
</svg>