@tscircuit/schematic-trace-solver 0.0.107 → 0.0.109

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.
Files changed (33) hide show
  1. package/dist/index.d.ts +31 -3
  2. package/dist/index.js +784 -247
  3. package/lib/solvers/MspConnectionPairSolver/MspConnectionPairSolver.ts +3 -1
  4. package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceSingleLineSolver2/SchematicTraceSingleLineSolver2.ts +58 -27
  5. package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceSingleLineSolver2/generateEndpointCollisionDetours.ts +1 -10
  6. package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceSingleLineSolver2/generateInternalSegmentCollisionDetours.ts +94 -0
  7. package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceSingleLineSolver2/pathOps.ts +10 -0
  8. package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceSingleLineSolver2/rect.ts +5 -1
  9. package/lib/solvers/SchematicTracePipelineSolver/SchematicTracePipelineSolver.ts +18 -3
  10. package/lib/solvers/UnroutedTraceRecoverySolver/UnroutedTraceRecoverySolver.ts +592 -0
  11. package/package.json +1 -1
  12. package/site/bug-reports/bug-report-20260724T175257Z.page.tsx +4 -0
  13. package/tests/bug-reports/bug-report-20260707T092615Z/__snapshots__/bug-report-20260707T092615Z.snap.svg +5 -9
  14. package/tests/bug-reports/bug-report-20260708T095725Z/__snapshots__/bug-report-20260708T095725Z.snap.svg +5 -5
  15. package/tests/bug-reports/bug-report-20260708T095725Z/bug-report-20260708T095725Z.test.ts +15 -0
  16. package/tests/bug-reports/bug-report-20260724T175257Z/__snapshots__/bug-report-20260724T175257Z.snap.svg +58 -0
  17. package/tests/bug-reports/bug-report-20260724T175257Z/bug-report-20260724T175257Z.json +138 -0
  18. package/tests/bug-reports/bug-report-20260724T175257Z/bug-report-20260724T175257Z.test.ts +12 -0
  19. package/tests/examples/__snapshots__/example04.snap.svg +7 -9
  20. package/tests/examples/__snapshots__/example08.snap.svg +16 -20
  21. package/tests/examples/__snapshots__/example13.snap.svg +2 -4
  22. package/tests/examples/__snapshots__/example32.snap.svg +64 -66
  23. package/tests/examples/__snapshots__/example46.snap.svg +1 -1
  24. package/tests/repros/__snapshots__/repro-netlabel-collision-687.snap.svg +81 -0
  25. package/tests/repros/__snapshots__/repro-netlabel-overlap-trace.snap.svg +16 -18
  26. package/tests/repros/__snapshots__/repro-tps61222-trace-intersection.snap.svg +63 -220
  27. package/tests/repros/assets/repro-netlabel-collision-687.input.json +212 -0
  28. package/tests/repros/repro-netlabel-collision-687.test.ts +59 -0
  29. package/tests/repros/repro-tps61222-trace-intersection.test.ts +27 -0
  30. package/tests/solvers/SchematicTraceSingleLineSolver2/generate-internal-segment-collision-detours.test.ts +49 -0
  31. package/tests/solvers/UnroutedTraceRecoverySolver/paired-junction-recovery.test.ts +49 -0
  32. package/tests/solvers/UnroutedTraceRecoverySolver/skip-ground.test.ts +30 -0
  33. package/tests/solvers/UnroutedTraceRecoverySolver/skip-long-connection.test.ts +24 -0
@@ -1,68 +1,66 @@
1
- <svg width="640" height="640" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="white"/><g><polyline data-points="-4.475,2.9699999999999998 -2.38,3" data-type="line" data-label="" points="64.78021978021977,151.31868131868134 179.89010989010987,149.67032967032966" fill="none" stroke="hsl(192, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="0.2999999999999998,2.6 3.45,1.5" data-type="line" data-label="" points="327.14285714285717,171.64835164835165 500.2197802197803,232.08791208791212" fill="none" stroke="hsl(120, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="0.2999999999999998,2.4 0.2999999999999998,2.2" data-type="line" data-label="" points="327.14285714285717,182.63736263736266 327.14285714285717,193.6263736263736" fill="none" stroke="hsl(192, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.05,-1.5 3.935,-1.5" data-type="line" data-label="" points="478.24175824175825,396.92307692307696 526.868131868132,396.92307692307696" fill="none" stroke="hsl(344, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.525,2.9699999999999998 -2.45,1.5" data-type="line" data-label="" points="116.97802197802196,151.31868131868134 176.04395604395603,232.08791208791212" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.7,2.2 4.55,1.5" data-type="line" data-label="" points="459.0109890109891,193.6263736263736 560.6593406593407,232.08791208791212" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.62,3 -3.55,1.5" data-type="line" data-label="" points="221.64835164835165,149.67032967032966 115.60439560439559,232.08791208791212" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.2999999999999998,2.8 2.7,2.8" data-type="line" data-label="" points="327.14285714285717,160.65934065934067 459.0109890109891,160.65934065934067" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.2999999999999998,2.4 0.09999999999999981,2.4 0.09999999999999981,2.2 0.2999999999999998,2.2" data-type="line" data-label="" points="327.14285714285717,182.63736263736266 316.15384615384613,182.63736263736266 316.15384615384613,193.6263736263736 327.14285714285717,193.6263736263736" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.55,-1.5 -3.4499999999999997,-1.5" data-type="line" data-label="" points="170.54945054945054,396.92307692307696 121.09890109890108,396.92307692307696" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.05,-1.5 3.935,-1.5" data-type="line" data-label="" points="478.24175824175825,396.92307692307696 526.868131868132,396.92307692307696" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.4500000000000002,-1.5 -1.25,-1.5 -1.25,-2.25 -3.75,-2.25 -3.75,-3 -3.55,-3" data-type="line" data-label="" points="230.98901098901098,396.92307692307696 241.97802197802196,396.92307692307696 241.97802197802196,438.1318681318682 104.61538461538458,438.1318681318682 104.61538461538458,479.3406593406594 115.60439560439559,479.3406593406594" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.7,2.2 4.75,2.2 4.75,1.5 4.55,1.5" data-type="line" data-label="" points="459.0109890109891,193.6263736263736 571.6483516483518,193.6263736263736 571.6483516483518,232.08791208791212 560.6593406593407,232.08791208791212" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="0.2999999999999998,2.8 0.09999999999999981,2.8 0.09999999999999981,3.2 2.9000000000000004,3.2 2.9000000000000004,2.8 2.7,2.8" data-type="line" data-label="" points="327.14285714285717,160.65934065934067 316.15384615384613,160.65934065934067 316.15384615384613,138.68131868131866 470.00000000000006,138.68131868131866 470.00000000000006,160.65934065934067 459.0109890109891,160.65934065934067" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.525,2.9699999999999998 -3.525,2.8 -2.415,2.8 -2.415,1.5 -2.45,1.5" data-type="line" data-label="" points="116.97802197802196,151.31868131868134 116.97802197802196,160.65934065934067 177.96703296703296,160.65934065934067 177.96703296703296,232.08791208791212 176.04395604395603,232.08791208791212" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.45,-3 -2.349,-3 -2.349,-3.4509999999999996" data-type="line" data-label="" points="176.04395604395603,479.3406593406594 181.59340659340657,479.3406593406594 181.59340659340657,504.1208791208792" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="5.0649999999999995,-1.5 5.1659999999999995,-1.5 5.1659999999999995,-1.851" data-type="line" data-label="" points="588.9560439560439,396.92307692307696 594.5054945054945,396.92307692307696 594.5054945054945,416.20879120879124" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.62,3 -1.5190000000000001,3 -1.5190000000000001,3.251" data-type="line" data-label="" points="221.64835164835165,149.67032967032966 227.1978021978022,149.67032967032966 227.1978021978022,135.87912087912088" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.55,1.5 -3.651,1.5 -3.651,1.9509999999999998" data-type="line" data-label="" points="115.60439560439559,232.08791208791212 110.05494505494505,232.08791208791212 110.05494505494505,207.30769230769232" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-4.550000000000001,-1.5 -4.651000000000001,-1.5 -4.651000000000001,-1.2990000000000002" data-type="line" data-label="" points="60.659340659340586,396.92307692307696 55.109890109890046,396.92307692307696 55.109890109890046,385.87912087912093" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-4" data-y="3" x="64.78021978021975" y="141.7032967032967" width="52.19780219780219" height="15.934065934065927" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-2" data-y="3" x="179.8901098901099" y="135.93406593406593" width="41.75824175824178" height="27.472527472527474" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="-3" data-y="1.5" x="115.60439560439558" y="209.01098901098902" width="60.43956043956044" height="46.15384615384616" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="1.5" data-y="2.5" x="327.1428571428571" y="149.67032967032964" width="131.8681318681319" height="54.94505494505498" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="4" data-y="1.5" x="500.2197802197803" y="209.01098901098902" width="60.43956043956041" height="46.15384615384616" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_5" data-x="-4" data-y="-1.5" x="60.6593406593406" y="386.2387170329671" width="60.439560439560495" height="21.36871978021975" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_6" data-x="-2" data-y="-1.5" x="170.54945054945057" y="386.2387170329671" width="60.43956043956044" height="21.36871978021975" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_7" data-x="-3" data-y="-3" x="115.60439560439558" y="456.2637362637363" width="60.43956043956044" height="46.15384615384619" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_8" data-x="2.5" data-y="-1.5" x="417.80219780219784" y="386.2387170329671" width="60.43956043956041" height="21.36871978021975" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_9" data-x="4.5" data-y="-1.5" x="526.868131868132" y="379.06593406593413" width="62.087912087911945" height="35.71428571428572" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .B1 &gt; .pin1 to .SW1 &gt; .pin1
2
- globalConnNetId: connectivity_net0" data-x="-4.701" data-y="2.9699999999999998" x="40.00000000000003" y="145.82417582417582" width="24.725274725274687" height="10.989010989011007" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .B1 &gt; .pin1 to .SW1 &gt; .pin1
3
- globalConnNetId: connectivity_net0" data-x="-2.606" data-y="3" x="155.1098901098901" y="144.17582417582418" width="24.725274725274744" height="10.989010989011007" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: GND
4
- globalConnNetId: connectivity_net6" data-x="-3.525" data-y="2.65" x="111.48351648351647" y="160.65934065934067" width="10.989010989010978" height="16.483516483516468" fill="#00000066" stroke="#000000" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: GND
5
- globalConnNetId: connectivity_net6" data-x="4.75" data-y="1.35" x="566.1538461538463" y="232.08791208791212" width="10.989010989010922" height="16.483516483516468" fill="#00000066" stroke="#000000" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: GND
6
- globalConnNetId: connectivity_net6" data-x="-2.349" data-y="-3.6009999999999995" x="176.09890109890108" y="504.1208791208792" width="10.989010989010978" height="16.483516483516496" fill="#00000066" stroke="#000000" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: GND
7
- globalConnNetId: connectivity_net6" data-x="5.1659999999999995" data-y="-2.001" x="589.0109890109891" y="416.20879120879124" width="10.989010989010922" height="16.483516483516496" fill="#00000066" stroke="#000000" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: VCC
8
- globalConnNetId: connectivity_net7" data-x="-1.5190000000000001" data-y="3.401" x="221.7032967032967" y="119.39560439560442" width="10.989010989010978" height="16.483516483516468" fill="#ef444466" stroke="#ef4444" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: VCC
9
- globalConnNetId: connectivity_net7" data-x="-3.651" data-y="2.101" x="104.56043956043955" y="190.82417582417582" width="10.989010989011007" height="16.483516483516496" fill="#ef444466" stroke="#ef4444" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: VCC
10
- globalConnNetId: connectivity_net7" data-x="0.09999999999999981" data-y="3.35" x="310.6593406593406" y="122.1978021978022" width="10.989010989010978" height="16.483516483516468" fill="#ef444466" stroke="#ef4444" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: VCC
11
- globalConnNetId: connectivity_net7" data-x="-4.651000000000001" data-y="-1.1490000000000002" x="49.615384615384585" y="369.39560439560444" width="10.989010989010922" height="16.483516483516496" fill="#ef444466" stroke="#ef4444" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .THRES to .C1 &gt; .pin1
12
- globalConnNetId: connectivity_net2" data-x="-0.1250000000000002" data-y="2.4" x="291.42857142857144" y="177.14285714285717" width="24.725274725274687" height="10.989010989011007" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .R2 &gt; .pin2 to .U1 &gt; .THRES
13
- globalConnNetId: connectivity_net2" data-x="-1.25" data-y="-1.275" x="236.48351648351647" y="372.1978021978022" width="10.989010989010978" height="24.725274725274744" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .OUT to .R3 &gt; .pin1
14
- globalConnNetId: connectivity_net4" data-x="2.926" data-y="2.6" x="459.0659340659341" y="166.15384615384616" width="24.725274725274744" height="10.989010989010978" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .OUT to .R3 &gt; .pin1
15
- globalConnNetId: connectivity_net4" data-x="1.724" data-y="-1.5" x="393.02197802197804" y="391.42857142857144" width="24.725274725274744" height="10.989010989011035" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .CTRL to .C2 &gt; .pin1
16
- globalConnNetId: connectivity_net1" data-x="0.07399999999999982" data-y="2.6" x="302.3626373626374" y="166.15384615384616" width="24.725274725274744" height="10.989010989010978" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .CTRL to .C2 &gt; .pin1
17
- globalConnNetId: connectivity_net1" data-x="3.224" data-y="1.5" x="475.43956043956047" y="226.5934065934066" width="24.725274725274744" height="10.989010989011007" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .DISCH to .R2 &gt; .pin1
18
- globalConnNetId: connectivity_net3" data-x="-3" data-y="-1.275" x="140.3296703296703" y="372.1978021978022" width="10.989010989011007" height="24.725274725274744" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .DISCH to .R2 &gt; .pin1
19
- globalConnNetId: connectivity_net3" data-x="2.926" data-y="2.4" x="459.0659340659341" y="177.14285714285717" width="24.725274725274744" height="10.989010989011007" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><rect data-type="rect" data-label="netId: .R3 &gt; .pin2 to .D1 &gt; .pin1
20
- globalConnNetId: connectivity_net5" data-x="3.4924999999999997" data-y="-1.275" x="497.06043956043953" y="372.1978021978022" width="10.989010989011035" height="24.725274725274744" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018199999999999997"/></g><g><circle data-type="point" data-label="B1.1
21
- x-" data-x="-4.475" data-y="2.9699999999999998" cx="64.78021978021977" cy="151.31868131868134" r="3" fill="hsl(210, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="B1.2
22
- x+" data-x="-3.525" data-y="2.9699999999999998" cx="116.97802197802196" cy="151.31868131868134" r="3" fill="hsl(211, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SW1.1
23
- x-" data-x="-2.38" data-y="3" cx="179.89010989010987" cy="149.67032967032966" r="3" fill="hsl(104, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SW1.2
24
- x+" data-x="-1.62" data-y="3" cx="221.64835164835165" cy="149.67032967032966" r="3" fill="hsl(105, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C3.1
25
- x-" data-x="-3.55" data-y="1.5" cx="115.60439560439559" cy="232.08791208791212" r="3" fill="hsl(243, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C3.2
26
- x+" data-x="-2.45" data-y="1.5" cx="176.04395604395603" cy="232.08791208791212" r="3" fill="hsl(244, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.1
27
- x+" data-x="2.7" data-y="2.2" cx="459.0109890109891" cy="193.6263736263736" r="3" fill="hsl(319, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.2
28
- x-" data-x="0.2999999999999998" data-y="2.2" cx="327.14285714285717" cy="193.6263736263736" r="3" fill="hsl(320, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.3
29
- x+" data-x="2.7" data-y="2.6" cx="459.0109890109891" cy="171.64835164835165" r="3" fill="hsl(321, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.4
30
- x-" data-x="0.2999999999999998" data-y="2.8" cx="327.14285714285717" cy="160.65934065934067" r="3" fill="hsl(322, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.5
31
- x-" data-x="0.2999999999999998" data-y="2.6" cx="327.14285714285717" cy="171.64835164835165" r="3" fill="hsl(323, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.6
32
- x-" data-x="0.2999999999999998" data-y="2.4" cx="327.14285714285717" cy="182.63736263736266" r="3" fill="hsl(324, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.7
33
- x+" data-x="2.7" data-y="2.4" cx="459.0109890109891" cy="182.63736263736266" r="3" fill="hsl(325, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.8
34
- x+" data-x="2.7" data-y="2.8" cx="459.0109890109891" cy="160.65934065934067" r="3" fill="hsl(326, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C2.1
35
- x-" data-x="3.45" data-y="1.5" cx="500.2197802197803" cy="232.08791208791212" r="3" fill="hsl(2, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C2.2
36
- x+" data-x="4.55" data-y="1.5" cx="560.6593406593407" cy="232.08791208791212" r="3" fill="hsl(3, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R1.1
37
- x-" data-x="-4.550000000000001" data-y="-1.5" cx="60.659340659340586" cy="396.92307692307696" r="3" fill="hsl(226, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R1.2
38
- x+" data-x="-3.4499999999999997" data-y="-1.5" cx="121.09890109890108" cy="396.92307692307696" r="3" fill="hsl(227, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R2.1
39
- x-" data-x="-2.55" data-y="-1.5" cx="170.54945054945054" cy="396.92307692307696" r="3" fill="hsl(107, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R2.2
40
- x+" data-x="-1.45" data-y="-1.5" cx="230.98901098901098" cy="396.92307692307696" r="3" fill="hsl(108, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C1.1
41
- x-" data-x="-3.55" data-y="-3" cx="115.60439560439559" cy="479.3406593406594" r="3" fill="hsl(121, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C1.2
42
- x+" data-x="-2.45" data-y="-3" cx="176.04395604395603" cy="479.3406593406594" r="3" fill="hsl(122, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R3.1
43
- x-" data-x="1.95" data-y="-1.5" cx="417.80219780219784" cy="396.92307692307696" r="3" fill="hsl(348, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R3.2
44
- x+" data-x="3.05" data-y="-1.5" cx="478.24175824175825" cy="396.92307692307696" r="3" fill="hsl(349, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="D1.1
45
- x-" data-x="3.935" data-y="-1.5" cx="526.868131868132" cy="396.92307692307696" r="3" fill="hsl(32, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="D1.2
46
- x+" data-x="5.0649999999999995" data-y="-1.5" cx="588.9560439560439" cy="396.92307692307696" r="3" fill="hsl(33, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anchorPoint
47
- orientation: x-" data-x="-4.475" data-y="2.9699999999999998" cx="64.78021978021977" cy="151.31868131868134" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
48
- orientation: x-" data-x="-2.38" data-y="3" cx="179.89010989010987" cy="149.67032967032966" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
49
- orientation: y-" data-x="-3.525" data-y="2.8" cx="116.97802197802196" cy="160.65934065934067" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
50
- orientation: y-" data-x="4.75" data-y="1.5" cx="571.6483516483518" cy="232.08791208791212" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
51
- orientation: y-" data-x="-2.349" data-y="-3.4509999999999996" cx="181.59340659340657" cy="504.1208791208792" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
52
- orientation: y-" data-x="5.1659999999999995" data-y="-1.851" cx="594.5054945054945" cy="416.20879120879124" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
53
- orientation: y+" data-x="-1.5190000000000001" data-y="3.251" cx="227.1978021978022" cy="135.87912087912088" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
54
- orientation: y+" data-x="-3.651" data-y="1.9509999999999998" cx="110.05494505494505" cy="207.30769230769232" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
55
- orientation: y+" data-x="0.09999999999999981" data-y="3.2" cx="316.15384615384613" cy="138.68131868131866" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
56
- orientation: y+" data-x="-4.651000000000001" data-y="-1.2990000000000002" cx="55.109890109890046" cy="385.87912087912093" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
57
- orientation: x-" data-x="0.09999999999999981" data-y="2.4" cx="316.15384615384613" cy="182.63736263736266" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
58
- orientation: y+" data-x="-1.25" data-y="-1.5" cx="241.97802197802196" cy="396.92307692307696" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
59
- orientation: x+" data-x="2.7" data-y="2.6" cx="459.0109890109891" cy="171.64835164835165" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
60
- orientation: x-" data-x="1.95" data-y="-1.5" cx="417.80219780219784" cy="396.92307692307696" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
61
- orientation: x-" data-x="0.2999999999999998" data-y="2.6" cx="327.14285714285717" cy="171.64835164835165" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
62
- orientation: x-" data-x="3.45" data-y="1.5" cx="500.2197802197803" cy="232.08791208791212" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
63
- orientation: y+" data-x="-3" data-y="-1.5" cx="145.8241758241758" cy="396.92307692307696" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
64
- orientation: x+" data-x="2.7" data-y="2.4" cx="459.0109890109891" cy="182.63736263736266" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
65
- orientation: y+" data-x="3.4924999999999997" data-y="-1.5" cx="502.55494505494505" cy="396.92307692307696" 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[
1
+ <svg width="640" height="640" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="white"/><g><polyline data-points="-4.475,2.9699999999999998 -2.38,3" data-type="line" data-label="" points="56.731401254855086,148.7819938253162 173.57235335125984,147.10885369983066" fill="none" stroke="hsl(192, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="0.2999999999999998,2.6 3.45,1.5" data-type="line" data-label="" points="323.039537894632,169.41738870630414 498.71925107061054,230.76585997410615" fill="none" stroke="hsl(120, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="0.2999999999999998,2.4 0.2999999999999998,2.2" data-type="line" data-label="" points="323.039537894632,180.57165620954086 323.039537894632,191.7259237127776" fill="none" stroke="hsl(192, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.05,-1.5 3.935,-1.5" data-type="line" data-label="" points="476.4107160641371,398.0798725226571 525.7683497659596,398.0798725226571" fill="none" stroke="hsl(344, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.525,2.9699999999999998 -2.45,1.5" data-type="line" data-label="" points="109.71417189522955,148.7819938253162 169.66835972512698,230.76585997410615" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.7,2.2 4.55,1.5" data-type="line" data-label="" points="456.8907479334728,191.7259237127776 560.0677223384125,230.76585997410615" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.62,3 -3.55,1.5" data-type="line" data-label="" points="215.9585698635594,147.10885369983066 108.31988845732496,230.76585997410615" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.2999999999999998,2.8 2.7,2.8" data-type="line" data-label="" points="323.039537894632,158.2631212030674 456.8907479334728,158.2631212030674" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.2999999999999998,2.4 0.09999999999999981,2.4 0.09999999999999981,2.2 0.2999999999999998,2.2" data-type="line" data-label="" points="323.039537894632,180.57165620954086 311.8852703913953,180.57165620954086 311.8852703913953,191.7259237127776 323.039537894632,191.7259237127776" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.55,-1.5 -3.4499999999999997,-1.5" data-type="line" data-label="" points="164.0912259735086,398.0798725226571 113.89702220894333,398.0798725226571" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.05,-1.5 3.935,-1.5" data-type="line" data-label="" points="476.4107160641371,398.0798725226571 525.7683497659596,398.0798725226571" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.4500000000000002,-1.5 -1.25,-1.5 -1.25,-2.25 -3.75,-2.25 -3.75,-3 -3.55,-3" data-type="line" data-label="" points="225.43969724131063,398.0798725226571 236.59396474454735,398.0798725226571 236.59396474454735,439.90837565979484 97.16562095408821,439.90837565979484 97.16562095408821,481.7368787969326 108.31988845732496,481.7368787969326" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.525,2.9699999999999998 -2.415,2.9699999999999998 -2.415,1.5 -2.45,1.5" data-type="line" data-label="" points="109.71417189522955,148.7819938253162 171.6203565381934,148.7819938253162 171.6203565381934,230.76585997410615 169.66835972512698,230.76585997410615" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.7,2.2 4.75,2.2 4.75,1.5 4.55,1.5" data-type="line" data-label="" points="456.8907479334728,191.7259237127776 571.2219898416492,191.7259237127776 571.2219898416492,230.76585997410615 560.0677223384125,230.76585997410615" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="0.2999999999999998,2.8 0.09999999999999981,2.8 0.09999999999999981,3.2 2.9000000000000004,3.2 2.9000000000000004,2.8 2.7,2.8" data-type="line" data-label="" points="323.039537894632,158.2631212030674 311.8852703913953,158.2631212030674 311.8852703913953,135.95458619659394 468.04501543670955,135.95458619659394 468.04501543670955,158.2631212030674 456.8907479334728,158.2631212030674" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-4.475,2.9699999999999998 -4.675,2.9699999999999998 -4.675,3.45 -2.58,3.45 -2.58,3 -2.38,3" data-type="line" data-label="" points="56.731401254855086,148.7819938253162 45.57713375161836,148.7819938253162 45.57713375161836,122.011751817548 162.41808584802308,122.011751817548 162.41808584802308,147.10885369983066 173.57235335125984,147.10885369983066" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.45,-3 -2.349,-3 -2.349,-3.4509999999999996" data-type="line" data-label="" points="169.66835972512698,481.7368787969326 175.30126481426151,481.7368787969326 175.30126481426151,506.88975201673145" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="5.0649999999999995,-1.5 5.1659999999999995,-1.5 5.1659999999999995,-1.851" data-type="line" data-label="" points="588.7899611592471,398.0798725226571 594.4228662483818,398.0798725226571 594.4228662483818,417.6556119908376" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.62,3 -1.5190000000000001,3 -1.5190000000000001,3.251" data-type="line" data-label="" points="215.9585698635594,147.10885369983066 221.59147495269394,147.10885369983066 221.59147495269394,133.11024798326858" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.55,1.5 -3.651,1.5 -3.651,1.9509999999999998" data-type="line" data-label="" points="108.31988845732496,230.76585997410615 102.68698336819043,230.76585997410615 102.68698336819043,205.61298675430731" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-4.550000000000001,-1.5 -4.651000000000001,-1.5 -4.651000000000001,-1.2990000000000002" data-type="line" data-label="" points="52.54855094114126,398.0798725226571 46.91564585200672,398.0798725226571 46.91564585200672,386.8698336819042" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-4" data-y="3" x="56.73140125485507" y="139.02200975998403" width="52.98277064037447" height="16.17368787969326" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-2" data-y="3" x="173.57235335125984" y="133.16601932078476" width="42.38621651229957" height="27.88566875809184" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="-3" data-y="1.5" x="108.31988845732495" y="207.34189821730902" width="61.34847126780201" height="46.84792351359425" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="1.5" data-y="2.5" x="323.039537894632" y="147.10885369983066" width="133.8512100388408" height="55.77133751618368" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="4" data-y="1.5" x="498.7192510706106" y="207.34189821730902" width="61.34847126780198" height="46.84792351359425" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="schematic_component_5" data-x="-4" data-y="-1.5" x="52.54855094114127" y="387.23483756597955" width="61.34847126780207" height="21.69006991335516" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="schematic_component_6" data-x="-2" data-y="-1.5" x="164.09122597350864" y="387.23483756597955" width="61.34847126780201" height="21.69006991335516" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="schematic_component_7" data-x="-3" data-y="-3" x="108.31988845732495" y="458.3129170401355" width="61.34847126780201" height="46.847923513594196" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="schematic_component_8" data-x="2.5" data-y="-1.5" x="415.062244796335" y="387.23483756597955" width="61.34847126780204" height="21.69006991335516" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="schematic_component_9" data-x="4.5" data-y="-1.5" x="525.7683497659596" y="379.9541878298975" width="63.02161139328757" height="36.251369385519354" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .B1 &gt; .pin1 to .SW1 &gt; .pin1
2
+ globalConnNetId: connectivity_net0" data-x="-4.675" data-y="2.7449999999999997" x="40.000000000000014" y="148.7819938253162" width="11.154267503236696" height="25.097101882282658" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: GND
3
+ globalConnNetId: connectivity_net6" data-x="-2.9699999999999998" data-y="2.82" x="135.09013046509313" y="148.7819938253162" width="11.154267503236724" height="16.731401254855086" fill="#00000066" stroke="#000000" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: GND
4
+ globalConnNetId: connectivity_net6" data-x="4.75" data-y="1.35" x="565.6448560900309" y="230.76585997410615" width="11.154267503236724" height="16.731401254855086" fill="#00000066" stroke="#000000" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: GND
5
+ globalConnNetId: connectivity_net6" data-x="-2.349" data-y="-3.6009999999999995" x="169.72413106264315" y="506.8897520167314" width="11.154267503236724" height="16.731401254855086" fill="#00000066" stroke="#000000" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: GND
6
+ globalConnNetId: connectivity_net6" data-x="5.1659999999999995" data-y="-2.001" x="588.8457324967634" y="417.6556119908376" width="11.154267503236724" height="16.731401254855086" fill="#00000066" stroke="#000000" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: VCC
7
+ globalConnNetId: connectivity_net7" data-x="-1.5190000000000001" data-y="3.401" x="216.01434120107558" y="116.37884672841349" width="11.154267503236724" height="16.731401254855086" fill="#ef444466" stroke="#ef4444" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: VCC
8
+ globalConnNetId: connectivity_net7" data-x="-3.651" data-y="2.101" x="97.10984961657205" y="188.88158549945223" width="11.154267503236753" height="16.731401254855086" fill="#ef444466" stroke="#ef4444" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: VCC
9
+ globalConnNetId: connectivity_net7" data-x="0.09999999999999981" data-y="3.35" x="306.30813663977693" y="119.22318494173885" width="11.154267503236724" height="16.731401254855086" fill="#ef444466" stroke="#ef4444" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: VCC
10
+ globalConnNetId: connectivity_net7" data-x="-4.651000000000001" data-y="-1.1490000000000002" x="41.33851210038837" y="370.1384324270491" width="11.154267503236696" height="16.731401254855086" fill="#ef444466" stroke="#ef4444" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .THRES to .C1 &gt; .pin1
11
+ globalConnNetId: connectivity_net2" data-x="-0.1250000000000002" data-y="2.4" x="286.78816850911267" y="174.9945224579225" width="25.09710188228263" height="11.154267503236724" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .R2 &gt; .pin2 to .U1 &gt; .THRES
12
+ globalConnNetId: connectivity_net2" data-x="-1.25" data-y="-1.275" x="231.016830992929" y="372.9827706403745" width="11.154267503236724" height="25.09710188228263" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .OUT to .R3 &gt; .pin1
13
+ globalConnNetId: connectivity_net4" data-x="2.926" data-y="2.6" x="456.94651927098903" y="163.84025495468575" width="25.09710188228263" height="11.154267503236753" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .OUT to .R3 &gt; .pin1
14
+ globalConnNetId: connectivity_net4" data-x="1.724" data-y="-1.5" x="389.9093715765362" y="392.50273877103876" width="25.097101882282686" height="11.154267503236724" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .CTRL to .C2 &gt; .pin1
15
+ globalConnNetId: connectivity_net1" data-x="0.07399999999999982" data-y="2.6" x="297.88666467483324" y="163.84025495468575" width="25.09710188228263" height="11.154267503236753" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .CTRL to .C2 &gt; .pin1
16
+ globalConnNetId: connectivity_net1" data-x="3.224" data-y="1.5" x="473.5663778508117" y="225.1887262224878" width="25.097101882282686" height="11.154267503236724" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .DISCH to .R2 &gt; .pin1
17
+ globalConnNetId: connectivity_net3" data-x="-3" data-y="-1.275" x="133.4169903396076" y="372.9827706403745" width="11.154267503236753" height="25.09710188228263" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .U1 &gt; .DISCH to .R2 &gt; .pin1
18
+ globalConnNetId: connectivity_net3" data-x="2.926" data-y="2.4" x="456.94651927098903" y="174.9945224579225" width="25.09710188228263" height="11.154267503236724" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><rect data-type="rect" data-label="netId: .R3 &gt; .pin2 to .D1 &gt; .pin1
19
+ globalConnNetId: connectivity_net5" data-x="3.4924999999999997" data-y="-1.275" x="495.51239916343" y="372.9827706403745" width="11.154267503236781" height="25.09710188228263" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01793035714285714"/></g><g><circle data-type="point" data-label="B1.1
20
+ x-" data-x="-4.475" data-y="2.9699999999999998" cx="56.731401254855086" cy="148.7819938253162" r="3" fill="hsl(210, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="B1.2
21
+ x+" data-x="-3.525" data-y="2.9699999999999998" cx="109.71417189522955" cy="148.7819938253162" r="3" fill="hsl(211, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SW1.1
22
+ x-" data-x="-2.38" data-y="3" cx="173.57235335125984" cy="147.10885369983066" r="3" fill="hsl(104, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SW1.2
23
+ x+" data-x="-1.62" data-y="3" cx="215.9585698635594" cy="147.10885369983066" r="3" fill="hsl(105, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C3.1
24
+ x-" data-x="-3.55" data-y="1.5" cx="108.31988845732496" cy="230.76585997410615" r="3" fill="hsl(243, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C3.2
25
+ x+" data-x="-2.45" data-y="1.5" cx="169.66835972512698" cy="230.76585997410615" r="3" fill="hsl(244, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.1
26
+ x+" data-x="2.7" data-y="2.2" cx="456.8907479334728" cy="191.7259237127776" r="3" fill="hsl(319, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.2
27
+ x-" data-x="0.2999999999999998" data-y="2.2" cx="323.039537894632" cy="191.7259237127776" r="3" fill="hsl(320, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.3
28
+ x+" data-x="2.7" data-y="2.6" cx="456.8907479334728" cy="169.41738870630414" r="3" fill="hsl(321, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.4
29
+ x-" data-x="0.2999999999999998" data-y="2.8" cx="323.039537894632" cy="158.2631212030674" r="3" fill="hsl(322, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.5
30
+ x-" data-x="0.2999999999999998" data-y="2.6" cx="323.039537894632" cy="169.41738870630414" r="3" fill="hsl(323, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.6
31
+ x-" data-x="0.2999999999999998" data-y="2.4" cx="323.039537894632" cy="180.57165620954086" r="3" fill="hsl(324, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.7
32
+ x+" data-x="2.7" data-y="2.4" cx="456.8907479334728" cy="180.57165620954086" r="3" fill="hsl(325, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.8
33
+ x+" data-x="2.7" data-y="2.8" cx="456.8907479334728" cy="158.2631212030674" r="3" fill="hsl(326, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C2.1
34
+ x-" data-x="3.45" data-y="1.5" cx="498.71925107061054" cy="230.76585997410615" r="3" fill="hsl(2, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C2.2
35
+ x+" data-x="4.55" data-y="1.5" cx="560.0677223384125" cy="230.76585997410615" r="3" fill="hsl(3, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R1.1
36
+ x-" data-x="-4.550000000000001" data-y="-1.5" cx="52.54855094114126" cy="398.0798725226571" r="3" fill="hsl(226, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R1.2
37
+ x+" data-x="-3.4499999999999997" data-y="-1.5" cx="113.89702220894333" cy="398.0798725226571" r="3" fill="hsl(227, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R2.1
38
+ x-" data-x="-2.55" data-y="-1.5" cx="164.0912259735086" cy="398.0798725226571" r="3" fill="hsl(107, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R2.2
39
+ x+" data-x="-1.45" data-y="-1.5" cx="225.43969724131063" cy="398.0798725226571" r="3" fill="hsl(108, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C1.1
40
+ x-" data-x="-3.55" data-y="-3" cx="108.31988845732496" cy="481.7368787969326" r="3" fill="hsl(121, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C1.2
41
+ x+" data-x="-2.45" data-y="-3" cx="169.66835972512698" cy="481.7368787969326" r="3" fill="hsl(122, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R3.1
42
+ x-" data-x="1.95" data-y="-1.5" cx="415.06224479633505" cy="398.0798725226571" r="3" fill="hsl(348, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R3.2
43
+ x+" data-x="3.05" data-y="-1.5" cx="476.4107160641371" cy="398.0798725226571" r="3" fill="hsl(349, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="D1.1
44
+ x-" data-x="3.935" data-y="-1.5" cx="525.7683497659596" cy="398.0798725226571" r="3" fill="hsl(32, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="D1.2
45
+ x+" data-x="5.0649999999999995" data-y="-1.5" cx="588.7899611592471" cy="398.0798725226571" r="3" fill="hsl(33, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anchorPoint
46
+ orientation: y-" data-x="-4.675" data-y="2.9699999999999998" cx="45.57713375161836" cy="148.7819938253162" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
47
+ orientation: y-" data-x="-2.9699999999999998" data-y="2.9699999999999998" cx="140.6672642167115" cy="148.7819938253162" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
48
+ orientation: y-" data-x="4.75" data-y="1.5" cx="571.2219898416492" cy="230.76585997410615" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
49
+ orientation: y-" data-x="-2.349" data-y="-3.4509999999999996" cx="175.30126481426151" cy="506.88975201673145" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
50
+ orientation: y-" data-x="5.1659999999999995" data-y="-1.851" cx="594.4228662483818" cy="417.6556119908376" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
51
+ orientation: y+" data-x="-1.5190000000000001" data-y="3.251" cx="221.59147495269394" cy="133.11024798326858" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
52
+ orientation: y+" data-x="-3.651" data-y="1.9509999999999998" cx="102.68698336819043" cy="205.61298675430731" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
53
+ orientation: y+" data-x="0.09999999999999981" data-y="3.2" cx="311.8852703913953" cy="135.95458619659394" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
54
+ orientation: y+" data-x="-4.651000000000001" data-y="-1.2990000000000002" cx="46.91564585200672" cy="386.8698336819042" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
55
+ orientation: x-" data-x="0.09999999999999981" data-y="2.4" cx="311.8852703913953" cy="180.57165620954086" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
56
+ orientation: y+" data-x="-1.25" data-y="-1.5" cx="236.59396474454735" cy="398.0798725226571" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
57
+ orientation: x+" data-x="2.7" data-y="2.6" cx="456.8907479334728" cy="169.41738870630414" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
58
+ orientation: x-" data-x="1.95" data-y="-1.5" cx="415.06224479633505" cy="398.0798725226571" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
59
+ orientation: x-" data-x="0.2999999999999998" data-y="2.6" cx="323.039537894632" cy="169.41738870630414" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
60
+ orientation: x-" data-x="3.45" data-y="1.5" cx="498.71925107061054" cy="230.76585997410615" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
61
+ orientation: y+" data-x="-3" data-y="-1.5" cx="138.99412409122596" cy="398.0798725226571" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
62
+ orientation: x+" data-x="2.7" data-y="2.4" cx="456.8907479334728" cy="180.57165620954086" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
63
+ orientation: y+" data-x="3.4924999999999997" data-y="-1.5" cx="501.0895329150484" cy="398.0798725226571" 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[
66
64
  document.currentScript.parentElement.addEventListener('mousemove', (e) => {
67
65
  const svg = e.currentTarget;
68
66
  const rect = svg.getBoundingClientRect();
@@ -84,7 +82,7 @@ orientation: y+" data-x="3.4924999999999997" data-y="-1.5" cx="502.5549450549450
84
82
  v.setAttribute('y2', '640');
85
83
 
86
84
  // Calculate real coordinates using inverse transformation
87
- const matrix = {"a":54.945054945054956,"c":0,"e":310.65934065934067,"b":0,"d":-54.945054945054956,"f":314.50549450549454};
85
+ const matrix = {"a":55.77133751618366,"c":0,"e":306.30813663977693,"b":0,"d":-55.77133751618366,"f":314.42286624838164};
88
86
  // Manually invert and apply the affine transform
89
87
  // Since we only use translate and scale, we can directly compute:
90
88
  // x' = (x - tx) / sx
@@ -1,4 +1,4 @@
1
- <svg width="640" height="640" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="white"/><g><polyline data-points="-2.87,2.485 -2.87,1.2399999999999998" data-type="line" data-label="" points="181.61383285302594,143.82324687800187 181.61383285302594,210.79731027857824" fill="none" stroke="hsl(32, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-2.87,1.2399999999999998 -2.87,3.6149999999999998" data-type="line" data-label="" points="181.61383285302594,210.79731027857824 181.61383285302594,83.03554274735825" fill="none" stroke="hsl(170, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,1.2399999999999998 -2.87,2.485" data-type="line" data-label="" points="181.61383285302594,210.79731027857824 181.61383285302594,143.82324687800187" fill="none" stroke="hsl(170, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,3.6149999999999998 -2.87,2.485" data-type="line" data-label="" points="181.61383285302594,83.03554274735825 181.61383285302594,143.82324687800187" fill="none" stroke="hsl(170, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,0.19999999999999973 -1.2850000000000001,0.2" data-type="line" data-label="" points="181.61383285302594,266.74351585014404 266.8780019212296,266.74351585014404" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,0.19999999999999973 -1.2850000000000001,-0.2" data-type="line" data-label="" points="181.61383285302594,266.74351585014404 266.8780019212296,288.26128722382316" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,0.19999999999999973 -2.97,-1.0099999999999998" data-type="line" data-label="" points="181.61383285302594,266.74351585014404 176.23439000960616,331.8347742555234" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0.2 -1.2850000000000001,-0.2" data-type="line" data-label="" points="266.8780019212296,266.74351585014404 266.8780019212296,288.26128722382316" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0.2 -2.97,-1.0099999999999998" data-type="line" data-label="" points="266.8780019212296,266.74351585014404 176.23439000960616,331.8347742555234" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,-0.2 -2.97,-1.0099999999999998" data-type="line" data-label="" points="266.8780019212296,288.26128722382316 176.23439000960616,331.8347742555234" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0 -2.97,-2.1100000000000003" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 176.23439000960616,391.00864553314113" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0 -0.8100000000000003,-3.005000000000001" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 292.43035542747356,439.1546589817483" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0 1.2594553499999992,-4.739999999999999" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 403.7555231508165,532.4879923150816" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0 -0.75,-5.315" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 295.6580211335255,563.4197886647453" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.97,-2.1100000000000003 -0.8100000000000003,-3.005000000000001" data-type="line" data-label="" points="176.23439000960616,391.00864553314113 292.43035542747356,439.1546589817483" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.97,-2.1100000000000003 1.2594553499999992,-4.739999999999999" data-type="line" data-label="" points="176.23439000960616,391.00864553314113 403.7555231508165,532.4879923150816" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.97,-2.1100000000000003 -0.75,-5.315" data-type="line" data-label="" points="176.23439000960616,391.00864553314113 295.6580211335255,563.4197886647453" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.8100000000000003,-3.005000000000001 1.2594553499999992,-4.739999999999999" data-type="line" data-label="" points="292.43035542747356,439.1546589817483 403.7555231508165,532.4879923150816" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.8100000000000003,-3.005000000000001 -0.75,-5.315" data-type="line" data-label="" points="292.43035542747356,439.1546589817483 295.6580211335255,563.4197886647453" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2594553499999992,-4.739999999999999 -0.75,-5.315" data-type="line" data-label="" points="403.7555231508165,532.4879923150816 295.6580211335255,563.4197886647453" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2850000000000001,0.1 -0.8100000000000003,-1.9050000000000002" data-type="line" data-label="" points="405.12968299711815,272.1229586935638 292.43035542747356,379.9807877041306" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2850000000000001,0.1 2.675,-1.3049999999999997" data-type="line" data-label="" points="405.12968299711815,272.1229586935638 479.90393852065324,347.70413064361185" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2850000000000001,0.1 -0.75,-4.215000000000001" data-type="line" data-label="" points="405.12968299711815,272.1229586935638 295.6580211335255,504.24591738712775" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.8100000000000003,-1.9050000000000002 2.675,-1.3049999999999997" data-type="line" data-label="" points="292.43035542747356,379.9807877041306 479.90393852065324,347.70413064361185" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.8100000000000003,-1.9050000000000002 -0.75,-4.215000000000001" data-type="line" data-label="" points="292.43035542747356,379.9807877041306 295.6580211335255,504.24591738712775" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.675,-1.3049999999999997 -0.75,-4.215000000000001" data-type="line" data-label="" points="479.90393852065324,347.70413064361185 295.6580211335255,504.24591738712775" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.675,-2.4349999999999996 1.2594553499999992,-3.6399999999999997" data-type="line" data-label="" points="479.90393852065324,408.4918347742554 403.7555231508165,473.3141210374639" fill="none" stroke="hsl(187, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,2.485 -2.87,1.2399999999999998" data-type="line" data-label="" points="181.61383285302594,143.82324687800187 181.61383285302594,210.79731027857824" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.87,3.6149999999999998 -2.87,3.815 -2.1099999999999994,3.815 -2.1099999999999994,2.2849999999999997 -2.87,2.2849999999999997 -2.87,2.485" data-type="line" data-label="" points="181.61383285302594,83.03554274735825 181.61383285302594,72.27665706051869 222.49759846301637,72.27665706051869 222.49759846301637,154.58213256484146 181.61383285302594,154.58213256484146 181.61383285302594,143.82324687800187" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.87,0.19999999999999973 -2.87,-4.440892098500626e-16 -2.97,-4.440892098500626e-16 -2.97,-1.0099999999999998" data-type="line" data-label="" points="181.61383285302594,266.74351585014404 181.61383285302594,277.5024015369836 176.23439000960616,277.5024015369836 176.23439000960616,331.8347742555234" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.97,-2.1100000000000003 -2.97,-3.205000000000001 -0.81,-3.205000000000001 -0.81,-3.005000000000001" data-type="line" data-label="" points="176.23439000960616,391.00864553314113 176.23439000960616,449.91354466858786 292.4303554274736,449.91354466858786 292.4303554274736,439.1546589817483" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.2594553499999988,-4.739999999999999 1.2594553499999988,-5.515000000000001 -0.75,-5.515000000000001 -0.75,-5.315" data-type="line" data-label="" points="403.75552315081643,532.4879923150816 403.75552315081643,574.178674351585 295.6580211335255,574.178674351585 295.6580211335255,563.4197886647453" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.2850000000000001,0.1 2.675,0.1 2.675,-1.3049999999999997" data-type="line" data-label="" points="405.12968299711815,272.1229586935638 479.90393852065324,272.1229586935638 479.90393852065324,347.70413064361185" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.6749999999999994,-2.4349999999999996 2.6749999999999994,-3.0374999999999996 1.2594553499999992,-3.0374999999999996 1.2594553499999992,-3.6399999999999997" data-type="line" data-label="" points="479.9039385206532,408.4918347742554 479.9039385206532,440.90297790585964 403.7555231508165,440.90297790585964 403.7555231508165,473.3141210374639" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.2850000000000001,0.20000000000000018 -1.485,0.20000000000000018 -1.485,-4.440892098500626e-16 -2.87,-4.440892098500626e-16 -2.87,0.19999999999999973" data-type="line" data-label="" points="266.8780019212296,266.74351585014404 256.11911623439005,266.74351585014404 256.11911623439005,277.5024015369836 181.61383285302594,277.5024015369836 181.61383285302594,266.74351585014404" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.2850000000000001,-0.2 -1.485,-0.2 -1.485,0.2 -1.2850000000000001,0.2" data-type="line" data-label="" points="266.8780019212296,288.26128722382316 256.11911623439005,288.26128722382316 256.11911623439005,266.74351585014404 266.8780019212296,266.74351585014404" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.2850000000000001,0 -1.3860000000000001,0 -1.3860000000000001,-0.601" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 261.4447646493756,277.5024015369836 261.4447646493756,309.8328530259365" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-2.71" data-y="0.7199999999999998" x="167.08933717579254" y="210.79731027857827" width="46.26320845341016" height="55.9462055715658" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-3.25" data-y="3.05" x="110.60518731988473" y="83.03554274735826" width="101.13352545629206" height="60.78770413064362" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="0" data-y="0" x="266.8780019212296" y="261.36407300672425" width="138.25168107588854" height="32.27665706051869" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="-2.755" data-y="-1.56" x="161.9788664745437" y="331.8347742555235" width="51.642651296830024" height="59.17387127761771" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="-0.5950000000000002" data-y="-2.4550000000000005" x="278.17483189241113" y="379.98078770413053" width="51.64265129682997" height="59.17387127761771" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_5" data-x="2.9724999999999997" data-y="-1.8699999999999997" x="462.4207492795389" y="347.70413064361185" width="66.97406340057637" height="60.78770413064353" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_6" data-x="1.5519553499999992" data-y="-4.1899999999999995" x="393.29490874159455" y="473.31412103746385" width="52.3909694524495" height="59.17387127761765" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_7" data-x="-0.5950000000000001" data-y="-4.765000000000001" x="281.402497598463" y="504.24591738712775" width="45.18731988472621" height="59.173871277617536" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="netId: VBUS
1
+ <svg width="640" height="640" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="white"/><g><polyline data-points="-2.87,2.485 -2.87,1.2399999999999998" data-type="line" data-label="" points="181.61383285302594,143.82324687800187 181.61383285302594,210.79731027857824" fill="none" stroke="hsl(32, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-2.87,1.2399999999999998 -2.87,3.6149999999999998" data-type="line" data-label="" points="181.61383285302594,210.79731027857824 181.61383285302594,83.03554274735825" fill="none" stroke="hsl(170, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,1.2399999999999998 -2.87,2.485" data-type="line" data-label="" points="181.61383285302594,210.79731027857824 181.61383285302594,143.82324687800187" fill="none" stroke="hsl(170, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,3.6149999999999998 -2.87,2.485" data-type="line" data-label="" points="181.61383285302594,83.03554274735825 181.61383285302594,143.82324687800187" fill="none" stroke="hsl(170, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,0.19999999999999973 -1.2850000000000001,0.2" data-type="line" data-label="" points="181.61383285302594,266.74351585014404 266.8780019212296,266.74351585014404" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,0.19999999999999973 -1.2850000000000001,-0.2" data-type="line" data-label="" points="181.61383285302594,266.74351585014404 266.8780019212296,288.26128722382316" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,0.19999999999999973 -2.97,-1.0099999999999998" data-type="line" data-label="" points="181.61383285302594,266.74351585014404 176.23439000960616,331.8347742555234" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0.2 -1.2850000000000001,-0.2" data-type="line" data-label="" points="266.8780019212296,266.74351585014404 266.8780019212296,288.26128722382316" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0.2 -2.97,-1.0099999999999998" data-type="line" data-label="" points="266.8780019212296,266.74351585014404 176.23439000960616,331.8347742555234" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,-0.2 -2.97,-1.0099999999999998" data-type="line" data-label="" points="266.8780019212296,288.26128722382316 176.23439000960616,331.8347742555234" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0 -2.97,-2.1100000000000003" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 176.23439000960616,391.00864553314113" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0 -0.8100000000000003,-3.005000000000001" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 292.43035542747356,439.1546589817483" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0 1.2594553499999992,-4.739999999999999" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 403.7555231508165,532.4879923150816" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2850000000000001,0 -0.75,-5.315" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 295.6580211335255,563.4197886647453" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.97,-2.1100000000000003 -0.8100000000000003,-3.005000000000001" data-type="line" data-label="" points="176.23439000960616,391.00864553314113 292.43035542747356,439.1546589817483" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.97,-2.1100000000000003 1.2594553499999992,-4.739999999999999" data-type="line" data-label="" points="176.23439000960616,391.00864553314113 403.7555231508165,532.4879923150816" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.97,-2.1100000000000003 -0.75,-5.315" data-type="line" data-label="" points="176.23439000960616,391.00864553314113 295.6580211335255,563.4197886647453" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.8100000000000003,-3.005000000000001 1.2594553499999992,-4.739999999999999" data-type="line" data-label="" points="292.43035542747356,439.1546589817483 403.7555231508165,532.4879923150816" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.8100000000000003,-3.005000000000001 -0.75,-5.315" data-type="line" data-label="" points="292.43035542747356,439.1546589817483 295.6580211335255,563.4197886647453" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2594553499999992,-4.739999999999999 -0.75,-5.315" data-type="line" data-label="" points="403.7555231508165,532.4879923150816 295.6580211335255,563.4197886647453" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2850000000000001,0.1 -0.8100000000000003,-1.9050000000000002" data-type="line" data-label="" points="405.12968299711815,272.1229586935638 292.43035542747356,379.9807877041306" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2850000000000001,0.1 2.675,-1.3049999999999997" data-type="line" data-label="" points="405.12968299711815,272.1229586935638 479.90393852065324,347.70413064361185" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2850000000000001,0.1 -0.75,-4.215000000000001" data-type="line" data-label="" points="405.12968299711815,272.1229586935638 295.6580211335255,504.24591738712775" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.8100000000000003,-1.9050000000000002 2.675,-1.3049999999999997" data-type="line" data-label="" points="292.43035542747356,379.9807877041306 479.90393852065324,347.70413064361185" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.8100000000000003,-1.9050000000000002 -0.75,-4.215000000000001" data-type="line" data-label="" points="292.43035542747356,379.9807877041306 295.6580211335255,504.24591738712775" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.675,-1.3049999999999997 -0.75,-4.215000000000001" data-type="line" data-label="" points="479.90393852065324,347.70413064361185 295.6580211335255,504.24591738712775" fill="none" stroke="hsl(154, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.675,-2.4349999999999996 1.2594553499999992,-3.6399999999999997" data-type="line" data-label="" points="479.90393852065324,408.4918347742554 403.7555231508165,473.3141210374639" fill="none" stroke="hsl(187, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.87,2.485 -2.87,1.2399999999999998" data-type="line" data-label="" points="181.61383285302594,143.82324687800187 181.61383285302594,210.79731027857824" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.87,3.6149999999999998 -2.87,3.815 -2.1099999999999994,3.815 -2.1099999999999994,2.2849999999999997 -2.87,2.2849999999999997 -2.87,2.485" data-type="line" data-label="" points="181.61383285302594,83.03554274735825 181.61383285302594,72.27665706051869 222.49759846301637,72.27665706051869 222.49759846301637,154.58213256484146 181.61383285302594,154.58213256484146 181.61383285302594,143.82324687800187" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.87,0.19999999999999973 -2.87,-2.220446049250313e-16 -2.97,-2.220446049250313e-16 -2.97,-1.0099999999999998" data-type="line" data-label="" points="181.61383285302594,266.74351585014404 181.61383285302594,277.5024015369836 176.23439000960616,277.5024015369836 176.23439000960616,331.8347742555234" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.97,-2.1100000000000003 -2.97,-3.205000000000001 -0.81,-3.205000000000001 -0.81,-3.005000000000001" data-type="line" data-label="" points="176.23439000960616,391.00864553314113 176.23439000960616,449.91354466858786 292.4303554274736,449.91354466858786 292.4303554274736,439.1546589817483" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.2594553499999988,-4.739999999999999 1.2594553499999988,-5.515000000000001 -0.75,-5.515000000000001 -0.75,-5.315" data-type="line" data-label="" points="403.75552315081643,532.4879923150816 403.75552315081643,574.178674351585 295.6580211335255,574.178674351585 295.6580211335255,563.4197886647453" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.2850000000000001,0.1 2.675,0.1 2.675,-1.3049999999999997" data-type="line" data-label="" points="405.12968299711815,272.1229586935638 479.90393852065324,272.1229586935638 479.90393852065324,347.70413064361185" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.6749999999999994,-2.4349999999999996 2.6749999999999994,-3.0374999999999996 1.2594553499999992,-3.0374999999999996 1.2594553499999992,-3.6399999999999997" data-type="line" data-label="" points="479.9039385206532,408.4918347742554 479.9039385206532,440.90297790585964 403.7555231508165,440.90297790585964 403.7555231508165,473.3141210374639" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.2850000000000001,0.20000000000000018 -1.485,0.20000000000000018 -1.485,-4.440892098500626e-16 -2.87,-4.440892098500626e-16 -2.87,0.19999999999999973" data-type="line" data-label="" points="266.8780019212296,266.74351585014404 256.11911623439005,266.74351585014404 256.11911623439005,277.5024015369836 181.61383285302594,277.5024015369836 181.61383285302594,266.74351585014404" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.2850000000000001,-0.2 -1.485,-0.2 -1.485,0.2 -1.2850000000000001,0.2" data-type="line" data-label="" points="266.8780019212296,288.26128722382316 256.11911623439005,288.26128722382316 256.11911623439005,266.74351585014404 266.8780019212296,266.74351585014404" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.2850000000000001,0 -1.3860000000000001,0 -1.3860000000000001,-0.601" data-type="line" data-label="" points="266.8780019212296,277.5024015369836 261.4447646493756,277.5024015369836 261.4447646493756,309.8328530259365" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-2.71" data-y="0.7199999999999998" x="167.08933717579254" y="210.79731027857827" width="46.26320845341016" height="55.9462055715658" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-3.25" data-y="3.05" x="110.60518731988473" y="83.03554274735826" width="101.13352545629206" height="60.78770413064362" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="0" data-y="0" x="266.8780019212296" y="261.36407300672425" width="138.25168107588854" height="32.27665706051869" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="-2.755" data-y="-1.56" x="161.9788664745437" y="331.8347742555235" width="51.642651296830024" height="59.17387127761771" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="-0.5950000000000002" data-y="-2.4550000000000005" x="278.17483189241113" y="379.98078770413053" width="51.64265129682997" height="59.17387127761771" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_5" data-x="2.9724999999999997" data-y="-1.8699999999999997" x="462.4207492795389" y="347.70413064361185" width="66.97406340057637" height="60.78770413064353" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_6" data-x="1.5519553499999992" data-y="-4.1899999999999995" x="393.29490874159455" y="473.31412103746385" width="52.3909694524495" height="59.17387127761765" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="schematic_component_7" data-x="-0.5950000000000001" data-y="-4.765000000000001" x="281.402497598463" y="504.24591738712775" width="45.18731988472621" height="59.173871277617536" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="netId: VBUS
2
2
  globalConnNetId: connectivity_net0" data-x="-2.87" data-y="4.115" x="176.23439000960616" y="39.99999999999993" width="10.75888568683959" height="32.276657060518716" fill="#ef444466" stroke="#ef4444" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="netId: RAW
3
3
  globalConnNetId: connectivity_net1" data-x="-1.725" data-y="-0.2" x="230.297790585975" y="282.8818443804034" width="25.821325648415012" height="10.758885686839562" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="netId: GND
4
4
  globalConnNetId: connectivity_net2" data-x="-1.3860000000000001" data-y="-0.841" x="256.0653218059558" y="309.8328530259365" width="10.758885686839562" height="25.821325648414984" fill="#00000066" stroke="#000000" stroke-width="0.018589285714285714"/></g><g><rect data-type="rect" data-label="netId: GND
@@ -0,0 +1,81 @@
1
+ <svg width="640" height="640" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="white"/><g><polyline data-points="0.5,0.4 5.5,0.4" data-type="line" data-label="" points="120,288 520,288" fill="none" stroke="hsl(77, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.5,0.2 5.5,0.2" data-type="line" data-label="" points="120,304 520,304" fill="none" stroke="hsl(78, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.5,0 5.5,0" data-type="line" data-label="" points="120,320 520,320" fill="none" stroke="hsl(79, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.5,-0.2 5.5,-0.2" data-type="line" data-label="" points="120,336 520,336" fill="none" stroke="hsl(80, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.5,-0.4 5.5,-0.4" data-type="line" data-label="" points="120,352 520,352" fill="none" stroke="hsl(209, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.5,0.6 0.5,-0.6" data-type="line" data-label="" points="120,272 120,368" fill="none" stroke="hsl(30, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.5,0.6 1.201,0.6 1.201,-0.6 0.5,-0.6" data-type="line" data-label="" points="120,272 176.08,272 176.08,368 120,368" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="U1" data-x="0" data-y="0" x="40" y="240" width="80" height="160" fill="hsl(164, 100%, 50%, 0.8)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="U2" data-x="6" data-y="0" x="520" y="240" width="80" height="160" fill="hsl(165, 100%, 50%, 0.8)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="U3" data-x="1.8" data-y="0" x="204" y="200" width="40" height="240" fill="hsl(166, 100%, 50%, 0.8)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="C1" data-x="0.8" data-y="1.2" x="88" y="188" width="112" height="72" fill="hsl(326, 100%, 50%, 0.8)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="C2" data-x="0.8" data-y="-1.2" x="88" y="380" width="112" height="72" fill="hsl(327, 100%, 50%, 0.8)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: V1V1
2
+ globalConnNetId: connectivity_net5" data-x="0.8505" data-y="-0.39" x="124.04" y="334.4" width="48.00000000000003" height="33.60000000000002" fill="#ef444466" stroke="#ef4444" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QD0
3
+ globalConnNetId: connectivity_net0" data-x="0.741" data-y="0.4" x="120.07999999999998" y="280" width="38.40000000000002" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QD0
4
+ globalConnNetId: connectivity_net0" data-x="5.2589999999999995" data-y="0.4" x="481.52" y="280" width="38.400000000000034" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QD1
5
+ globalConnNetId: connectivity_net1" data-x="0.741" data-y="0.2" x="120.07999999999998" y="296" width="38.40000000000002" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QD1
6
+ globalConnNetId: connectivity_net1" data-x="5.2589999999999995" data-y="0.2" x="481.52" y="296" width="38.400000000000034" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QD2
7
+ globalConnNetId: connectivity_net2" data-x="0.741" data-y="0" x="120.07999999999998" y="312" width="38.40000000000002" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QD2
8
+ globalConnNetId: connectivity_net2" data-x="5.2589999999999995" data-y="0" x="481.52" y="312" width="38.400000000000034" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QD3
9
+ globalConnNetId: connectivity_net3" data-x="0.741" data-y="-0.2" x="120.07999999999998" y="328" width="38.40000000000002" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QD3
10
+ globalConnNetId: connectivity_net3" data-x="5.2589999999999995" data-y="-0.2" x="481.52" y="328" width="38.400000000000034" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QCLK
11
+ globalConnNetId: connectivity_net4" data-x="0.801" data-y="-0.4" x="120.08" y="344" width="47.99999999999997" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><rect data-type="rect" data-label="netId: QCLK
12
+ globalConnNetId: connectivity_net4" data-x="5.199" data-y="-0.4" x="471.91999999999996" y="344" width="47.99999999999994" height="16" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.0125"/></g><g><circle data-type="point" data-label="U1.1
13
+ x+" data-x="0.5" data-y="0.6" cx="120" cy="272" r="3" fill="hsl(319, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.2
14
+ x+" data-x="0.5" data-y="0.4" cx="120" cy="288" r="3" fill="hsl(320, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.3
15
+ x+" data-x="0.5" data-y="0.2" cx="120" cy="304" r="3" fill="hsl(321, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.4
16
+ x+" data-x="0.5" data-y="0" cx="120" cy="320" r="3" fill="hsl(322, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.5
17
+ x+" data-x="0.5" data-y="-0.2" cx="120" cy="336" r="3" fill="hsl(323, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.6
18
+ x+" data-x="0.5" data-y="-0.4" cx="120" cy="352" r="3" fill="hsl(324, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.7
19
+ x+" data-x="0.5" data-y="-0.6" cx="120" cy="368" r="3" fill="hsl(325, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.1
20
+ x-" data-x="5.5" data-y="0.4" cx="520" cy="288" r="3" fill="hsl(200, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.2
21
+ x-" data-x="5.5" data-y="0.2" cx="520" cy="304" r="3" fill="hsl(201, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.3
22
+ x-" data-x="5.5" data-y="0" cx="520" cy="320" r="3" fill="hsl(202, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.4
23
+ x-" data-x="5.5" data-y="-0.2" cx="520" cy="336" r="3" fill="hsl(203, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U2.5
24
+ x-" data-x="5.5" data-y="-0.4" cx="520" cy="352" r="3" fill="hsl(204, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U3.1
25
+ y+" data-x="1.8" data-y="1.5" cx="224" cy="200" r="3" fill="hsl(81, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C1.1
26
+ y-" data-x="0.8" data-y="0.75" cx="144" cy="260" r="3" fill="hsl(121, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C2.1
27
+ y+" data-x="0.8" data-y="-0.75" cx="144" cy="380" r="3" fill="hsl(2, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anchorPoint
28
+ orientation: y+" data-x="0.8505" data-y="-0.6" cx="148.04000000000002" cy="368" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
29
+ orientation: x+" data-x="0.5" data-y="0.4" cx="120" cy="288" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
30
+ orientation: x-" data-x="5.5" data-y="0.4" cx="520" cy="288" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
31
+ orientation: x+" data-x="0.5" data-y="0.2" cx="120" cy="304" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
32
+ orientation: x-" data-x="5.5" data-y="0.2" cx="520" cy="304" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
33
+ orientation: x+" data-x="0.5" data-y="0" cx="120" cy="320" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
34
+ orientation: x-" data-x="5.5" data-y="0" cx="520" cy="320" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
35
+ orientation: x+" data-x="0.5" data-y="-0.2" cx="120" cy="336" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
36
+ orientation: x-" data-x="5.5" data-y="-0.2" cx="520" cy="336" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
37
+ orientation: x+" data-x="0.5" data-y="-0.4" cx="120" cy="352" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
38
+ orientation: x-" data-x="5.5" data-y="-0.4" cx="520" cy="352" 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[
39
+ document.currentScript.parentElement.addEventListener('mousemove', (e) => {
40
+ const svg = e.currentTarget;
41
+ const rect = svg.getBoundingClientRect();
42
+ const x = e.clientX - rect.left;
43
+ const y = e.clientY - rect.top;
44
+ const crosshair = svg.getElementById('crosshair');
45
+ const h = svg.getElementById('crosshair-h');
46
+ const v = svg.getElementById('crosshair-v');
47
+ const coords = svg.getElementById('coordinates');
48
+
49
+ crosshair.style.display = 'block';
50
+ h.setAttribute('x1', '0');
51
+ h.setAttribute('x2', '640');
52
+ h.setAttribute('y1', y);
53
+ h.setAttribute('y2', y);
54
+ v.setAttribute('x1', x);
55
+ v.setAttribute('x2', x);
56
+ v.setAttribute('y1', '0');
57
+ v.setAttribute('y2', '640');
58
+
59
+ // Calculate real coordinates using inverse transformation
60
+ const matrix = {"a":80,"c":0,"e":80,"b":0,"d":-80,"f":320};
61
+ // Manually invert and apply the affine transform
62
+ // Since we only use translate and scale, we can directly compute:
63
+ // x' = (x - tx) / sx
64
+ // y' = (y - ty) / sy
65
+ const sx = matrix.a;
66
+ const sy = matrix.d;
67
+ const tx = matrix.e;
68
+ const ty = matrix.f;
69
+ const realPoint = {
70
+ x: (x - tx) / sx,
71
+ y: (y - ty) / sy // Flip y back since we used negative scale
72
+ }
73
+
74
+ coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
75
+ coords.setAttribute('x', (x + 5).toString());
76
+ coords.setAttribute('y', (y - 5).toString());
77
+ });
78
+ document.currentScript.parentElement.addEventListener('mouseleave', () => {
79
+ document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
80
+ });
81
+ ]]></script></svg>