@tscircuit/schematic-trace-solver 0.0.156 → 0.0.157

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.
@@ -0,0 +1,129 @@
1
+ <svg width="2416" height="1200" viewBox="0 0 2416 1200" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on the left and Circuit JSON schematic on the right">
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="-7.9,5.2 -7.2279125,6.9526245499999995" data-type="line" data-label="" points="91.66051660516632,302.63536863468653 161.1012915129154,121.55238929889333" fill="none" stroke="hsl(136, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.9,4.699999999999999 -6.1720875,6.94737545" data-type="line" data-label="" points="401.62361623616243,354.29588523985257 270.1902214022142,122.09473173431763" fill="none" stroke="hsl(136, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.9,5.3 -3.5,4.8" data-type="line" data-label="" points="401.62361623616243,292.30326531365336 546.2730627306273,343.96378191881934" fill="none" stroke="hsl(168, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.9,4.1 -3.5,4.2" data-type="line" data-label="" points="401.62361623616243,416.2885051660518 546.2730627306273,405.95640184501855" fill="none" stroke="hsl(168, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.9,3.3 -4.9,3.4999999999999996" data-type="line" data-label="" points="401.62361623616243,498.9453317343174 401.62361623616243,478.28112509225105" fill="none" stroke="hsl(88, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-7.9,5.2 -7.2279125,6.9526245499999995" data-type="line" data-label="" points="91.66051660516632,302.63536863468653 161.1012915129154,121.55238929889333" fill="none" stroke="hsl(271, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-4.9,5.3 -3.5,4.8" data-type="line" data-label="" points="401.62361623616243,292.30326531365336 546.2730627306273,343.96378191881934" fill="none" stroke="hsl(170, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-7.9,5.2 -8.100000000000001,5.2 -8.100000000000001,6.9526245499999995 -7.2279125,6.9526245499999995" data-type="line" data-label="" points="91.66051660516632,302.63536863468653 70.99630996309975,302.63536863468653 70.99630996309975,121.55238929889333 161.1012915129154,121.55238929889333" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-4.9,5.3 -3.5,5.3 -3.5,4.8" data-type="line" data-label="" points="401.62361623616243,292.30326531365336 546.2730627306273,292.30326531365336 546.2730627306273,343.96378191881934" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-4.9,4.1 -3.5,4.1 -3.5,4.2" data-type="line" data-label="" points="401.62361623616243,416.2885051660518 546.2730627306273,416.2885051660518 546.2730627306273,405.95640184501855" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-4.9,3.3 -4.7,3.3 -4.7,3.4999999999999996 -4.9,3.4999999999999996" data-type="line" data-label="" points="401.62361623616243,498.9453317343174 422.2878228782289,498.9453317343174 422.2878228782289,478.28112509225105 401.62361623616243,478.28112509225105" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-6.4" data-y="4.3" x="91.66051660516632" y="250.97485202952055" width="309.9630996309961" height="289.29889298892965" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-6.7" data-y="6.95" x="161.10129151291534" y="76.99562767527703" width="109.08892988929881" height="89.65586568265678" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="-3.465" data-y="4.5" x="499.778597785978" y="343.96378191881934" width="100.22140221402208" height="61.99261992619921" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="U1" data-x="-7.38" data-y="2.77" x="132.98892988929913" y="544.4065863468635" width="24.797047970479753" height="18.597785977859758" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="U1" data-x="-7.38" data-y="5.8149999999999995" x="126.78966789667925" y="226.17780405904085" width="37.195571955719515" height="25.830258302583047" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="netId: GND: .U1 &gt; .pin1 to .U1 &gt; .pin5
4
+ globalConnNetId: connectivity_net4" data-x="-4.7" data-y="3.0749999999999997" x="411.9557195571957" y="498.94533173431745" width="20.664206642066347" height="46.494464944649394" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .pin2 to .L1 &gt; .pin2
5
+ globalConnNetId: connectivity_net1" data-x="-4.539" data-y="4.699999999999999" x="401.7269372693728" y="343.96378191881945" width="74.39114391143914" height="20.66420664206629" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .pin2 to .L1 &gt; .pin2
6
+ globalConnNetId: connectivity_net1" data-x="-5.811087499999999" data-y="6.94737545" x="270.2935424354246" y="111.76262841328446" width="74.39114391143914" height="20.664206642066347" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="netId: VBAT
7
+ globalConnNetId: connectivity_net0" data-x="-8.100000000000001" data-y="7.162624549999999" x="40.000000000000114" y="78.15755535055382" width="61.99261992619927" height="43.39483394833951" fill="#ef444466" stroke="#ef4444" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .pin6 to .R1 &gt; .pin1
8
+ globalConnNetId: connectivity_net3" data-x="-4.2" data-y="4.324999999999999" x="463.6162361623618" y="369.7940402214025" width="20.66420664206629" height="46.49446494464934" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.009678571428571434"/></g><g><rect data-type="rect" data-label="netId: VBUS
9
+ globalConnNetId: connectivity_net2" data-x="-3.5" data-y="5.51" x="515.2767527675278" y="248.90843136531385" width="61.992619926199154" height="43.39483394833951" fill="#ef444466" stroke="#ef4444" stroke-width="0.009678571428571434"/></g><g><circle data-type="point" data-label="schematic_port_0
10
+ x+" data-x="-4.9" data-y="3.3" cx="401.62361623616243" cy="498.9453317343174" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_1
11
+ x+" data-x="-4.9" data-y="4.699999999999999" cx="401.62361623616243" cy="354.29588523985257" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_2
12
+ x-" data-x="-7.9" data-y="5.2" cx="91.66051660516632" cy="302.63536863468653" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_3
13
+ x-" data-x="-7.9" data-y="4" cx="91.66051660516632" cy="426.62060848708495" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_4
14
+ x+" data-x="-4.9" data-y="3.4999999999999996" cx="401.62361623616243" cy="478.28112509225105" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_5
15
+ x+" data-x="-4.9" data-y="4.1" cx="401.62361623616243" cy="416.2885051660518" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_6
16
+ x-" data-x="-7.9" data-y="4.6" cx="91.66051660516632" cy="364.62798856088574" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_7
17
+ x-" data-x="-7.9" data-y="3.3999999999999995" cx="91.66051660516632" cy="488.6132284132842" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_8
18
+ x+" data-x="-4.9" data-y="5.3" cx="401.62361623616243" cy="292.30326531365336" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_9
19
+ x-" data-x="-7.2279125" data-y="6.9526245499999995" cx="161.1012915129154" cy="121.55238929889333" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_10
20
+ x+" data-x="-6.1720875" data-y="6.94737545" cx="270.1902214022142" cy="122.09473173431763" r="3" fill="hsl(184, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_11
21
+ y-" data-x="-3.5" data-y="4.2" cx="546.2730627306273" cy="405.95640184501855" r="3" fill="hsl(184, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="schematic_port_12
22
+ y+" data-x="-3.5" data-y="4.8" cx="546.2730627306273" cy="343.96378191881934" r="3" fill="hsl(184, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anchorPoint
23
+ orientation: y-" data-x="-4.7" data-y="3.3" cx="422.2878228782289" cy="498.9453317343174" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
24
+ orientation: x+" data-x="-4.9" data-y="4.699999999999999" cx="401.62361623616243" cy="354.29588523985257" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
25
+ orientation: x+" data-x="-6.1720875" data-y="6.94737545" cx="270.1902214022142" cy="122.09473173431763" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
26
+ orientation: y+" data-x="-8.100000000000001" data-y="6.9526245499999995" cx="70.99630996309975" cy="121.55238929889333" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
27
+ orientation: y+" data-x="-4.2" data-y="4.1" cx="473.94833948339493" cy="416.2885051660518" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
28
+ orientation: y+" data-x="-3.5" data-y="5.3" cx="546.2730627306273" cy="292.30326531365336" 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[
29
+ document.currentScript.parentElement.addEventListener('mousemove', (e) => {
30
+ const svg = e.currentTarget;
31
+ const rect = svg.getBoundingClientRect();
32
+ const x = e.clientX - rect.left;
33
+ const y = e.clientY - rect.top;
34
+ const crosshair = svg.getElementById('crosshair');
35
+ const h = svg.getElementById('crosshair-h');
36
+ const v = svg.getElementById('crosshair-v');
37
+ const coords = svg.getElementById('coordinates');
38
+
39
+ crosshair.style.display = 'block';
40
+ h.setAttribute('x1', '0');
41
+ h.setAttribute('x2', '640');
42
+ h.setAttribute('y1', y);
43
+ h.setAttribute('y2', y);
44
+ v.setAttribute('x1', x);
45
+ v.setAttribute('x2', x);
46
+ v.setAttribute('y1', '0');
47
+ v.setAttribute('y2', '640');
48
+
49
+ // Calculate real coordinates using inverse transformation
50
+ const matrix = {"a":103.32103321033205,"c":0,"e":907.8966789667895,"b":0,"d":-103.32103321033205,"f":839.9047413284131};
51
+ // Manually invert and apply the affine transform
52
+ // Since we only use translate and scale, we can directly compute:
53
+ // x' = (x - tx) / sx
54
+ // y' = (y - ty) / sy
55
+ const sx = matrix.a;
56
+ const sy = matrix.d;
57
+ const tx = matrix.e;
58
+ const ty = matrix.f;
59
+ const realPoint = {
60
+ x: (x - tx) / sx,
61
+ y: (y - ty) / sy // Flip y back since we used negative scale
62
+ }
63
+
64
+ coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
65
+ coords.setAttribute('x', (x + 5).toString());
66
+ coords.setAttribute('y', (y - 5).toString());
67
+ });
68
+ document.currentScript.parentElement.addEventListener('mouseleave', () => {
69
+ document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
70
+ });
71
+ ]]></script>
72
+ </g>
73
+ <g transform="translate(1216, 200)">
74
+ <style>
75
+ .boundary { fill: rgb(245, 241, 237); }
76
+ .schematic-boundary { fill: none; stroke: #fff; }
77
+ .component { fill: none; stroke: rgb(132, 0, 0); }
78
+ .chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
79
+ .component-pin { fill: none; stroke: rgb(132, 0, 0); }
80
+ .text { font-family: sans-serif; fill: rgb(0, 150, 0); }
81
+ .pin-number { fill: rgb(169, 0, 0); }
82
+ .port-label { fill: rgb(0, 100, 100); }
83
+ .component-name { fill: rgb(0, 100, 100); }
84
+
85
+ </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 204.82972759004997 376.42796000789997 L 176.7785991137498 376.42796000789997 L 176.7785991137498 130.61247789406275 L 299.0937916391264 130.61247789406275" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="22.44090278104px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 204.82972759004997 376.42796000789997 L 176.7785991137498 376.42796000789997 L 176.7785991137498 130.61247789406275 L 299.0937916391264 130.61247789406275" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.80511284763px" 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 625.59665473455 362.4023957697501 L 821.9545540686502 362.4023957697501 L 821.9545540686502 432.53021696050007" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="22.44090278104px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 625.59665473455 362.4023957697501 L 821.9545540686502 362.4023957697501 L 821.9545540686502 432.53021696050007" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.80511284763px" 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_2__stack1"><path d="M 625.59665473455 530.7091666275501 L 821.9545540686502 530.7091666275501 L 821.9545540686502 516.6836023894" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="22.44090278104px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 625.59665473455 530.7091666275501 L 821.9545540686502 530.7091666275501 L 821.9545540686502 516.6836023894" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.80511284763px" 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_3__stack1"><path d="M 625.59665473455 642.91368053275 L 653.6477832108501 642.91368053275 L 653.6477832108501 614.8625520564501 L 625.59665473455 614.8625520564501" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="22.44090278104px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 625.59665473455 642.91368053275 L 653.6477832108501 642.91368053275 L 653.6477832108501 614.8625520564501 L 625.59665473455 614.8625520564501" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.80511284763px" 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="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_2__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_3__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="260.93198454265007" y="306.3001388171501" width="308.5624132393" height="392.7157986681998" stroke-width="2.80511284763px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="260.93198454265007" y="306.3001388171501" width="308.5624132393" height="392.7157986681998" fill="transparent"/><text class="sch-text" x="415.21319116230006" y="502.65803815125" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.246015628669998px" transform="rotate(0, 415.21319116230006, 502.65803815125)">schematic_component_0</text><line class="component-pin sch-component-pin sch-port-line" x1="569.49439778195" y1="642.91368053275" x2="625.59665473455" y2="642.91368053275" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="622.7915418869201" y="640.1085676851201" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="597.54552625825" y="640.1085676851201" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="555.4688335438001" y="642.91368053275" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_0</text><line class="component-pin sch-component-pin sch-port-line" x1="569.49439778195" y1="446.55578119865015" x2="622.7915418869201" y2="446.55578119865015" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="625.59665473455" cy="446.55578119865015" r="2.80511284763" stroke-width="2.80511284763px"/><rect x="622.7915418869201" y="443.7506683510201" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="597.54552625825" y="443.7506683510202" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="555.4688335438001" y="446.55578119865015" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_1</text><line class="component-pin sch-component-pin sch-port-line" x1="260.93198454265007" y1="376.42796000789997" x2="204.82972759004997" y2="376.42796000789997" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><rect x="202.02461474241997" y="373.62284716026994" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="232.88085606635013" y="373.6228471602701" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="274.95754878080015" y="376.42796000789997" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_2</text><line class="component-pin sch-component-pin sch-port-line" x1="260.93198454265007" y1="544.7347308657" x2="207.63484043767994" y2="544.7347308657" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="204.82972759004997" cy="544.7347308657" r="2.80511284763" stroke-width="2.80511284763px"/><rect x="202.02461474241997" y="541.9296180180701" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="232.88085606635013" y="541.9296180180701" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="274.95754878080015" y="544.7347308657" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_3</text><line class="component-pin sch-component-pin sch-port-line" x1="569.49439778195" y1="614.8625520564501" x2="625.59665473455" y2="614.8625520564501" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><rect x="622.7915418869201" y="612.0574392088201" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="597.54552625825" y="612.0574392088201" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="555.4688335438001" y="614.8625520564501" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_4</text><line class="component-pin sch-component-pin sch-port-line" x1="569.49439778195" y1="530.7091666275501" x2="625.59665473455" y2="530.7091666275501" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_0_5__stack1"><rect x="622.7915418869201" y="527.9040537799201" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="597.54552625825" y="527.9040537799201" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="555.4688335438001" y="530.7091666275501" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_5</text><line class="component-pin sch-component-pin sch-port-line" x1="260.93198454265007" y1="460.5813454368001" x2="207.63484043767994" y2="460.5813454368001" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_0_6__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="204.82972759004997" cy="460.5813454368001" r="2.80511284763" stroke-width="2.80511284763px"/><rect x="202.02461474241997" y="457.7762325891701" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="232.88085606635013" y="457.77623258917015" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="274.95754878080015" y="460.5813454368001" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_6</text><line class="component-pin sch-component-pin sch-port-line" x1="260.93198454265007" y1="628.8881162946002" x2="207.63484043767994" y2="628.8881162946002" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_0_7__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="204.82972759004997" cy="628.8881162946002" r="2.80511284763" stroke-width="2.80511284763px"/><rect x="202.02461474241997" y="626.0830034469702" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="232.88085606635013" y="626.0830034469701" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="274.95754878080015" y="628.8881162946002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_7</text><line class="component-pin sch-component-pin sch-port-line" x1="569.49439778195" y1="362.4023957697501" x2="625.59665473455" y2="362.4023957697501" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_0_8__stack1"><rect x="622.7915418869201" y="359.5972829221201" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="597.54552625825" y="359.59728292212014" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="555.4688335438001" y="362.4023957697501" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_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="355.1960485917265" y="70.12782119073881" width="35.88089971224724" height="121.70552929907251" stroke-width="2.80511284763px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="355.1960485917265" y="70.12782119073881" width="35.88089971224724" height="121.70552929907251" fill="transparent"/><text class="sch-text" x="373.13649844785004" y="130.980585840275" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.246015628669998px" transform="rotate(0, 373.13649844785004, 130.980585840275)">schematic_component_1</text><line class="component-pin sch-component-pin sch-port-line" x1="355.1960485917265" y1="130.61247789406275" x2="299.0937916391264" y2="130.61247789406275" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="296.28867879149635" y="127.80736504643275" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="327.14492011542643" y="127.80736504643278" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="369.22161282987645" y="130.61247789406275" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_9</text><line class="component-pin sch-component-pin sch-port-line" x1="391.0769483039737" y1="131.3486937864874" x2="444.37409240894374" y2="131.3486937864874" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="447.1792052565737" cy="131.3486937864874" r="2.80511284763" stroke-width="2.80511284763px"/><rect x="444.3740924089437" y="128.5435809388574" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="419.12807678027366" y="128.54358093885753" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform=""></text><text class="pin-number sch-pin-label" x="377.05138406582375" y="131.3486937864874" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="21.038346357225px" transform="">schematic_port_10</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_2__stack1"><rect class="component chip sch-component-body" x="758.839514996975" y="467.59412755587505" width="136.04797311005507" height="14.025564238149968" stroke-width="2.80511284763px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="758.839514996975" y="467.59412755587505" width="136.04797311005507" height="14.025564238149968" fill="transparent"/><text class="sch-text" x="826.8635015520026" y="474.6069096749501" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.246015628669998px" transform="rotate(0, 826.8635015520026, 474.6069096749501)">schematic_component_2</text><line class="component-pin sch-component-pin sch-port-line" x1="821.9545540686502" y1="481.619691794025" x2="821.9545540686502" y2="516.6836023894" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_2_0__stack1"><rect x="819.1494412210202" y="513.87848954177" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="819.1494412210201" y="499.15164709171256" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform="rotate(-90 819.1494412210201 499.15164709171256)"></text><text class="pin-number sch-pin-label" x="821.9545540686502" y="467.59412755587505" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="21.038346357225px" transform="rotate(-90 821.9545540686502 467.59412755587505)">schematic_port_11</text><line class="component-pin sch-component-pin sch-port-line" x1="821.9545540686502" y1="467.59412755587505" x2="821.9545540686502" y2="432.53021696050007" stroke-width="2.80511284763px"/><g class="sch-port" data-schematic-port-id="source_port_2_1__stack1"><rect x="819.1494412210202" y="429.72510411287004" width="5.61022569526" height="5.61022569526" opacity="0"/></g><text class="pin-number sch-pin-number" x="819.1494412210201" y="450.0621722581876" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="21.038346357225px" transform="rotate(-90 819.1494412210201 450.0621722581876)"></text><text class="pin-number sch-pin-label" x="821.9545540686502" y="481.619691794025" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="21.038346357225px" transform="rotate(-90 821.9545540686502 481.619691794025)">schematic_port_12</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="625.59665473455" cy="642.91368053275" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="625.59665473455" cy="446.55578119865015" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="204.82972759004997" cy="376.42796000789997" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="204.82972759004997" cy="544.7347308657" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="625.59665473455" cy="614.8625520564501" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_5__stack1"><circle cx="625.59665473455" cy="530.7091666275501" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_6__stack1"><circle cx="204.82972759004997" cy="460.5813454368001" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_7__stack1"><circle cx="204.82972759004997" cy="628.8881162946002" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_8__stack1"><circle cx="625.59665473455" cy="362.4023957697501" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="299.0937916391264" cy="130.61247789406275" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="447.1792052565737" cy="131.3486937864874" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="821.9545540686502" cy="516.6836023894" r="5.61022569526" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="821.9545540686502" cy="432.53021696050007" r="5.61022569526" 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="
86
+ M 653.6477832108501,642.91368053275
87
+ L 667.6733474490001,650.487485221351
88
+ L 667.6733474490001,698.5858201820467
89
+ L 639.6222189727001,698.5858201820467
90
+ L 639.6222189727001,650.487485221351
91
+ Z
92
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.80511284763px"/><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="653.6477832108501" y="655.536688347085" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="25.246015628669998px" transform="rotate(90 653.6477832108501 655.536688347085)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" d="
93
+ M 625.59665473455,446.55578119865015
94
+ L 633.170459423151,432.5302169605001
95
+ L 730.6948827590874,432.5302169605001
96
+ L 730.6948827590874,460.5813454368002
97
+ L 633.170459423151,460.5813454368002
98
+ Z
99
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.80511284763px"/><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="638.219662548885" y="446.55578119865015" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="25.246015628669998px" transform="">XXXXX</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="
100
+ M 447.1792052565737,131.3486937864874
101
+ L 454.7530099451747,117.32312954833739
102
+ L 552.277433281111,117.32312954833739
103
+ L 552.277433281111,145.37425802463738
104
+ L 454.7530099451747,145.37425802463738
105
+ Z
106
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.80511284763px"/><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="459.8022130709087" y="131.3486937864874" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="25.246015628669998px" transform="">XXXXX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_3__stack1" d="
107
+ M 176.7785991137498,130.61247789406275
108
+ L 162.7530348755998,123.03867320546175
109
+ L 162.7530348755998,74.94033824476602
110
+ L 190.8041633518998,74.94033824476602
111
+ L 190.8041633518998,123.03867320546175
112
+ Z
113
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.80511284763px"/><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="176.7785991137498" y="117.98947007972775" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="25.246015628669998px" transform="rotate(-90 176.7785991137498 117.98947007972775)">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="
114
+ M 723.7756044016,530.7091666275501
115
+ L 709.7500401634501,523.1353619389491
116
+ L 709.7500401634501,475.0370269782534
117
+ L 737.80116863975,475.0370269782534
118
+ L 737.80116863975,523.1353619389491
119
+ Z
120
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.80511284763px"/><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="723.7756044016" y="518.0861588132151" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="25.246015628669998px" transform="rotate(-90 723.7756044016 518.0861588132151)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_5__stack1" d="
121
+ M 821.9545540686502,362.4023957697501
122
+ L 807.9289898305002,354.8285910811491
123
+ L 807.9289898305002,306.7302561204534
124
+ L 835.9801183068001,306.7302561204534
125
+ L 835.9801183068001,354.8285910811491
126
+ Z
127
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.80511284763px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_5__stack1" x="821.9545540686502" y="349.77938795541513" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="25.246015628669998px" transform="rotate(-90 821.9545540686502 349.77938795541513)">XX</text><text class="sch-text" x="277.7626616284301" y="717.249170994945" fill="#7e22ce" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.24601562866996px" transform="rotate(0, 277.7626616284301, 717.249170994945)">U1</text><text class="sch-text" x="277.7626616284301" y="290.17073994327757" fill="#7e22ce" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.246015628669998px" transform="rotate(0, 277.7626616284301, 290.17073994327757)">U1</text><rect class="schematic-box sch-box" x="260.93198454265007" y="704.6261631806101" width="33.661354171560106" height="25.246015628669966" stroke-width="2.80511284763px" stroke="rgb(132, 0, 0)" fill="transparent" stroke-dasharray="22.44090278104 11.22045139052"/><rect class="schematic-box sch-box" x="252.51664599976016" y="272.63878464559025" width="50.49203125733993" height="35.063910595374864" stroke-width="2.80511284763px" stroke="rgb(132, 0, 0)" fill="transparent" stroke-dasharray="22.44090278104 11.22045139052"/>
128
+ </g>
129
+ </svg>