Log fleet_k_q48/fleet_conserved; K holds exactly, 775/775 ticks (FABRIC-3.md §XVIII)
Build / build-amd64-iso (push) Canceled after 0s
Build / build-aarch64-iso (push) Canceled after 0s
Build / build-riscv64-img (push) Canceled after 0s

doe_log.c's per-heartbeat-tick CSV gains two columns: fleet_k_q48
(vm_physics_fleet_heat_sum() over ALL live VMs -- the genuine fleet-wide
conservation invariant K, not reconstructable from the 3 named-Tripod-
member heat columns already logged, which omit every identity VM's own
heat) and fleet_conserved (vm_physics_conserved() as 0/1). Requested
explicitly after the first heartbeat-telemetry analysis pass
(analysis-20260912/) omitted K entirely.

Kernel rebuilt on all three architectures, full 3x9x3 campaign rerun
(results-20260912-with-k/). K = 1.0000000000 (Q48.16 raw 65536) on every
one of 775 heartbeat-tick observations, sd(K) = 0, 100% fleet_conserved,
across amd64/aarch64/riscv64, nine identities, three replicates -- zero
deviation. Also a free regression check on both recent Stadium fixes
(§XVI/§XVII): neither disturbed the reservoir-transfer accounting K
depends on.

Found and fixed a tooling wrinkle along the way: fleet_conserved, being
the CSV row's very last field with nothing after it to bound a regex
match, can have a resumed trial digit merge into it with zero separator
on the wire -- combine.py now derives it from fleet_k_q48 directly (same
epsilon vm_physics_conserved() uses) instead of trusting the raw field.
fleet_k_q48 itself is unaffected either way.

Full analysis, discussion, and light/dark SVG->PDF figures written up as
a proper LaTeX report (report-20260912/report/std79_doe_report.pdf),
following experiments/bare_metal/analysis/report/bare_metal_doe_report.tex's
established style -- supersedes analysis-20260912/'s markdown-only first
pass as the primary deliverable for this dataset (kept, not discarded).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EXieurDfDSsDFdnSyusuWo
This commit is contained in:
Robert Allan James
2026-09-12 13:25:09 -04:00
co-authored by Claude Sonnet 5
parent 6573a6d1d5
commit 66ba21adb4
88 changed files with 82210 additions and 788 deletions
@@ -0,0 +1,266 @@
<?xml version='1.0' encoding='UTF-8' ?>
<svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='504.00pt' height='576.00pt' viewBox='0 0 504.00 576.00'>
<g class='svglite'>
<defs>
<style type='text/css'><![CDATA[
.svglite line, .svglite polyline, .svglite polygon, .svglite path, .svglite rect, .svglite circle {
fill: none;
stroke: #000000;
stroke-linecap: round;
stroke-linejoin: round;
stroke-miterlimit: 10.00;
}
.svglite text {
white-space: pre;
}
.svglite g.glyphgroup path {
fill: inherit;
stroke: none;
}
]]></style>
</defs>
<rect width='100%' height='100%' style='stroke: none; fill: #FFFFFF;'/>
<defs>
<clipPath id='cpMC4wMHw1MDQuMDB8MC4wMHw1NzYuMDA='>
<rect x='0.00' y='0.00' width='504.00' height='576.00' />
</clipPath>
</defs>
<g clip-path='url(#cpMC4wMHw1MDQuMDB8MC4wMHw1NzYuMDA=)'>
<rect x='0.00' y='0.00' width='504.00' height='576.00' style='stroke-width: 1.07; stroke: none; fill: #FFFFFF;' />
</g>
<defs>
<clipPath id='cpNDUuMDB8NDk4LjUyfDMyLjg4fDE4Mi4yNw=='>
<rect x='45.00' y='32.88' width='453.52' height='149.39' />
</clipPath>
</defs>
<g clip-path='url(#cpNDUuMDB8NDk4LjUyfDMyLjg4fDE4Mi4yNw==)'>
<polyline points='45.00,156.10 498.52,156.10 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,125.88 498.52,125.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,95.66 498.52,95.66 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,65.43 498.52,65.43 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,35.21 498.52,35.21 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='74.58,182.27 74.58,32.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='123.87,182.27 123.87,32.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='173.17,182.27 173.17,32.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='222.46,182.27 222.46,32.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='271.76,182.27 271.76,32.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='321.06,182.27 321.06,32.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='370.35,182.27 370.35,32.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='419.65,182.27 419.65,32.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='468.94,182.27 468.94,32.88 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<line x1='74.58' y1='39.67' x2='74.58' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='74.58' y1='39.67' x2='74.58' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='56.09,39.67 56.09,39.67 93.06,39.67 93.06,39.67 56.09,39.67 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #F8766D; fill-opacity: 0.85;' />
<line x1='56.09' y1='39.67' x2='93.06' y2='39.67' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='123.87' y1='39.67' x2='123.87' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='123.87' y1='39.67' x2='123.87' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='105.39,39.67 105.39,39.67 142.36,39.67 142.36,39.67 105.39,39.67 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #D39200; fill-opacity: 0.85;' />
<line x1='105.39' y1='39.67' x2='142.36' y2='39.67' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='173.17' y1='39.67' x2='173.17' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='173.17' y1='39.67' x2='173.17' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='154.68,39.67 154.68,39.67 191.65,39.67 191.65,39.67 154.68,39.67 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #93AA00; fill-opacity: 0.85;' />
<line x1='154.68' y1='39.67' x2='191.65' y2='39.67' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='222.46' y1='39.67' x2='222.46' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='222.46' y1='39.67' x2='222.46' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='203.98,39.67 203.98,39.67 240.95,39.67 240.95,39.67 203.98,39.67 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #00BA38; fill-opacity: 0.85;' />
<line x1='203.98' y1='39.67' x2='240.95' y2='39.67' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='271.76' y1='39.67' x2='271.76' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='271.76' y1='39.67' x2='271.76' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='253.27,39.67 253.27,39.67 290.25,39.67 290.25,39.67 253.27,39.67 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #00C19F; fill-opacity: 0.85;' />
<line x1='253.27' y1='39.67' x2='290.25' y2='39.67' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='321.06' y1='39.67' x2='321.06' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='321.06' y1='39.67' x2='321.06' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='302.57,39.67 302.57,39.67 339.54,39.67 339.54,39.67 302.57,39.67 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #00B9E3; fill-opacity: 0.85;' />
<line x1='302.57' y1='39.67' x2='339.54' y2='39.67' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='370.35' y1='39.67' x2='370.35' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='370.35' y1='39.67' x2='370.35' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='351.87,39.67 351.87,39.67 388.84,39.67 388.84,39.67 351.87,39.67 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #619CFF; fill-opacity: 0.85;' />
<line x1='351.87' y1='39.67' x2='388.84' y2='39.67' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='419.65' y1='39.67' x2='419.65' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='419.65' y1='39.67' x2='419.65' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='401.16,39.67 401.16,39.67 438.13,39.67 438.13,39.67 401.16,39.67 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #DB72FB; fill-opacity: 0.85;' />
<line x1='401.16' y1='39.67' x2='438.13' y2='39.67' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='468.94' y1='39.67' x2='468.94' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='468.94' y1='39.67' x2='468.94' y2='39.67' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='450.46,39.67 450.46,39.67 487.43,39.67 487.43,39.67 450.46,39.67 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #FF61C3; fill-opacity: 0.85;' />
<line x1='450.46' y1='39.67' x2='487.43' y2='39.67' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
</g>
<g clip-path='url(#cpMC4wMHw1MDQuMDB8MC4wMHw1NzYuMDA=)'>
</g>
<defs>
<clipPath id='cpNDUuMDB8NDk4LjUyfDIwNC40MHwzNTMuNzk='>
<rect x='45.00' y='204.40' width='453.52' height='149.39' />
</clipPath>
</defs>
<g clip-path='url(#cpNDUuMDB8NDk4LjUyfDIwNC40MHwzNTMuNzk=)'>
<polyline points='45.00,327.62 498.52,327.62 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,297.40 498.52,297.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,267.17 498.52,267.17 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,236.95 498.52,236.95 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,206.73 498.52,206.73 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='74.58,353.79 74.58,204.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='123.87,353.79 123.87,204.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='173.17,353.79 173.17,204.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='222.46,353.79 222.46,204.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='271.76,353.79 271.76,204.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='321.06,353.79 321.06,204.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='370.35,353.79 370.35,204.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='419.65,353.79 419.65,204.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='468.94,353.79 468.94,204.40 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<line x1='74.58' y1='275.98' x2='74.58' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='74.58' y1='275.98' x2='74.58' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='56.09,275.98 56.09,275.98 93.06,275.98 93.06,275.98 56.09,275.98 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #F8766D; fill-opacity: 0.85;' />
<line x1='56.09' y1='275.98' x2='93.06' y2='275.98' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='123.87' y1='275.98' x2='123.87' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='123.87' y1='275.98' x2='123.87' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='105.39,275.98 105.39,275.98 142.36,275.98 142.36,275.98 105.39,275.98 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #D39200; fill-opacity: 0.85;' />
<line x1='105.39' y1='275.98' x2='142.36' y2='275.98' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='173.17' y1='275.98' x2='173.17' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='173.17' y1='275.98' x2='173.17' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='154.68,275.98 154.68,275.98 191.65,275.98 191.65,275.98 154.68,275.98 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #93AA00; fill-opacity: 0.85;' />
<line x1='154.68' y1='275.98' x2='191.65' y2='275.98' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='222.46' y1='275.98' x2='222.46' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='222.46' y1='275.98' x2='222.46' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='203.98,275.98 203.98,275.98 240.95,275.98 240.95,275.98 203.98,275.98 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #00BA38; fill-opacity: 0.85;' />
<line x1='203.98' y1='275.98' x2='240.95' y2='275.98' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='271.76' y1='275.98' x2='271.76' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='271.76' y1='275.98' x2='271.76' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='253.27,275.98 253.27,275.98 290.25,275.98 290.25,275.98 253.27,275.98 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #00C19F; fill-opacity: 0.85;' />
<line x1='253.27' y1='275.98' x2='290.25' y2='275.98' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='321.06' y1='275.98' x2='321.06' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='321.06' y1='275.98' x2='321.06' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='302.57,275.98 302.57,275.98 339.54,275.98 339.54,275.98 302.57,275.98 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #00B9E3; fill-opacity: 0.85;' />
<line x1='302.57' y1='275.98' x2='339.54' y2='275.98' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='370.35' y1='275.98' x2='370.35' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='370.35' y1='275.98' x2='370.35' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='351.87,275.98 351.87,275.98 388.84,275.98 388.84,275.98 351.87,275.98 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #619CFF; fill-opacity: 0.85;' />
<line x1='351.87' y1='275.98' x2='388.84' y2='275.98' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='419.65' y1='275.98' x2='419.65' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='419.65' y1='275.98' x2='419.65' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='401.16,275.98 401.16,275.98 438.13,275.98 438.13,275.98 401.16,275.98 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #DB72FB; fill-opacity: 0.85;' />
<line x1='401.16' y1='275.98' x2='438.13' y2='275.98' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='468.94' y1='275.98' x2='468.94' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='468.94' y1='275.98' x2='468.94' y2='275.98' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='450.46,275.98 450.46,275.98 487.43,275.98 487.43,275.98 450.46,275.98 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #FF61C3; fill-opacity: 0.85;' />
<line x1='450.46' y1='275.98' x2='487.43' y2='275.98' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
</g>
<g clip-path='url(#cpMC4wMHw1MDQuMDB8MC4wMHw1NzYuMDA=)'>
</g>
<defs>
<clipPath id='cpNDUuMDB8NDk4LjUyfDM3NS45Mnw1MjUuMzE='>
<rect x='45.00' y='375.92' width='453.52' height='149.39' />
</clipPath>
</defs>
<g clip-path='url(#cpNDUuMDB8NDk4LjUyfDM3NS45Mnw1MjUuMzE=)'>
<polyline points='45.00,499.14 498.52,499.14 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,468.91 498.52,468.91 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,438.69 498.52,438.69 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,408.47 498.52,408.47 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='45.00,378.25 498.52,378.25 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='74.58,525.31 74.58,375.92 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='123.87,525.31 123.87,375.92 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='173.17,525.31 173.17,375.92 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='222.46,525.31 222.46,375.92 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='271.76,525.31 271.76,375.92 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='321.06,525.31 321.06,375.92 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='370.35,525.31 370.35,375.92 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='419.65,525.31 419.65,375.92 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<polyline points='468.94,525.31 468.94,375.92 ' style='stroke-width: 1.07; stroke: #E0E0E0; stroke-linecap: butt;' />
<line x1='74.58' y1='518.52' x2='74.58' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='74.58' y1='518.52' x2='74.58' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='56.09,518.52 56.09,518.52 93.06,518.52 93.06,518.52 56.09,518.52 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #F8766D; fill-opacity: 0.85;' />
<line x1='56.09' y1='518.52' x2='93.06' y2='518.52' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='123.87' y1='518.52' x2='123.87' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='123.87' y1='518.52' x2='123.87' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='105.39,518.52 105.39,518.52 142.36,518.52 142.36,518.52 105.39,518.52 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #D39200; fill-opacity: 0.85;' />
<line x1='105.39' y1='518.52' x2='142.36' y2='518.52' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='173.17' y1='518.52' x2='173.17' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='173.17' y1='518.52' x2='173.17' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='154.68,518.52 154.68,518.52 191.65,518.52 191.65,518.52 154.68,518.52 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #93AA00; fill-opacity: 0.85;' />
<line x1='154.68' y1='518.52' x2='191.65' y2='518.52' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='222.46' y1='518.52' x2='222.46' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='222.46' y1='518.52' x2='222.46' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='203.98,518.52 203.98,518.52 240.95,518.52 240.95,518.52 203.98,518.52 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #00BA38; fill-opacity: 0.85;' />
<line x1='203.98' y1='518.52' x2='240.95' y2='518.52' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='271.76' y1='518.52' x2='271.76' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='271.76' y1='518.52' x2='271.76' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='253.27,518.52 253.27,518.52 290.25,518.52 290.25,518.52 253.27,518.52 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #00C19F; fill-opacity: 0.85;' />
<line x1='253.27' y1='518.52' x2='290.25' y2='518.52' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='321.06' y1='518.52' x2='321.06' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='321.06' y1='518.52' x2='321.06' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='302.57,518.52 302.57,518.52 339.54,518.52 339.54,518.52 302.57,518.52 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #00B9E3; fill-opacity: 0.85;' />
<line x1='302.57' y1='518.52' x2='339.54' y2='518.52' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='370.35' y1='518.52' x2='370.35' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='370.35' y1='518.52' x2='370.35' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='351.87,518.52 351.87,518.52 388.84,518.52 388.84,518.52 351.87,518.52 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #619CFF; fill-opacity: 0.85;' />
<line x1='351.87' y1='518.52' x2='388.84' y2='518.52' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='419.65' y1='518.52' x2='419.65' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='419.65' y1='518.52' x2='419.65' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='401.16,518.52 401.16,518.52 438.13,518.52 438.13,518.52 401.16,518.52 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #DB72FB; fill-opacity: 0.85;' />
<line x1='401.16' y1='518.52' x2='438.13' y2='518.52' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='468.94' y1='518.52' x2='468.94' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='468.94' y1='518.52' x2='468.94' y2='518.52' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='450.46,518.52 450.46,518.52 487.43,518.52 487.43,518.52 450.46,518.52 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #FF61C3; fill-opacity: 0.85;' />
<line x1='450.46' y1='518.52' x2='487.43' y2='518.52' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
</g>
<g clip-path='url(#cpMC4wMHw1MDQuMDB8MC4wMHw1NzYuMDA=)'>
</g>
<defs>
<clipPath id='cpNDUuMDB8NDk4LjUyfDM1OS4yN3wzNzUuOTI='>
<rect x='45.00' y='359.27' width='453.52' height='16.65' />
</clipPath>
</defs>
<g clip-path='url(#cpNDUuMDB8NDk4LjUyfDM1OS4yN3wzNzUuOTI=)'>
<text x='271.76' y='370.62' text-anchor='middle' style='font-size: 8.80px;fill: #1A1A1A; font-family: "Liberation Sans";' textLength='27.88px' lengthAdjust='spacingAndGlyphs'>riscv64</text>
</g>
<g clip-path='url(#cpMC4wMHw1MDQuMDB8MC4wMHw1NzYuMDA=)'>
</g>
<defs>
<clipPath id='cpNDUuMDB8NDk4LjUyfDE4Ny43NXwyMDQuNDA='>
<rect x='45.00' y='187.75' width='453.52' height='16.65' />
</clipPath>
</defs>
<g clip-path='url(#cpNDUuMDB8NDk4LjUyfDE4Ny43NXwyMDQuNDA=)'>
<text x='271.76' y='199.10' text-anchor='middle' style='font-size: 8.80px;fill: #1A1A1A; font-family: "Liberation Sans";' textLength='31.78px' lengthAdjust='spacingAndGlyphs'>aarch64</text>
</g>
<g clip-path='url(#cpMC4wMHw1MDQuMDB8MC4wMHw1NzYuMDA=)'>
</g>
<defs>
<clipPath id='cpNDUuMDB8NDk4LjUyfDE2LjIzfDMyLjg4'>
<rect x='45.00' y='16.23' width='453.52' height='16.65' />
</clipPath>
</defs>
<g clip-path='url(#cpNDUuMDB8NDk4LjUyfDE2LjIzfDMyLjg4)'>
<text x='271.76' y='27.58' text-anchor='middle' style='font-size: 8.80px;fill: #1A1A1A; font-family: "Liberation Sans";' textLength='26.89px' lengthAdjust='spacingAndGlyphs'>amd64</text>
</g>
<g clip-path='url(#cpMC4wMHw1MDQuMDB8MC4wMHw1NzYuMDA=)'>
<text transform='translate(76.72,546.23) rotate(-45)' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='18.59px' lengthAdjust='spacingAndGlyphs'>zuse</text>
<text transform='translate(126.01,546.23) rotate(-45)' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='31.28px' lengthAdjust='spacingAndGlyphs'>rajames</text>
<text transform='translate(175.31,546.23) rotate(-45)' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='9.78px' lengthAdjust='spacingAndGlyphs'>00</text>
<text transform='translate(224.61,546.23) rotate(-45)' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='9.78px' lengthAdjust='spacingAndGlyphs'>01</text>
<text transform='translate(273.90,546.23) rotate(-45)' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='9.78px' lengthAdjust='spacingAndGlyphs'>02</text>
<text transform='translate(323.20,546.23) rotate(-45)' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='9.78px' lengthAdjust='spacingAndGlyphs'>03</text>
<text transform='translate(372.49,546.23) rotate(-45)' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='9.78px' lengthAdjust='spacingAndGlyphs'>04</text>
<text transform='translate(421.79,546.23) rotate(-45)' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='9.78px' lengthAdjust='spacingAndGlyphs'>05</text>
<text transform='translate(471.08,546.23) rotate(-45)' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='9.78px' lengthAdjust='spacingAndGlyphs'>06</text>
<text x='40.07' y='159.13' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.168</text>
<text x='40.07' y='128.90' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.170</text>
<text x='40.07' y='98.68' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.172</text>
<text x='40.07' y='68.46' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.174</text>
<text x='40.07' y='38.24' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.176</text>
<text x='40.07' y='330.65' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.168</text>
<text x='40.07' y='300.42' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.170</text>
<text x='40.07' y='270.20' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.172</text>
<text x='40.07' y='239.98' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.174</text>
<text x='40.07' y='209.76' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.176</text>
<text x='40.07' y='502.16' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.168</text>
<text x='40.07' y='471.94' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.170</text>
<text x='40.07' y='441.72' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.172</text>
<text x='40.07' y='411.50' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.174</text>
<text x='40.07' y='381.28' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.176</text>
<text x='271.76' y='568.24' text-anchor='middle' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='35.50px' lengthAdjust='spacingAndGlyphs'>Identity</text>
<text transform='translate(13.05,279.09) rotate(-90)' text-anchor='middle' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='86.88px' lengthAdjust='spacingAndGlyphs'>Hermes fleet heat</text>
<text x='271.76' y='14.98' text-anchor='middle' style='font-size: 12.00px; font-weight: bold; font-family: "Liberation Sans";' textLength='100.03px' lengthAdjust='spacingAndGlyphs'>Hermes fleet heat</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 29 KiB