@tscircuit/schematic-trace-solver 0.0.168 → 0.0.170
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +273 -90
- package/lib/solvers/NetLabelToTraceSolver/NetLabelToTraceSolver.ts +18 -5
- package/lib/solvers/NetLabelToTraceSolver/reduceTraceCrossings.ts +180 -0
- package/lib/solvers/NetLabelTraceRecovery/doesTraceRecoveryPathConflict.ts +112 -0
- package/package.json +1 -1
- package/tests/bug-reports/bug-report-20260706T213649Z/__snapshots__/bug-report-20260706T213649Z.snap.svg +60 -222
- package/tests/bug-reports/bug-report-20260707T141025Z/__snapshots__/bug-report-20260707T141025Z.snap.svg +46 -64
- package/tests/bug-reports/bug-report-20260707T141421Z/__snapshots__/bug-report-20260707T141421Z.snap.svg +7 -25
- package/tests/bug-reports/bug-report-20260708T095725Z/__snapshots__/bug-report-20260708T095725Z.snap.svg +68 -104
- package/tests/examples/__snapshots__/example35.snap.svg +5 -23
- package/tests/examples/__snapshots__/example36.snap.svg +27 -45
- package/tests/examples/__snapshots__/example37.snap.svg +7 -25
- package/tests/examples/__snapshots__/example51.snap.svg +47 -83
- package/tests/examples/example37.test.ts +13 -1
- package/tests/repros/__snapshots__/board1096-usb-label-overlap-iteration.snap.svg +5 -23
- package/tests/repros/__snapshots__/repro-bc107a-common-emitter-routing.snap.svg +141 -0
- package/tests/repros/__snapshots__/repro-dc-power-isolated-routing.snap.svg +6 -24
- package/tests/repros/__snapshots__/repro-powerbank-3v-system-power.snap.svg +255 -0
- package/tests/repros/assets/repro-bc107a-common-emitter-routing.input.json +687 -0
- package/tests/repros/assets/repro-powerbank-3v-system-power.input.json +1772 -0
- package/tests/repros/repro-bc107a-common-emitter-routing.test.ts +16 -0
- package/tests/repros/repro-powerbank-3v-system-power.test.ts +17 -0
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
<svg width="1200" height="2016" viewBox="0 0 1200 2016" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on top and Circuit JSON schematic on the bottom">
|
|
2
2
|
<g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
|
|
3
|
-
<rect width="100%" height="100%" fill="white"/><g><polyline data-points="1.05,0.09999999999999998 3.05,2.1" data-type="line" data-label="" points="298.40474620962425,430.74489123269615 544.5045045045044,184.6451329378159" fill="none" stroke="hsl(312, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="1.05,-0.10000000000000003 3.05,2.3" data-type="line" data-label="" points="298.40474620962425,455.35486706218416 544.5045045045044,160.0351571083279" fill="none" stroke="hsl(88, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="1.05,-0.30000000000000004 1.05,0.30000000000000004" data-type="line" data-label="" points="298.40474620962425,479.9648428916722 298.40474620962425,406.1349154032081" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.05,-0.30000000000000004 1.6010000000000002,-0.30000000000000004 1.6010000000000002,0.3 1.05,0.30000000000000004" data-type="line" data-label="" points="298.40474620962425,479.9648428916722 366.20522961986376,479.9648428916722 366.20522961986376,406.13491540320814 298.40474620962425,406.1349154032081" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="40" y="381.5249395737201" width="258.40474620962425" height="123.04987914744015" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.008126785714285715"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="2" data-y="2" x="286.0997582948803" y="135.42518127883983" width="258.4047462096242" height="123.04987914744015" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.008126785714285715"/></g><g><rect data-type="rect" data-label="netId: VCC
|
|
3
|
+
<rect width="100%" height="100%" fill="white"/><g><polyline data-points="1.05,0.09999999999999998 3.05,2.1" data-type="line" data-label="" points="298.40474620962425,430.74489123269615 544.5045045045044,184.6451329378159" fill="none" stroke="hsl(312, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="1.05,-0.10000000000000003 3.05,2.3" data-type="line" data-label="" points="298.40474620962425,455.35486706218416 544.5045045045044,160.0351571083279" fill="none" stroke="hsl(88, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="1.05,-0.30000000000000004 1.05,0.30000000000000004" data-type="line" data-label="" points="298.40474620962425,479.9648428916722 298.40474620962425,406.1349154032081" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.05,-0.30000000000000004 1.6010000000000002,-0.30000000000000004 1.6010000000000002,0.3 1.05,0.30000000000000004" data-type="line" data-label="" points="298.40474620962425,479.9648428916722 366.20522961986376,479.9648428916722 366.20522961986376,406.13491540320814 298.40474620962425,406.1349154032081" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.05,0.09999999999999998 3.25,0.09999999999999998 3.25,2.1 3.05,2.1" data-type="line" data-label="" points="298.40474620962425,430.74489123269615 569.1144803339926,430.74489123269615 569.1144803339926,184.6451329378159 544.5045045045044,184.6451329378159" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.05,0.09999999999999998 3.25,0.09999999999999998 3.25,2.1 3.05,2.1" data-type="line" data-label="recovered from net labels: U1.7 -> U2.7" points="298.40474620962425,430.74489123269615 569.1144803339926,430.74489123269615 569.1144803339926,184.6451329378159 544.5045045045044,184.6451329378159" fill="none" stroke="green" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="40" y="381.5249395737201" width="258.40474620962425" height="123.04987914744015" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.008126785714285715"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="2" data-y="2" x="286.0997582948803" y="135.42518127883983" width="258.4047462096242" height="123.04987914744015" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.008126785714285715"/></g><g><rect data-type="rect" data-label="netId: VCC
|
|
4
4
|
globalConnNetId: connectivity_net2" data-x="1.6010000000000002" data-y="0.54" x="353.9002417051197" y="347.07097341243684" width="24.609975829488064" height="59.06394199077124" fill="#ef444466" stroke="#ef4444" stroke-width="0.008126785714285715"/></g><g><rect data-type="rect" data-label="netId: U1.CLK to U2.VCC
|
|
5
5
|
globalConnNetId: connectivity_net1" data-x="1.276" data-y="-0.10000000000000003" x="298.52779608877165" y="443.04987914744015" width="55.3724456163481" height="24.609975829488008" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.008126785714285715"/></g><g><rect data-type="rect" data-label="netId: U1.CLK to U2.VCC
|
|
6
|
-
globalConnNetId: connectivity_net1" data-x="3.276" data-y="2.3" x="544.6275543836518" y="147.7301691935839" width="55.37244561634816" height="24.609975829488008" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.008126785714285715"/></g><g><
|
|
7
|
-
globalConnNetId: connectivity_net0" data-x="1.276" data-y="0.09999999999999998" x="298.52779608877165" y="418.43990331795214" width="55.3724456163481" height="24.609975829488008" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.008126785714285715"/></g><g><rect data-type="rect" data-label="netId: U1.IO3 to U2.IO3
|
|
8
|
-
globalConnNetId: connectivity_net0" data-x="3.276" data-y="2.1" x="544.6275543836518" y="172.34014502307187" width="55.37244561634816" height="24.609975829488064" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.008126785714285715"/></g><g><circle data-type="point" data-label="U1.1
|
|
6
|
+
globalConnNetId: connectivity_net1" data-x="3.276" data-y="2.3" x="544.6275543836518" y="147.7301691935839" width="55.37244561634816" height="24.609975829488008" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.008126785714285715"/></g><g><circle data-type="point" data-label="U1.1
|
|
9
7
|
x-" data-x="-1.05" data-y="0.30000000000000004" cx="40" cy="406.1349154032081" r="3" fill="hsl(319, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.2
|
|
10
8
|
x-" data-x="-1.05" data-y="0.10000000000000003" cx="40" cy="430.74489123269615" r="3" fill="hsl(320, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.3
|
|
11
9
|
x-" data-x="-1.05" data-y="-0.09999999999999998" cx="40" cy="455.35486706218416" r="3" fill="hsl(321, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.4
|
|
@@ -24,9 +22,7 @@ x+" data-x="3.05" data-y="2.1" cx="544.5045045045044" cy="184.6451329378159" r="
|
|
|
24
22
|
x+" data-x="3.05" data-y="2.3" cx="544.5045045045044" cy="160.0351571083279" r="3" fill="hsl(207, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anchorPoint
|
|
25
23
|
orientation: y+" data-x="1.6010000000000002" data-y="0.3" cx="366.20522961986376" cy="406.13491540320814" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
|
|
26
24
|
orientation: x+" data-x="1.05" data-y="-0.10000000000000003" cx="298.40474620962425" cy="455.35486706218416" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
|
|
27
|
-
orientation: x+" data-x="3.05" data-y="2.3" cx="544.5045045045044" cy="160.0351571083279" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><
|
|
28
|
-
orientation: x+" data-x="1.05" data-y="0.09999999999999998" cx="298.40474620962425" cy="430.74489123269615" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
|
|
29
|
-
orientation: x+" data-x="3.05" data-y="2.1" cx="544.5045045045044" cy="184.6451329378159" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g id="crosshair" style="display: none"><line id="crosshair-h" y1="0" y2="640" stroke="#666" stroke-width="0.5"/><line id="crosshair-v" x1="0" x2="640" stroke="#666" stroke-width="0.5"/><text id="coordinates" font-family="monospace" font-size="12" fill="#666"></text></g><script><![CDATA[
|
|
25
|
+
orientation: x+" data-x="3.05" data-y="2.3" cx="544.5045045045044" cy="160.0351571083279" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g id="crosshair" style="display: none"><line id="crosshair-h" y1="0" y2="640" stroke="#666" stroke-width="0.5"/><line id="crosshair-v" x1="0" x2="640" stroke="#666" stroke-width="0.5"/><text id="coordinates" font-family="monospace" font-size="12" fill="#666"></text></g><script><![CDATA[
|
|
30
26
|
document.currentScript.parentElement.addEventListener('mousemove', (e) => {
|
|
31
27
|
const svg = e.currentTarget;
|
|
32
28
|
const rect = svg.getBoundingClientRect();
|
|
@@ -83,7 +79,7 @@ orientation: x+" data-x="3.05" data-y="2.1" cx="544.5045045045044" cy="184.64513
|
|
|
83
79
|
.port-label { fill: rgb(0, 100, 100); }
|
|
84
80
|
.component-name { fill: rgb(0, 100, 100); }
|
|
85
81
|
|
|
86
|
-
</style><rect class="boundary" x="0" y="0" width="1200" height="800"/><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"><path d="M 580.3066666667 660 L 690.5066666667001 660 L 690.5066666667001 540 L 580.3066666667 540" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="32px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 580.3066666667 660 L 690.5066666667001 660 L 690.5066666667001 540 L 580.3066666667 540" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="240.30666666669998" y="500" width="260" height="200" stroke-width="4px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="240.30666666669998" y="500" width="260" height="200" fill="transparent"/><text class="sch-text" x="370.3066666667" y="600" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="36px" transform="rotate(0, 370.3066666667, 600)">U1</text><line class="component-pin sch-component-pin sch-port-line" x1="240.30666666669998" y1="540" x2="164.30666666669998" y2="540" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="160.30666666669998" cy="540" r="4" stroke-width="4px"/><rect x="156.30666666669998" y="536" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="200.30666666669995" y="536" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="240.30666666669998" y1="580" x2="164.30666666669998" y2="580" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="160.30666666669998" cy="580" r="4" stroke-width="4px"/><rect x="156.30666666669998" y="576" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="200.30666666669995" y="576" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="240.30666666669998" y1="620" x2="164.30666666669998" y2="620" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="160.30666666669998" cy="620" r="4" stroke-width="4px"/><rect x="156.30666666669998" y="616" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="200.30666666669995" y="616" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="240.30666666669998" y1="660" x2="164.30666666669998" y2="660" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="160.30666666669998" cy="660" r="4" stroke-width="4px"/><rect x="156.30666666669998" y="656" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="200.30666666669995" y="656" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="500.3066666667" y1="660" x2="580.3066666667" y2="660" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><rect x="576.3066666667" y="656" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="540.3066666667" y="656" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="500.3066666667" y1="620" x2="576.3066666667" y2="620" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_5__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="580.3066666667" cy="620" r="4" stroke-width="4px"/><rect x="576.3066666667" y="616" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="540.3066666667" y="616" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="500.3066666667" y1="580" x2="576.3066666667" y2="580" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_6__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="580.3066666667" cy="580" r="4" stroke-width="4px"/><rect x="576.3066666667" y="576" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="540.3066666667" y="576" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="500.3066666667" y1="540" x2="580.3066666667" y2="540" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_7__stack1"><rect x="576.3066666667" y="536" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="540.3066666667" y="536" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">8</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_1__stack1"><rect class="component chip sch-component-body" x="640.3066666667" y="100" width="260" height="200" stroke-width="4px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="640.3066666667" y="100" width="260" height="200" fill="transparent"/><text class="sch-text" x="770.3066666667" y="200" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="36px" transform="rotate(0, 770.3066666667, 200)">U2</text><line class="component-pin sch-component-pin sch-port-line" x1="640.3066666667" y1="140.00000000000006" x2="564.3066666667" y2="140.00000000000006" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="560.3066666667" cy="140.00000000000006" r="4" stroke-width="4px"/><rect x="556.3066666667" y="136.00000000000006" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="600.3066666666999" y="136.00000000000006" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="640.3066666667" y1="180" x2="564.3066666667" y2="180" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="560.3066666667" cy="180" r="4" stroke-width="4px"/><rect x="556.3066666667" y="176" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="600.3066666666999" y="176" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="640.3066666667" y1="220" x2="564.3066666667" y2="220" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="560.3066666667" cy="220" r="4" stroke-width="4px"/><rect x="556.3066666667" y="216" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="600.3066666666999" y="216" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="640.3066666667" y1="260" x2="564.3066666667" y2="260" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="560.3066666667" cy="260" r="4" stroke-width="4px"/><rect x="556.3066666667" y="256" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="600.3066666666999" y="256" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="900.3066666667" y1="260" x2="976.3066666667" y2="260" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_4__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="980.3066666667" cy="260" r="4" stroke-width="4px"/><rect x="976.3066666667" y="256" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="940.3066666667" y="256" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="900.3066666667" y1="220" x2="976.3066666667" y2="220" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_5__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="980.3066666667" cy="220" r="4" stroke-width="4px"/><rect x="976.3066666667" y="216" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="940.3066666667" y="216" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="900.3066666667" y1="180" x2="976.3066666667" y2="180" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_6__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="980.3066666667" cy="180" r="4" stroke-width="4px"/><rect x="976.3066666667" y="176" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="940.3066666667" y="176" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="900.3066666667" y1="140.00000000000006" x2="976.3066666667" y2="140.00000000000006" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_7__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="980.3066666667" cy="140.00000000000006" r="4" stroke-width="4px"/><rect x="976.3066666667" y="136.00000000000006" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="940.3066666667" y="136.00000000000006" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">8</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="160.30666666669998" cy="540" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="160.30666666669998" cy="580" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="160.30666666669998" cy="620" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="160.30666666669998" cy="660" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="580.3066666667" cy="660" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_5__stack1"><circle cx="580.3066666667" cy="620" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_6__stack1"><circle cx="580.3066666667" cy="580" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_7__stack1"><circle cx="580.3066666667" cy="540" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="560.3066666667" cy="140.00000000000006" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="560.3066666667" cy="180" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="560.3066666667" cy="220" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_3__stack1"><circle cx="560.3066666667" cy="260" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_4__stack1"><circle cx="980.3066666667" cy="260" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_5__stack1"><circle cx="980.3066666667" cy="220" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_6__stack1"><circle cx="980.3066666667" cy="180" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_7__stack1"><circle cx="980.3066666667" cy="140.00000000000006" r="8" fill="red" opacity="0"/></g><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" d="
|
|
82
|
+
</style><rect class="boundary" x="0" y="0" width="1200" height="800"/><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"><path d="M 580.3066666667 660 L 690.5066666667001 660 L 690.5066666667001 540 L 580.3066666667 540" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="32px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 580.3066666667 660 L 690.5066666667001 660 L 690.5066666667001 540 L 580.3066666667 540" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"><path d="M 580.3066666667 580 L 1020.3066666667 580 L 1020.3066666667 180 L 980.3066666667 180" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="32px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 580.3066666667 580 L 1020.3066666667 580 L 1020.3066666667 180 L 980.3066666667 180" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="240.30666666669998" y="500" width="260" height="200" stroke-width="4px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="240.30666666669998" y="500" width="260" height="200" fill="transparent"/><text class="sch-text" x="370.3066666667" y="600" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="36px" transform="rotate(0, 370.3066666667, 600)">U1</text><line class="component-pin sch-component-pin sch-port-line" x1="240.30666666669998" y1="540" x2="164.30666666669998" y2="540" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="160.30666666669998" cy="540" r="4" stroke-width="4px"/><rect x="156.30666666669998" y="536" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="200.30666666669995" y="536" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="240.30666666669998" y1="580" x2="164.30666666669998" y2="580" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="160.30666666669998" cy="580" r="4" stroke-width="4px"/><rect x="156.30666666669998" y="576" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="200.30666666669995" y="576" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="240.30666666669998" y1="620" x2="164.30666666669998" y2="620" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="160.30666666669998" cy="620" r="4" stroke-width="4px"/><rect x="156.30666666669998" y="616" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="200.30666666669995" y="616" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="240.30666666669998" y1="660" x2="164.30666666669998" y2="660" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="160.30666666669998" cy="660" r="4" stroke-width="4px"/><rect x="156.30666666669998" y="656" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="200.30666666669995" y="656" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="500.3066666667" y1="660" x2="580.3066666667" y2="660" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><rect x="576.3066666667" y="656" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="540.3066666667" y="656" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="500.3066666667" y1="620" x2="576.3066666667" y2="620" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_5__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="580.3066666667" cy="620" r="4" stroke-width="4px"/><rect x="576.3066666667" y="616" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="540.3066666667" y="616" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="500.3066666667" y1="580" x2="580.3066666667" y2="580" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_6__stack1"><rect x="576.3066666667" y="576" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="540.3066666667" y="576" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="500.3066666667" y1="540" x2="580.3066666667" y2="540" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_7__stack1"><rect x="576.3066666667" y="536" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="540.3066666667" y="536" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">8</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_1__stack1"><rect class="component chip sch-component-body" x="640.3066666667" y="100" width="260" height="200" stroke-width="4px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="640.3066666667" y="100" width="260" height="200" fill="transparent"/><text class="sch-text" x="770.3066666667" y="200" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="36px" transform="rotate(0, 770.3066666667, 200)">U2</text><line class="component-pin sch-component-pin sch-port-line" x1="640.3066666667" y1="140.00000000000006" x2="564.3066666667" y2="140.00000000000006" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="560.3066666667" cy="140.00000000000006" r="4" stroke-width="4px"/><rect x="556.3066666667" y="136.00000000000006" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="600.3066666666999" y="136.00000000000006" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="640.3066666667" y1="180" x2="564.3066666667" y2="180" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="560.3066666667" cy="180" r="4" stroke-width="4px"/><rect x="556.3066666667" y="176" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="600.3066666666999" y="176" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="640.3066666667" y1="220" x2="564.3066666667" y2="220" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="560.3066666667" cy="220" r="4" stroke-width="4px"/><rect x="556.3066666667" y="216" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="600.3066666666999" y="216" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="640.3066666667" y1="260" x2="564.3066666667" y2="260" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="560.3066666667" cy="260" r="4" stroke-width="4px"/><rect x="556.3066666667" y="256" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="600.3066666666999" y="256" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="900.3066666667" y1="260" x2="976.3066666667" y2="260" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_4__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="980.3066666667" cy="260" r="4" stroke-width="4px"/><rect x="976.3066666667" y="256" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="940.3066666667" y="256" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="900.3066666667" y1="220" x2="976.3066666667" y2="220" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_5__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="980.3066666667" cy="220" r="4" stroke-width="4px"/><rect x="976.3066666667" y="216" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="940.3066666667" y="216" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="900.3066666667" y1="180" x2="980.3066666667" y2="180" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_6__stack1"><rect x="976.3066666667" y="176" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="940.3066666667" y="176" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="900.3066666667" y1="140.00000000000006" x2="976.3066666667" y2="140.00000000000006" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_7__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="980.3066666667" cy="140.00000000000006" r="4" stroke-width="4px"/><rect x="976.3066666667" y="136.00000000000006" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="940.3066666667" y="136.00000000000006" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">8</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="160.30666666669998" cy="540" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="160.30666666669998" cy="580" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="160.30666666669998" cy="620" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="160.30666666669998" cy="660" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="580.3066666667" cy="660" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_5__stack1"><circle cx="580.3066666667" cy="620" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_6__stack1"><circle cx="580.3066666667" cy="580" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_7__stack1"><circle cx="580.3066666667" cy="540" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="560.3066666667" cy="140.00000000000006" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="560.3066666667" cy="180" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="560.3066666667" cy="220" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_3__stack1"><circle cx="560.3066666667" cy="260" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_4__stack1"><circle cx="980.3066666667" cy="260" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_5__stack1"><circle cx="980.3066666667" cy="220" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_6__stack1"><circle cx="980.3066666667" cy="180" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_7__stack1"><circle cx="980.3066666667" cy="140.00000000000006" r="8" fill="red" opacity="0"/></g><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" d="
|
|
87
83
|
M 690.5066666667001,540
|
|
88
84
|
L 670.5066666667001,529.2
|
|
89
85
|
L 670.5066666667001,437.12
|
|
@@ -104,20 +100,6 @@ orientation: x+" data-x="3.05" data-y="2.1" cx="544.5045045045044" cy="184.64513
|
|
|
104
100
|
L 1059.6933333333668,160.00000000000006
|
|
105
101
|
L 991.1066666667,160.00000000000006
|
|
106
102
|
Z
|
|
107
|
-
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="4px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" x="998.3066666667" y="140.00000000000006" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="36px" transform="">XX</text
|
|
108
|
-
M 580.3066666667,580
|
|
109
|
-
L 591.1066666667,560
|
|
110
|
-
L 659.6933333333667,560
|
|
111
|
-
L 659.6933333333667,600
|
|
112
|
-
L 591.1066666667,600
|
|
113
|
-
Z
|
|
114
|
-
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="4px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_3__stack1" x="598.3066666667" y="580" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="36px" transform="">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_4__stack1" d="
|
|
115
|
-
M 980.3066666667,180
|
|
116
|
-
L 991.1066666667,160
|
|
117
|
-
L 1059.6933333333668,160
|
|
118
|
-
L 1059.6933333333668,200
|
|
119
|
-
L 991.1066666667,200
|
|
120
|
-
Z
|
|
121
|
-
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="4px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_4__stack1" x="998.3066666667" y="180" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="36px" transform="">XX</text>
|
|
103
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="4px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" x="998.3066666667" y="140.00000000000006" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="36px" transform="">XX</text>
|
|
122
104
|
</g>
|
|
123
105
|
</svg>
|
|
@@ -1,28 +1,24 @@
|
|
|
1
1
|
<svg width="1200" height="2016" viewBox="0 0 1200 2016" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on top and Circuit JSON schematic on the bottom">
|
|
2
2
|
<g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
|
|
3
|
-
<rect width="100%" height="100%" fill="white"/><g><polyline data-points="1.05,-0.10000000000000003 3.05,2.3" data-type="line" data-label="" points="
|
|
4
|
-
globalConnNetId: connectivity_net1" data-x="2.1510000000000002" data-y="0.54" x="
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
x-" data-x="-1.05" data-y="0.
|
|
8
|
-
x-" data-x="-1.05" data-y="0.
|
|
9
|
-
x
|
|
10
|
-
x
|
|
11
|
-
x+" data-x="1.05" data-y="
|
|
12
|
-
x+" data-x="1.05" data-y="
|
|
13
|
-
x
|
|
14
|
-
x
|
|
15
|
-
x-" data-x="0.95" data-y="
|
|
16
|
-
x-" data-x="0.95" data-y="
|
|
17
|
-
x
|
|
18
|
-
x
|
|
19
|
-
x+" data-x="3.05" data-y="1
|
|
20
|
-
x+" data-x="3.05" data-y="
|
|
21
|
-
|
|
22
|
-
x+" data-x="3.05" data-y="2.3" cx="490.1078219956871" cy="177.28288570868457" r="3" fill="hsl(207, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anchorPoint
|
|
23
|
-
orientation: y+" data-x="2.1510000000000002" data-y="0.30000000000000004" cx="391.4134483434621" cy="396.8476769260929" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
|
|
24
|
-
orientation: x+" data-x="1.05" data-y="-0.10000000000000003" cx="270.54303077827876" cy="440.7606351695746" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
|
|
25
|
-
orientation: x+" data-x="3.05" data-y="2.3" cx="490.1078219956871" cy="177.28288570868457" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g id="crosshair" style="display: none"><line id="crosshair-h" y1="0" y2="640" stroke="#666" stroke-width="0.5"/><line id="crosshair-v" x1="0" x2="640" stroke="#666" stroke-width="0.5"/><text id="coordinates" font-family="monospace" font-size="12" fill="#666"></text></g><script><![CDATA[
|
|
3
|
+
<rect width="100%" height="100%" fill="white"/><g><polyline data-points="1.05,-0.10000000000000003 3.05,2.3" data-type="line" data-label="" points="313.48837209302326,463.25581395348837 573.953488372093,150.69767441860466" fill="none" stroke="hsl(88, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="1.05,-0.30000000000000004 1.05,0.30000000000000004" data-type="line" data-label="" points="313.48837209302326,489.30232558139534 313.48837209302326,411.16279069767444" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.05,-0.30000000000000004 2.1510000000000002,-0.30000000000000004 2.1510000000000002,0.30000000000000004 1.05,0.30000000000000004" data-type="line" data-label="" points="313.48837209302326,489.30232558139534 456.8744186046512,489.30232558139534 456.8744186046512,411.16279069767444 313.48837209302326,411.16279069767444" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.05,-0.10000000000000003 3.25,-0.10000000000000003 3.25,2.3 3.05,2.3" data-type="line" data-label="" points="313.48837209302326,463.25581395348837 600,463.25581395348837 600,150.69767441860466 573.953488372093,150.69767441860466" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.05,-0.10000000000000003 3.25,-0.10000000000000003 3.25,2.3 3.05,2.3" data-type="line" data-label="recovered from net labels: U1.6 -> U2.8" points="313.48837209302326,463.25581395348837 600,463.25581395348837 600,150.69767441860466 573.953488372093,150.69767441860466" fill="none" stroke="green" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="40" y="385.1162790697674" width="273.48837209302326" height="130.23255813953494" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007678571428571429"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="2" data-y="2" x="300.4651162790698" y="124.65116279069768" width="273.48837209302326" height="130.23255813953486" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007678571428571429"/></g><g><rect data-type="rect" data-label="netId: VCC
|
|
4
|
+
globalConnNetId: connectivity_net1" data-x="2.1510000000000002" data-y="0.54" x="443.8511627906977" y="348.65116279069764" width="26.046511627907023" height="62.5116279069768" fill="#ef444466" stroke="#ef4444" stroke-width="0.007678571428571429"/></g><g><circle data-type="point" data-label="U1.1
|
|
5
|
+
x-" data-x="-1.05" data-y="0.30000000000000004" cx="40" cy="411.16279069767444" r="3" fill="hsl(319, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.2
|
|
6
|
+
x-" data-x="-1.05" data-y="0.10000000000000003" cx="40" cy="437.2093023255814" r="3" fill="hsl(320, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.3
|
|
7
|
+
x-" data-x="-1.05" data-y="-0.09999999999999998" cx="40" cy="463.25581395348837" r="3" fill="hsl(321, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.4
|
|
8
|
+
x-" data-x="-1.05" data-y="-0.30000000000000004" cx="40" cy="489.30232558139534" r="3" fill="hsl(322, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.5
|
|
9
|
+
x+" data-x="1.05" data-y="-0.30000000000000004" cx="313.48837209302326" cy="489.30232558139534" r="3" fill="hsl(323, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.6
|
|
10
|
+
x+" data-x="1.05" data-y="-0.10000000000000003" cx="313.48837209302326" cy="463.25581395348837" r="3" fill="hsl(324, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.7
|
|
11
|
+
x+" data-x="1.05" data-y="0.09999999999999998" cx="313.48837209302326" cy="437.2093023255814" r="3" fill="hsl(325, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.8
|
|
12
|
+
x+" data-x="1.05" data-y="0.30000000000000004" cx="313.48837209302326" cy="411.16279069767444" r="3" fill="hsl(326, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.1
|
|
13
|
+
x-" data-x="0.95" data-y="2.3" cx="300.4651162790698" cy="150.69767441860466" r="3" fill="hsl(200, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.2
|
|
14
|
+
x-" data-x="0.95" data-y="2.1" cx="300.4651162790698" cy="176.74418604651163" r="3" fill="hsl(201, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.3
|
|
15
|
+
x-" data-x="0.95" data-y="1.9" cx="300.4651162790698" cy="202.79069767441862" r="3" fill="hsl(202, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.4
|
|
16
|
+
x-" data-x="0.95" data-y="1.7" cx="300.4651162790698" cy="228.8372093023256" r="3" fill="hsl(203, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.5
|
|
17
|
+
x+" data-x="3.05" data-y="1.7" cx="573.953488372093" cy="228.8372093023256" r="3" fill="hsl(204, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.6
|
|
18
|
+
x+" data-x="3.05" data-y="1.9" cx="573.953488372093" cy="202.79069767441862" r="3" fill="hsl(205, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.7
|
|
19
|
+
x+" data-x="3.05" data-y="2.1" cx="573.953488372093" cy="176.74418604651163" r="3" fill="hsl(206, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.8
|
|
20
|
+
x+" data-x="3.05" data-y="2.3" cx="573.953488372093" cy="150.69767441860466" r="3" fill="hsl(207, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anchorPoint
|
|
21
|
+
orientation: y+" data-x="2.1510000000000002" data-y="0.30000000000000004" cx="456.8744186046512" cy="411.16279069767444" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g id="crosshair" style="display: none"><line id="crosshair-h" y1="0" y2="640" stroke="#666" stroke-width="0.5"/><line id="crosshair-v" x1="0" x2="640" stroke="#666" stroke-width="0.5"/><text id="coordinates" font-family="monospace" font-size="12" fill="#666"></text></g><script><![CDATA[
|
|
26
22
|
document.currentScript.parentElement.addEventListener('mousemove', (e) => {
|
|
27
23
|
const svg = e.currentTarget;
|
|
28
24
|
const rect = svg.getBoundingClientRect();
|
|
@@ -44,7 +40,7 @@ orientation: x+" data-x="3.05" data-y="2.3" cx="490.1078219956871" cy="177.28288
|
|
|
44
40
|
v.setAttribute('y2', '640');
|
|
45
41
|
|
|
46
42
|
// Calculate real coordinates using inverse transformation
|
|
47
|
-
const matrix = {"a":
|
|
43
|
+
const matrix = {"a":130.2325581395349,"c":0,"e":176.74418604651163,"b":0,"d":-130.2325581395349,"f":450.2325581395349};
|
|
48
44
|
// Manually invert and apply the affine transform
|
|
49
45
|
// Since we only use translate and scale, we can directly compute:
|
|
50
46
|
// x' = (x - tx) / sx
|
|
@@ -79,27 +75,13 @@ orientation: x+" data-x="3.05" data-y="2.3" cx="490.1078219956871" cy="177.28288
|
|
|
79
75
|
.port-label { fill: rgb(0, 100, 100); }
|
|
80
76
|
.component-name { fill: rgb(0, 100, 100); }
|
|
81
77
|
|
|
82
|
-
</style><rect class="boundary" x="0" y="0" width="1200" height="800"/><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"><path d="M 523.91013755332 652.25302919232 L 737.5490492000465 652.25302919232 L 737.5490492000465 535.82855418048 L 523.91013755332 535.82855418048" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="31.046526669824004px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 523.91013755332 652.25302919232 L 737.5490492000465 652.25302919232 L 737.5490492000465 535.82855418048 L 523.91013755332 535.82855418048" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.8808158337280005px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="194.04079168644" y="497.0203958432" width="252.25302919232" height="194.04079168640004" stroke-width="3.8808158337280005px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="194.04079168644" y="497.0203958432" width="252.25302919232" height="194.04079168640004" fill="transparent"/><text class="sch-text" x="320.1673062826" y="594.0407916864" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="34.927342503552px" transform="rotate(0, 320.1673062826, 594.0407916864)">U1</text><line class="component-pin sch-component-pin sch-port-line" x1="194.04079168644" y1="535.82855418048" x2="120.305290845608" y2="535.82855418048" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="116.42447501187999" cy="535.82855418048" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="112.54365917815198" y="531.947738346752" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="155.23263334915998" y="531.947738346752" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="194.04079168644" y1="574.63671251776" x2="120.305290845608" y2="574.63671251776" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="116.42447501187999" cy="574.63671251776" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="112.54365917815198" y="570.755896684032" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="155.23263334915998" y="570.755896684032" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="194.04079168644" y1="613.44487085504" x2="120.305290845608" y2="613.44487085504" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="116.42447501187999" cy="613.44487085504" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="112.54365917815198" y="609.564055021312" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="155.23263334915998" y="609.564055021312" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="194.04079168644" y1="652.25302919232" x2="120.305290845608" y2="652.25302919232" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="116.42447501187999" cy="652.25302919232" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="112.54365917815198" y="648.372213358592" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="155.23263334915998" y="648.372213358592" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="446.29382087876" y1="652.25302919232" x2="523.91013755332" y2="652.25302919232" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><rect x="520.0293217195921" y="648.372213358592" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="485.10197921604004" y="648.372213358592" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="446.29382087876" y1="613.44487085504" x2="520.029321719592" y2="613.44487085504" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_0_5__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="523.91013755332" cy="613.44487085504" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="520.0293217195921" y="609.564055021312" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="485.10197921604004" y="609.564055021312" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="446.29382087876" y1="574.63671251776" x2="520.029321719592" y2="574.63671251776" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_0_6__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="523.91013755332" cy="574.63671251776" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="520.0293217195921" y="570.755896684032" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="485.10197921604004" y="570.755896684032" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="446.29382087876" y1="535.82855418048" x2="523.91013755332" y2="535.82855418048" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_0_7__stack1"><rect x="520.0293217195921" y="531.947738346752" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="485.10197921604004" y="531.947738346752" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">8</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_1__stack1"><rect class="component chip sch-component-body" x="582.1223750592401" y="108.93881247039997" width="252.2530291923199" height="194.04079168639998" stroke-width="3.8808158337280005px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="582.1223750592401" y="108.93881247039997" width="252.2530291923199" height="194.04079168639998" fill="transparent"/><text class="sch-text" x="708.2488896554" y="205.95920831359996" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="34.927342503552px" transform="rotate(0, 708.2488896554, 205.95920831359996)">U2</text><line class="component-pin sch-component-pin sch-port-line" x1="582.1223750592401" y1="147.74697080768" x2="508.386874218408" y2="147.74697080768" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="504.50605838468005" cy="147.74697080768" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="500.62524255095207" y="143.86615497395198" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="543.3142167219601" y="143.866154973952" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="582.1223750592401" y1="186.55512914495995" x2="508.386874218408" y2="186.55512914495995" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="504.50605838468005" cy="186.55512914495995" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="500.62524255095207" y="182.67431331123194" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="543.3142167219601" y="182.6743133112319" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="582.1223750592401" y1="225.36328748223997" x2="508.386874218408" y2="225.36328748223997" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="504.50605838468005" cy="225.36328748223997" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="500.62524255095207" y="221.48247164851196" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="543.3142167219601" y="221.482471648512" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="582.1223750592401" y1="264.17144581952" x2="508.386874218408" y2="264.17144581952" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_1_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="504.50605838468005" cy="264.17144581952" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="500.62524255095207" y="260.290629985792" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="543.3142167219601" y="260.29062998579195" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="834.37540425156" y1="264.17144581952" x2="908.1109050923919" y2="264.17144581952" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_1_4__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="911.99172092612" cy="264.17144581952" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="908.110905092392" y="260.290629985792" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="873.18356258884" y="260.29062998579195" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="834.37540425156" y1="225.36328748223997" x2="908.1109050923919" y2="225.36328748223997" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_1_5__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="911.99172092612" cy="225.36328748223997" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="908.110905092392" y="221.48247164851196" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="873.18356258884" y="221.482471648512" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="834.37540425156" y1="186.55512914495995" x2="908.1109050923919" y2="186.55512914495995" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_1_6__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="911.99172092612" cy="186.55512914495995" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="908.110905092392" y="182.67431331123194" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="873.18356258884" y="182.6743133112319" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="834.37540425156" y1="147.74697080768" x2="908.1109050923919" y2="147.74697080768" stroke-width="3.8808158337280005px"/><g class="sch-port" data-schematic-port-id="source_port_1_7__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="911.99172092612" cy="147.74697080768" r="3.8808158337280005" stroke-width="3.8808158337280005px"/><rect x="908.110905092392" y="143.86615497395198" width="7.761631667456001" height="7.761631667456001" opacity="0"/></g><text class="pin-number sch-pin-number" x="873.18356258884" y="143.866154973952" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="29.10611875296px" transform="">8</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="116.42447501187999" cy="535.82855418048" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="116.42447501187999" cy="574.63671251776" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="116.42447501187999" cy="613.44487085504" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="116.42447501187999" cy="652.25302919232" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="523.91013755332" cy="652.25302919232" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_5__stack1"><circle cx="523.91013755332" cy="613.44487085504" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_6__stack1"><circle cx="523.91013755332" cy="574.63671251776" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_7__stack1"><circle cx="523.91013755332" cy="535.82855418048" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="504.50605838468005" cy="147.74697080768" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="504.50605838468005" cy="186.55512914495995" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="504.50605838468005" cy="225.36328748223997" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_3__stack1"><circle cx="504.50605838468005" cy="264.17144581952" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_4__stack1"><circle cx="911.99172092612" cy="264.17144581952" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_5__stack1"><circle cx="911.99172092612" cy="225.36328748223997" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_6__stack1"><circle cx="911.99172092612" cy="186.55512914495995" r="7.761631667456001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_7__stack1"><circle cx="911.99172092612" cy="147.74697080768" r="7.761631667456001" fill="red" opacity="0"/></g><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" d="
|
|
83
|
-
M
|
|
84
|
-
L
|
|
85
|
-
L
|
|
86
|
-
L
|
|
87
|
-
L
|
|
78
|
+
</style><rect class="boundary" x="0" y="0" width="1200" height="800"/><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"><path d="M 595 660 L 815.2 660 L 815.2 540 L 595 540" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="32px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 595 660 L 815.2 660 L 815.2 540 L 595 540" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"><path d="M 595 620 L 1035 620 L 1035 140.00000000000006 L 995 140.00000000000006" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="32px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 595 620 L 1035 620 L 1035 140.00000000000006 L 995 140.00000000000006" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="255" y="500" width="260" height="200" stroke-width="4px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="255" y="500" width="260" height="200" fill="transparent"/><text class="sch-text" x="385" y="600" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="36px" transform="rotate(0, 385, 600)">U1</text><line class="component-pin sch-component-pin sch-port-line" x1="255" y1="540" x2="179" y2="540" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="175" cy="540" r="4" stroke-width="4px"/><rect x="171" y="536" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="214.99999999999997" y="536" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="255" y1="580" x2="179" y2="580" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="175" cy="580" r="4" stroke-width="4px"/><rect x="171" y="576" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="214.99999999999997" y="576" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="255" y1="620" x2="179" y2="620" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="175" cy="620" r="4" stroke-width="4px"/><rect x="171" y="616" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="214.99999999999997" y="616" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="255" y1="660" x2="179" y2="660" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="175" cy="660" r="4" stroke-width="4px"/><rect x="171" y="656" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="214.99999999999997" y="656" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="515" y1="660" x2="595" y2="660" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><rect x="591" y="656" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="555" y="656" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="515" y1="620" x2="595" y2="620" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_5__stack1"><rect x="591" y="616" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="555" y="616" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="515" y1="580" x2="591" y2="580" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_6__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="595" cy="580" r="4" stroke-width="4px"/><rect x="591" y="576" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="555" y="576" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="515" y1="540" x2="595" y2="540" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_0_7__stack1"><rect x="591" y="536" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="555" y="536" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">8</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_1__stack1"><rect class="component chip sch-component-body" x="655" y="100" width="260" height="200" stroke-width="4px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="655" y="100" width="260" height="200" fill="transparent"/><text class="sch-text" x="785" y="200" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="36px" transform="rotate(0, 785, 200)">U2</text><line class="component-pin sch-component-pin sch-port-line" x1="655" y1="140.00000000000006" x2="579" y2="140.00000000000006" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="575" cy="140.00000000000006" r="4" stroke-width="4px"/><rect x="571" y="136.00000000000006" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="615" y="136.00000000000006" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="655" y1="180" x2="579" y2="180" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="575" cy="180" r="4" stroke-width="4px"/><rect x="571" y="176" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="615" y="176" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="655" y1="220" x2="579" y2="220" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="575" cy="220" r="4" stroke-width="4px"/><rect x="571" y="216" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="615" y="216" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="655" y1="260" x2="579" y2="260" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="575" cy="260" r="4" stroke-width="4px"/><rect x="571" y="256" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="615" y="256" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="915" y1="260" x2="991" y2="260" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_4__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="995" cy="260" r="4" stroke-width="4px"/><rect x="991" y="256" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="955" y="256" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="915" y1="220" x2="991" y2="220" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_5__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="995" cy="220" r="4" stroke-width="4px"/><rect x="991" y="216" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="955" y="216" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="915" y1="180" x2="991" y2="180" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_6__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="995" cy="180" r="4" stroke-width="4px"/><rect x="991" y="176" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="955" y="176" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="915" y1="140.00000000000006" x2="995" y2="140.00000000000006" stroke-width="4px"/><g class="sch-port" data-schematic-port-id="source_port_1_7__stack1"><rect x="991" y="136.00000000000006" width="8" height="8" opacity="0"/></g><text class="pin-number sch-pin-number" x="955" y="136.00000000000006" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="30px" transform="">8</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="175" cy="540" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="175" cy="580" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="175" cy="620" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="175" cy="660" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="595" cy="660" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_5__stack1"><circle cx="595" cy="620" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_6__stack1"><circle cx="595" cy="580" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_7__stack1"><circle cx="595" cy="540" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="575" cy="140.00000000000006" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="575" cy="180" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="575" cy="220" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_3__stack1"><circle cx="575" cy="260" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_4__stack1"><circle cx="995" cy="260" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_5__stack1"><circle cx="995" cy="220" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_6__stack1"><circle cx="995" cy="180" r="8" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_7__stack1"><circle cx="995" cy="140.00000000000006" r="8" fill="red" opacity="0"/></g><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" d="
|
|
79
|
+
M 815.2,540
|
|
80
|
+
L 795.2,529.2
|
|
81
|
+
L 795.2,437.12
|
|
82
|
+
L 835.2,437.12
|
|
83
|
+
L 835.2,529.2
|
|
88
84
|
Z
|
|
89
|
-
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="
|
|
90
|
-
M 523.91013755332,613.44487085504
|
|
91
|
-
L 534.3883403043857,594.0407916864
|
|
92
|
-
L 714.898020783854,594.0407916864
|
|
93
|
-
L 714.898020783854,632.84895002368
|
|
94
|
-
L 534.3883403043857,632.84895002368
|
|
95
|
-
Z
|
|
96
|
-
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.8808158337280005px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" x="541.373808805096" y="613.44487085504" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="34.927342503552px" transform="">XXXXXXX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" d="
|
|
97
|
-
M 911.99172092612,147.74697080768
|
|
98
|
-
L 922.4699236771856,128.34289163903998
|
|
99
|
-
L 1102.979604156654,128.34289163903998
|
|
100
|
-
L 1102.979604156654,167.15104997632
|
|
101
|
-
L 922.4699236771856,167.15104997632
|
|
102
|
-
Z
|
|
103
|
-
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.8808158337280005px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" x="929.455392177896" y="147.74697080768" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="34.927342503552px" transform="">XXXXXXX</text>
|
|
85
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="4px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" x="815.2" y="522" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="36px" transform="rotate(-90 815.2 522)">XXX</text>
|
|
104
86
|
</g>
|
|
105
87
|
</svg>
|