@tscircuit/schematic-trace-solver 0.0.181 → 0.0.183

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 (19) hide show
  1. package/dist/index.d.ts +5 -0
  2. package/dist/index.js +318 -113
  3. package/lib/solvers/InlineNetLabelSolver/pushAnchoredNetLabelsAwayFromInlineLabels.ts +10 -0
  4. package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceLinesSolver.ts +45 -2
  5. package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceSingleLineSolver/getPinDirection.ts +58 -10
  6. package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceSingleLineSolver2/SchematicTraceSingleLineSolver2.ts +166 -57
  7. package/lib/solvers/TraceCleanupSolver/hasCollisionsWithLabels.ts +108 -3
  8. package/lib/solvers/TraceCleanupSolver/minimizeTurnsWithFilteredLabels.ts +62 -15
  9. package/lib/solvers/TraceCleanupSolver/turnMinimization.ts +5 -0
  10. package/package.json +1 -1
  11. package/tests/bug-reports/bug-report-20260706T220324Z/__snapshots__/bug-report-20260706T220324Z.snap.svg +13 -20
  12. package/tests/bug-reports/bug-report-20260901T055358Z/__snapshots__/bug-report-20260901T055358Z.snap.svg +10 -10
  13. package/tests/repros/__snapshots__/board1096-usb-label-overlap-iteration.snap.svg +13 -13
  14. package/tests/repros/__snapshots__/repro-core-tb67s579ftg-inline-label-routing.snap.svg +181 -181
  15. package/tests/repros/__snapshots__/repro-mcp73831-charger-traces.snap.svg +10 -10
  16. package/tests/repros/__snapshots__/repro-mouse-switch-ground-unnecessary-jog.snap.svg +2 -2
  17. package/tests/repros/__snapshots__/repro-pmp11282-isolated-dcdc.snap.svg +8 -8
  18. package/tests/repros/__snapshots__/repro-rf1-unnecessary-dogleg.snap.svg +5 -5
  19. package/tests/solvers/InlineNetLabelSolver/push-anchored-net-labels-away.test.ts +62 -0
@@ -1,10 +1,10 @@
1
1
  <svg width="1200" height="2016" viewBox="0 0 1200 2016" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on top and Circuit JSON schematic on the bottom">
2
2
  <g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
3
- <rect width="100%" height="100%" fill="white"/><g><polyline data-points="-40.38,-0.2 -39.78,-4" data-type="line" data-label="" points="60.32238600120672,313.99017326092576 89.28540643048018,497.42263597965683" fill="none" stroke="hsl(287, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-34.32,3 -30.6,3" data-type="line" data-label="" points="352.8488923368675,159.52073097146797 532.4196189983622,159.52073097146797" fill="none" stroke="hsl(278, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-29.4,3 -37.62,-0.1" data-type="line" data-label="" points="590.3456598569089,159.52073097146797 193.5522799758644,309.16300318938016" fill="none" stroke="hsl(81, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-40.38,0 -38.22,-4" data-type="line" data-label="" points="60.32238600120672,304.3358331178346 164.58925954659094,497.42263597965683" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-40.38,0 -34,-3.3800000000000003" data-type="line" data-label="" points="60.32238600120672,304.3358331178346 368.29583656581326,467.4941815360744" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-38.22,-4 -34,-3.3800000000000003" data-type="line" data-label="" points="164.58925954659094,497.42263597965683 368.29583656581326,467.4941815360744" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-37.62,0.1 -34,-2.6199999999999997" data-type="line" data-label="" points="193.5522799758644,299.5086630462891 368.29583656581326,430.80768899232817" fill="none" stroke="hsl(271, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-40.38,0.2 -35.76,3" data-type="line" data-label="" points="60.32238600120672,294.6814929747435 283.33764330661165,159.52073097146797" fill="none" stroke="hsl(170, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-40.38,-0.2 -40.580000000000005,-0.2 -40.580000000000005,-4 -39.78,-4" data-type="line" data-label="" points="60.32238600120672,313.99017326092576 50.66804585811565,313.99017326092576 50.66804585811565,497.42263597965683 89.28540643048018,497.42263597965683" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-34.32,3 -30.6,3" data-type="line" data-label="" points="352.8488923368675,159.52073097146797 532.4196189983622,159.52073097146797" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-29.4,3 -29.2,3 -29.2,-0.1 -37.62,-0.1" data-type="line" data-label="" points="590.3456598569089,159.52073097146797 600,159.52073097146797 600,309.16300318938016 193.5522799758644,309.16300318938016" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-38.22,-4 -34,-4 -34,-3.3800000000000003" data-type="line" data-label="" points="164.58925954659094,497.42263597965683 368.29583656581326,497.42263597965683 368.29583656581326,467.4941815360744" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-37.62,0.1 -37.319,0.1 -37.319,0.30100000000000005" data-type="line" data-label="" points="193.5522799758644,299.5086630462891 208.0820618912162,299.5086630462891 208.0820618912162,289.8060512024825" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-35.76,3 -36.06099999999999,3 -36.06099999999999,3.351" data-type="line" data-label="" points="283.33764330661165,159.52073097146797 268.80786139125985,159.52073097146797 268.80786139125985,142.57736402034308" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-34,-2.6199999999999997 -34,0.11899999999999977" data-type="line" data-label="" points="368.29583656581326,430.80768899232817 368.29583656581326,298.5915007326954" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-39" data-y="0" x="60.32238600120684" y="289.85432290319795" width="133.22989397465767" height="28.963020429273342" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-39" data-y="-4" x="89.2854064304803" y="481.01025773640197" width="75.30385311611076" height="32.82475648650973" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="-33.447500000000005" data-y="-3" x="346.57357124385817" y="430.80768899232817" width="96.78475993448819" height="36.686492543746226" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="-35.04" data-y="3" x="283.33764330661165" y="143.10835272821308" width="69.51124903025584" height="32.824756486509784" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="-30" data-y="3" x="532.4196189983624" y="131.04042754934918" width="57.926040858546685" height="56.96060684423759" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="MCP73831T-2ACI/OT" data-x="-38.959999999999994" data-y="-0.43" x="79.63106628738967" y="320.7482113610895" width="98.47426945952907" height="8.688906128782037" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="U_CHARGER" data-x="-39.44" data-y="0.41500000000000004" x="76.73476424446187" y="278.2691147314886" width="57.926040858546685" height="12.067925178863902" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="netId: GND
3
+ <rect width="100%" height="100%" fill="white"/><g><polyline data-points="-40.38,-0.2 -39.78,-4" data-type="line" data-label="" points="60.32238600120672,313.99017326092576 89.28540643048018,497.42263597965683" fill="none" stroke="hsl(287, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-34.32,3 -30.6,3" data-type="line" data-label="" points="352.8488923368675,159.52073097146797 532.4196189983622,159.52073097146797" fill="none" stroke="hsl(278, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-29.4,3 -37.62,-0.1" data-type="line" data-label="" points="590.3456598569089,159.52073097146797 193.5522799758644,309.16300318938016" fill="none" stroke="hsl(81, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-40.38,0 -38.22,-4" data-type="line" data-label="" points="60.32238600120672,304.3358331178346 164.58925954659094,497.42263597965683" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-40.38,0 -34,-3.3800000000000003" data-type="line" data-label="" points="60.32238600120672,304.3358331178346 368.29583656581326,467.4941815360744" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-38.22,-4 -34,-3.3800000000000003" data-type="line" data-label="" points="164.58925954659094,497.42263597965683 368.29583656581326,467.4941815360744" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-37.62,0.1 -34,-2.6199999999999997" data-type="line" data-label="" points="193.5522799758644,299.5086630462891 368.29583656581326,430.80768899232817" fill="none" stroke="hsl(271, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-40.38,0.2 -35.76,3" data-type="line" data-label="" points="60.32238600120672,294.6814929747435 283.33764330661165,159.52073097146797" fill="none" stroke="hsl(170, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-40.38,-0.2 -40.580000000000005,-0.2 -40.580000000000005,-4 -39.78,-4" data-type="line" data-label="" points="60.32238600120672,313.99017326092576 50.66804585811565,313.99017326092576 50.66804585811565,497.42263597965683 89.28540643048018,497.42263597965683" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-34.32,3 -30.6,3" data-type="line" data-label="" points="352.8488923368675,159.52073097146797 532.4196189983622,159.52073097146797" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-29.4,3 -29.2,3 -29.2,-0.1 -37.62,-0.1" data-type="line" data-label="" points="590.3456598569089,159.52073097146797 600,159.52073097146797 600,309.16300318938016 193.5522799758644,309.16300318938016" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-38.22,-4 -34,-4 -34,-3.3800000000000003" data-type="line" data-label="" points="164.58925954659094,497.42263597965683 368.29583656581326,497.42263597965683 368.29583656581326,467.4941815360744" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-37.62,0.1 -37.319,0.1 -37.319,0.30100000000000005" data-type="line" data-label="" points="193.5522799758644,299.5086630462891 208.0820618912162,299.5086630462891 208.0820618912162,289.8060512024825" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-35.76,3 -36.06099999999999,3 -36.06099999999999,3.351" data-type="line" data-label="" points="283.33764330661165,159.52073097146797 268.80786139125985,159.52073097146797 268.80786139125985,142.57736402034308" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-39" data-y="0" x="60.32238600120684" y="289.85432290319795" width="133.22989397465767" height="28.963020429273342" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-39" data-y="-4" x="89.2854064304803" y="481.01025773640197" width="75.30385311611076" height="32.82475648650973" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="-33.447500000000005" data-y="-3" x="346.57357124385817" y="430.80768899232817" width="96.78475993448819" height="36.686492543746226" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="-35.04" data-y="3" x="283.33764330661165" y="143.10835272821308" width="69.51124903025584" height="32.824756486509784" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="-30" data-y="3" x="532.4196189983624" y="131.04042754934918" width="57.926040858546685" height="56.96060684423759" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="MCP73831T-2ACI/OT" data-x="-38.959999999999994" data-y="-0.43" x="79.63106628738967" y="320.7482113610895" width="98.47426945952907" height="8.688906128782037" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="U_CHARGER" data-x="-39.44" data-y="0.41500000000000004" x="76.73476424446187" y="278.2691147314886" width="57.926040858546685" height="12.067925178863902" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="netId: GND
4
4
  globalConnNetId: connectivity_net3" data-x="-40.591" data-y="0" x="40" y="299.5086630462891" width="20.27411430049142" height="9.654340143091076" fill="#00000066" stroke="#000000" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="netId: GND
5
5
  globalConnNetId: connectivity_net3" data-x="-34" data-y="-4.21" x="356.71062839410376" y="497.4226359796568" width="23.170416343418992" height="20.274114300491362" fill="#00000066" stroke="#000000" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="netId: VBAT
6
6
  globalConnNetId: connectivity_net4" data-x="-37.319" data-y="0.511" x="193.6005516765797" y="269.5319369019912" width="28.963020429273" height="20.274114300491306" fill="#ef444466" stroke="#ef4444" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="netId: VBAT
7
- globalConnNetId: connectivity_net4" data-x="-34" data-y="0.3299999999999996" x="353.81432635117665" y="278.2691147314887" width="28.96302042927323" height="20.274114300491362" fill="#ef444466" stroke="#ef4444" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="netId: VBUS
7
+ globalConnNetId: connectivity_net4" data-x="-34" data-y="-2.409" x="353.81432635117665" y="410.4853029911214" width="28.96302042927323" height="20.274114300491306" fill="#ef444466" stroke="#ef4444" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="netId: VBUS
8
8
  globalConnNetId: connectivity_net5" data-x="-40.591" data-y="0.2" x="40" y="289.85432290319795" width="20.27411430049142" height="9.654340143091133" fill="#ef444466" stroke="#ef4444" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="netId: VBUS
9
9
  globalConnNetId: connectivity_net5" data-x="-36.06099999999999" data-y="3.561" x="254.32635117662335" y="122.30324971985173" width="28.963020429273" height="20.274114300491334" fill="#ef444466" stroke="#ef4444" stroke-width="0.020716071428571434"/></g><g><rect data-type="rect" data-label="INLINE netId: CHG_PROG
10
10
  axis: y
@@ -29,7 +29,7 @@ x+" data-x="-29.4" data-y="3" cx="590.3456598569089" cy="159.52073097146797" r="
29
29
  orientation: x-" data-x="-40.38" data-y="0" cx="60.32238600120672" cy="304.3358331178346" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
30
30
  orientation: y-" data-x="-34" data-y="-4" cx="368.29583656581326" cy="497.42263597965683" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
31
31
  orientation: y+" data-x="-37.319" data-y="0.30100000000000005" cx="208.0820618912162" cy="289.8060512024825" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
32
- orientation: y+" data-x="-34" data-y="0.11899999999999977" cx="368.29583656581326" cy="298.5915007326954" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
32
+ orientation: y+" data-x="-34" data-y="-2.6199999999999997" cx="368.29583656581326" cy="430.80768899232817" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
33
33
  orientation: x-" data-x="-40.38" data-y="0.2" cx="60.32238600120672" cy="294.6814929747435" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
34
34
  orientation: y+" data-x="-36.06099999999999" data-y="3.351" cx="268.80786139125985" cy="142.57736402034308" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="inline anchor
35
35
  CHG_PROG" data-x="-40.580000000000005" data-y="-2.1" cx="50.66804585811565" cy="405.7064046202913" r="3" fill="green"/></g><g><circle data-type="point" data-label="inline anchor
@@ -91,7 +91,7 @@ CHG_STAT" data-x="-33.41" data-y="-0.1" cx="396.7761399879323" cy="309.163003189
91
91
  .port-label { fill: rgb(0, 100, 100); }
92
92
  .component-name { fill: rgb(0, 100, 100); }
93
93
 
94
- </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 134.10868620982365 389.10864382934 L 116.61253171878343 389.10864382934 L 116.61253171878343 721.5355791591 L 186.59714968294384 721.5355791591" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 134.10868620982365 389.10864382934 L 116.61253171878343 389.10864382934 L 116.61253171878343 721.5355791591 L 186.59714968294384 721.5355791591" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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 664.2421672883361 109.17017197270002 L 989.6706408216796 109.17017197270002" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 664.2421672883361 109.17017197270002 L 989.6706408216796 109.17017197270002" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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 1094.64756776792 109.17017197270002 L 1112.1437222589598 109.17017197270002 L 1112.1437222589598 380.36056658382 L 375.55561818617616 380.36056658382" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 1094.64756776792 109.17017197270002 L 1112.1437222589598 109.17017197270002 L 1112.1437222589598 380.36056658382 L 375.55561818617616 380.36056658382" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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 323.06715471305597 721.5355791591 L 692.2360144740001 721.5355791591 L 692.2360144740001 667.297500236876" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 323.06715471305597 721.5355791591 L 692.2360144740001 721.5355791591 L 692.2360144740001 667.297500236876" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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_4__stack1"><path d="M 375.55561818617616 362.86441209278 L 401.88733069519094 362.86441209278 L 401.88733069519094 345.28077682928483" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 375.55561818617616 362.86441209278 L 401.88733069519094 362.86441209278 L 401.88733069519094 345.28077682928483" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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_5__stack1"><path d="M 538.2698549528482 109.17017197270002 L 511.9381424438334 109.17017197270002 L 511.9381424438334 78.46442084092484" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 538.2698549528482 109.17017197270002 L 511.9381424438334 109.17017197270002 L 511.9381424438334 78.46442084092484" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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_6__stack1"><path d="M 692.2360144740001 600.812113170924 L 692.2360144740001 361.2022774161312" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 692.2360144740001 600.812113170924 L 692.2360144740001 361.2022774161312" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_4__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_5__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_6__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="169.10099519190362" y="345.36825760174" width="171.46231401219256" height="52.488463473119964" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="169.10099519190362" y="345.36825760174" width="171.46231401219256" height="52.488463473119964" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="340.5633092040962" y1="380.36056658382" x2="375.55561818617616" y2="380.36056658382" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="373.80600273707216" y="378.610951134716" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="358.05946369513595" y="378.610951134716" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="331.8152319585761" y="380.36056658382" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">STAT</text><line class="component-pin sch-component-pin sch-port-line" x1="169.10099519190362" y1="371.6124893383" x2="135.8583016589282" y2="371.6124893383" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="134.10868620982365" cy="371.6124893383" r="1.749615449104" stroke-width="1.749615449104px"/><rect x="132.35907076071965" y="369.862873889196" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="151.60484070086386" y="369.862873889196" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="177.84907243742373" y="371.6124893383" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">VSS</text><line class="component-pin sch-component-pin sch-port-line" x1="340.5633092040962" y1="362.86441209278" x2="375.55561818617616" y2="362.86441209278" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><rect x="373.80600273707216" y="361.114796643676" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="358.05946369513595" y="361.114796643676" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="331.8152319585761" y="362.86441209278" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">VBAT</text><line class="component-pin sch-component-pin sch-port-line" x1="169.10099519190362" y1="354.11633484726" x2="135.8583016589282" y2="354.11633484726" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="134.10868620982365" cy="354.11633484726" r="1.749615449104" stroke-width="1.749615449104px"/><rect x="132.35907076071965" y="352.366719398156" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="151.60484070086386" y="352.366719398156" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="177.84907243742373" y="354.11633484726" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">VDD</text><line class="component-pin sch-component-pin sch-port-line" x1="169.10099519190362" y1="389.10864382934" x2="134.10868620982365" y2="389.10864382934" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><rect x="132.35907076071965" y="387.359028380236" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="151.60484070086386" y="387.359028380236" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="177.84907243742373" y="389.10864382934" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">PROG</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="221.5894586650238" y="691.792116524332" width="66.48538706595218" height="59.48692526953596" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="221.5894586650238" y="691.792116524332" width="66.48538706595218" height="59.48692526953596" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="221.5894586650238" y1="721.5355791591" x2="186.59714968294384" y2="721.5355791591" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="184.84753423383984" y="719.785963709996" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="204.09330417398405" y="719.7859637099959" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="230.33753591054392" y="721.5355791591" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="288.074845730976" y1="721.5355791591" x2="323.06715471305597" y2="721.5355791591" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><rect x="321.31753926395197" y="719.785963709996" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="305.57100022201575" y="719.7859637099959" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="279.3267684854559" y="721.5355791591" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">cathode</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="652.8696668691596" y="629.6807680811401" width="175.3989487726758" height="8.74807724551988" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="652.8696668691596" y="629.6807680811401" width="175.3989487726758" height="8.74807724551988" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="692.2360144740001" y1="629.6807680811401" x2="692.2360144740001" y2="600.812113170924" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_2_0__stack1"><rect x="690.4863990248961" y="599.06249772182" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="690.4863990248955" y="615.2464406260319" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform="rotate(-90 690.4863990248955 615.2464406260319)"></text><text class="pin-number sch-pin-label" x="692.2360144740001" y="638.4288453266599" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="rotate(-90 692.2360144740001 638.4288453266599)">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="692.2360144740001" y1="638.4288453266599" x2="692.2360144740001" y2="667.297500236876" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_2_1__stack1"><rect x="690.4863990248961" y="665.547884787772" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="690.4863990248955" y="652.8631727817681" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform="rotate(-90 690.4863990248955 652.8631727817681)"></text><text class="pin-number sch-pin-label" x="692.2360144740001" y="629.6807680811401" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="rotate(-90 692.2360144740001 629.6807680811401)">cathode</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_3__stack1"><rect class="component chip sch-component-body" x="573.2621639349281" y="79.42670933793198" width="55.98769437132796" height="59.48692526953607" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="573.2621639349281" y="79.42670933793198" width="55.98769437132796" height="59.48692526953607" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="573.2621639349281" y1="109.17017197270002" x2="538.2698549528482" y2="109.17017197270002" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_3_0__stack1"><rect x="536.5202395037442" y="107.42055652359602" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="555.7660094438884" y="107.42055652359602" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="582.0102411804482" y="109.17017197270002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="629.2498583062561" y1="109.17017197270002" x2="664.2421672883361" y2="109.17017197270002" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_3_1__stack1"><rect x="662.4925518392321" y="107.42055652359602" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="646.7460127972959" y="107.42055652359602" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="620.501781060736" y="109.17017197270002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">cathode</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_4__stack1"><rect class="component chip sch-component-body" x="1024.6629498037596" y="57.556516224132" width="34.99230898208043" height="103.22731149713604" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="1024.6629498037596" y="57.556516224132" width="34.99230898208043" height="103.22731149713604" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="1024.6629498037596" y1="109.17017197270002" x2="989.6706408216796" y2="109.17017197270002" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_4_0__stack1"><rect x="987.9210253725756" y="107.42055652359602" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="1007.1667953127198" y="107.42055652359602" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="1033.4110270492797" y="109.17017197270002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="1059.65525878584" y1="109.17017197270002" x2="1094.64756776792" y2="109.17017197270002" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_4_1__stack1"><rect x="1092.897952318816" y="107.42055652359602" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="1077.1514132768802" y="107.42055652359602" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="1050.90718154032" y="109.17017197270002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">cathode</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="375.55561818617616" cy="380.36056658382" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="134.10868620982365" cy="371.6124893383" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="375.55561818617616" cy="362.86441209278" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="134.10868620982365" cy="354.11633484726" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="134.10868620982365" cy="389.10864382934" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="186.59714968294384" cy="721.5355791591" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="323.06715471305597" cy="721.5355791591" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="692.2360144740001" cy="600.812113170924" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="692.2360144740001" cy="667.297500236876" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_0__stack1"><circle cx="538.2698549528482" cy="109.17017197270002" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_1__stack1"><circle cx="664.2421672883361" cy="109.17017197270002" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_0__stack1"><circle cx="989.6706408216796" cy="109.17017197270002" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_1__stack1"><circle cx="1094.64756776792" cy="109.17017197270002" r="3.499230898208" 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="
94
+ </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 134.10868620982365 389.10864382934 L 116.61253171878343 389.10864382934 L 116.61253171878343 721.5355791591 L 186.59714968294384 721.5355791591" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 134.10868620982365 389.10864382934 L 116.61253171878343 389.10864382934 L 116.61253171878343 721.5355791591 L 186.59714968294384 721.5355791591" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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 664.2421672883361 109.17017197270002 L 989.6706408216796 109.17017197270002" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 664.2421672883361 109.17017197270002 L 989.6706408216796 109.17017197270002" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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 1094.64756776792 109.17017197270002 L 1112.1437222589598 109.17017197270002 L 1112.1437222589598 380.36056658382 L 375.55561818617616 380.36056658382" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 1094.64756776792 109.17017197270002 L 1112.1437222589598 109.17017197270002 L 1112.1437222589598 380.36056658382 L 375.55561818617616 380.36056658382" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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 323.06715471305597 721.5355791591 L 692.2360144740001 721.5355791591 L 692.2360144740001 667.297500236876" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 323.06715471305597 721.5355791591 L 692.2360144740001 721.5355791591 L 692.2360144740001 667.297500236876" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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_4__stack1"><path d="M 375.55561818617616 362.86441209278 L 401.88733069519094 362.86441209278 L 401.88733069519094 345.28077682928483" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 375.55561818617616 362.86441209278 L 401.88733069519094 362.86441209278 L 401.88733069519094 345.28077682928483" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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_5__stack1"><path d="M 538.2698549528482 109.17017197270002 L 511.9381424438334 109.17017197270002 L 511.9381424438334 78.46442084092484" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="13.996923592832px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 538.2698549528482 109.17017197270002 L 511.9381424438334 109.17017197270002 L 511.9381424438334 78.46442084092484" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.749615449104px" 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="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_4__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_5__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="169.10099519190362" y="345.36825760174" width="171.46231401219256" height="52.488463473119964" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="169.10099519190362" y="345.36825760174" width="171.46231401219256" height="52.488463473119964" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="340.5633092040962" y1="380.36056658382" x2="375.55561818617616" y2="380.36056658382" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="373.80600273707216" y="378.610951134716" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="358.05946369513595" y="378.610951134716" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="331.8152319585761" y="380.36056658382" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">STAT</text><line class="component-pin sch-component-pin sch-port-line" x1="169.10099519190362" y1="371.6124893383" x2="135.8583016589282" y2="371.6124893383" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="134.10868620982365" cy="371.6124893383" r="1.749615449104" stroke-width="1.749615449104px"/><rect x="132.35907076071965" y="369.862873889196" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="151.60484070086386" y="369.862873889196" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="177.84907243742373" y="371.6124893383" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">VSS</text><line class="component-pin sch-component-pin sch-port-line" x1="340.5633092040962" y1="362.86441209278" x2="375.55561818617616" y2="362.86441209278" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><rect x="373.80600273707216" y="361.114796643676" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="358.05946369513595" y="361.114796643676" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="331.8152319585761" y="362.86441209278" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">VBAT</text><line class="component-pin sch-component-pin sch-port-line" x1="169.10099519190362" y1="354.11633484726" x2="135.8583016589282" y2="354.11633484726" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="134.10868620982365" cy="354.11633484726" r="1.749615449104" stroke-width="1.749615449104px"/><rect x="132.35907076071965" y="352.366719398156" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="151.60484070086386" y="352.366719398156" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="177.84907243742373" y="354.11633484726" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">VDD</text><line class="component-pin sch-component-pin sch-port-line" x1="169.10099519190362" y1="389.10864382934" x2="134.10868620982365" y2="389.10864382934" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><rect x="132.35907076071965" y="387.359028380236" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="151.60484070086386" y="387.359028380236" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="177.84907243742373" y="389.10864382934" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">PROG</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="221.5894586650238" y="691.792116524332" width="66.48538706595218" height="59.48692526953596" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="221.5894586650238" y="691.792116524332" width="66.48538706595218" height="59.48692526953596" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="221.5894586650238" y1="721.5355791591" x2="186.59714968294384" y2="721.5355791591" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="184.84753423383984" y="719.785963709996" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="204.09330417398405" y="719.7859637099959" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="230.33753591054392" y="721.5355791591" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="288.074845730976" y1="721.5355791591" x2="323.06715471305597" y2="721.5355791591" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><rect x="321.31753926395197" y="719.785963709996" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="305.57100022201575" y="719.7859637099959" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="279.3267684854559" y="721.5355791591" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">cathode</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="652.8696668691596" y="629.6807680811401" width="175.3989487726758" height="8.74807724551988" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="652.8696668691596" y="629.6807680811401" width="175.3989487726758" height="8.74807724551988" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="692.2360144740001" y1="629.6807680811401" x2="692.2360144740001" y2="602.5617286200279" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_2_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="692.2360144740001" cy="600.812113170924" r="1.749615449104" stroke-width="1.749615449104px"/><rect x="690.4863990248961" y="599.06249772182" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="690.4863990248955" y="615.2464406260319" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform="rotate(-90 690.4863990248955 615.2464406260319)"></text><text class="pin-number sch-pin-label" x="692.2360144740001" y="638.4288453266599" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="rotate(-90 692.2360144740001 638.4288453266599)">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="692.2360144740001" y1="638.4288453266599" x2="692.2360144740001" y2="667.297500236876" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_2_1__stack1"><rect x="690.4863990248961" y="665.547884787772" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="690.4863990248955" y="652.8631727817681" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform="rotate(-90 690.4863990248955 652.8631727817681)"></text><text class="pin-number sch-pin-label" x="692.2360144740001" y="629.6807680811401" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="rotate(-90 692.2360144740001 629.6807680811401)">cathode</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_3__stack1"><rect class="component chip sch-component-body" x="573.2621639349281" y="79.42670933793198" width="55.98769437132796" height="59.48692526953607" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="573.2621639349281" y="79.42670933793198" width="55.98769437132796" height="59.48692526953607" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="573.2621639349281" y1="109.17017197270002" x2="538.2698549528482" y2="109.17017197270002" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_3_0__stack1"><rect x="536.5202395037442" y="107.42055652359602" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="555.7660094438884" y="107.42055652359602" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="582.0102411804482" y="109.17017197270002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="629.2498583062561" y1="109.17017197270002" x2="664.2421672883361" y2="109.17017197270002" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_3_1__stack1"><rect x="662.4925518392321" y="107.42055652359602" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="646.7460127972959" y="107.42055652359602" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="620.501781060736" y="109.17017197270002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">cathode</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_4__stack1"><rect class="component chip sch-component-body" x="1024.6629498037596" y="57.556516224132" width="34.99230898208043" height="103.22731149713604" stroke-width="1.749615449104px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="1024.6629498037596" y="57.556516224132" width="34.99230898208043" height="103.22731149713604" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="1024.6629498037596" y1="109.17017197270002" x2="989.6706408216796" y2="109.17017197270002" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_4_0__stack1"><rect x="987.9210253725756" y="107.42055652359602" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="1007.1667953127198" y="107.42055652359602" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="1033.4110270492797" y="109.17017197270002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="13.12211586828px" transform="">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="1059.65525878584" y1="109.17017197270002" x2="1094.64756776792" y2="109.17017197270002" stroke-width="1.749615449104px"/><g class="sch-port" data-schematic-port-id="source_port_4_1__stack1"><rect x="1092.897952318816" y="107.42055652359602" width="3.499230898208" height="3.499230898208" opacity="0"/></g><text class="pin-number sch-pin-number" x="1077.1514132768802" y="107.42055652359602" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="13.12211586828px" transform=""></text><text class="pin-number sch-pin-label" x="1050.90718154032" y="109.17017197270002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="13.12211586828px" transform="">cathode</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="375.55561818617616" cy="380.36056658382" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="134.10868620982365" cy="371.6124893383" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="375.55561818617616" cy="362.86441209278" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="134.10868620982365" cy="354.11633484726" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="134.10868620982365" cy="389.10864382934" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="186.59714968294384" cy="721.5355791591" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="323.06715471305597" cy="721.5355791591" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="692.2360144740001" cy="600.812113170924" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="692.2360144740001" cy="667.297500236876" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_0__stack1"><circle cx="538.2698549528482" cy="109.17017197270002" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_1__stack1"><circle cx="664.2421672883361" cy="109.17017197270002" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_0__stack1"><circle cx="989.6706408216796" cy="109.17017197270002" r="3.499230898208" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_1__stack1"><circle cx="1094.64756776792" cy="109.17017197270002" r="3.499230898208" 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="
95
95
  M 134.10868620982365,371.6124893383
96
96
  L 129.38472449724284,380.36056658382
97
97
  L 99.38465159660626,380.36056658382
@@ -106,13 +106,13 @@ CHG_STAT" data-x="-33.41" data-y="-0.1" cx="396.7761399879323" cy="309.163003189
106
106
  L 410.63540794071093,340.55681511670406
107
107
  Z
108
108
  " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="1.749615449104px"/><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="401.88733069519094" y="337.40750730831684" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="15.746539041935998px" transform="rotate(-90 401.88733069519094 337.40750730831684)">XX</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="
109
- M 692.2360144740001,361.2022774161312
110
- L 683.4879372284801,356.47831570355044
111
- L 683.4879372284801,326.4782428029138
112
- L 700.98409171952,326.4782428029138
113
- L 700.98409171952,356.47831570355044
109
+ M 692.2360144740001,600.812113170924
110
+ L 683.4879372284801,596.0881514583432
111
+ L 683.4879372284801,566.0880785577067
112
+ L 700.98409171952,566.0880785577067
113
+ L 700.98409171952,596.0881514583432
114
114
  Z
115
- " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="1.749615449104px"/><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="692.2360144740001" y="353.3290078951632" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="15.746539041935998px" transform="rotate(-90 692.2360144740001 353.3290078951632)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_4__stack1" d="
115
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="1.749615449104px"/><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="692.2360144740001" y="592.938843649956" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="15.746539041935998px" transform="rotate(-90 692.2360144740001 592.938843649956)">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="
116
116
  M 134.10868620982365,354.11633484726
117
117
  L 129.38472449724284,362.86441209278
118
118
  L 99.38465159660626,362.86441209278
@@ -1,6 +1,6 @@
1
1
  <svg width="1200" height="2016" viewBox="0 0 1200 2016" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on top and Circuit JSON schematic on the bottom">
2
2
  <g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
3
- <rect width="100%" height="100%" fill="white"/><g><polyline data-points="-8.690000000000001,4.1 -9.35,-3.9" data-type="line" data-label="" points="296.875,67.5 255.6250000000001,567.5" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-8.690000000000001,4.1 -9.751000000000001,4.1 -9.751000000000001,0.09999999999999987 -9.549999999999999,0.09999999999999987 -9.549999999999999,-3.9 -9.35,-3.9" data-type="line" data-label="" points="296.875,67.5 230.5625,67.5 230.5625,317.5 243.1250000000001,317.5 243.1250000000001,567.5 255.6250000000001,567.5" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-8.979363636363638,4.1 -8.979363636363638,4.1198999999999995" data-type="line" data-label="" points="278.78977272727263,67.5 278.78977272727263,66.25625000000002" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-8.690000000000001,3.9 -9.530000000000001,3.9" data-type="line" data-label="" points="296.875,79.99999999999997 244.375,79.99999999999997" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-9.35,-4.1 -10.03,-4.1" data-type="line" data-label="" points="255.6250000000001,580 213.1250000000001,580" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-7.690000000000001" data-y="4" x="296.875" y="61.24999999999996" width="125.00000000000006" height="25.00000000000003" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-8.35" data-y="-4" x="255.62500000000014" y="561.25" width="124.99999999999994" height="25" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="D2FC-F-7N(20M)" data-x="-7.450000000000001" data-y="3.67" x="321.875" y="88.74999999999999" width="105" height="11.249999999999972" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="SW_LEFT" data-x="-7.870000000000001" data-y="4.3149999999999995" x="318.125" y="46.25" width="60" height="15.625" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="D2FC-F-7N(20M)" data-x="-8.11" data-y="-4.33" x="280.6250000000001" y="588.75" width="105" height="11.25" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="SW_RIGHT" data-x="-8.469999999999999" data-y="-3.6849999999999996" x="276.87500000000017" y="546.25" width="67.49999999999989" height="15.625" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="netId: GND
3
+ <rect width="100%" height="100%" fill="white"/><g><polyline data-points="-8.690000000000001,4.1 -9.35,-3.9" data-type="line" data-label="" points="296.875,67.5 255.6250000000001,567.5" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-8.690000000000001,4.1 -9.751000000000001,4.1 -9.751000000000001,-3.9 -9.35,-3.9" data-type="line" data-label="" points="296.875,67.5 230.5625,67.5 230.5625,567.5 255.6250000000001,567.5" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-8.979363636363638,4.1 -8.979363636363638,4.1198999999999995" data-type="line" data-label="" points="278.78977272727263,67.5 278.78977272727263,66.25625000000002" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-8.690000000000001,3.9 -9.530000000000001,3.9" data-type="line" data-label="" points="296.875,79.99999999999997 244.375,79.99999999999997" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-9.35,-4.1 -10.03,-4.1" data-type="line" data-label="" points="255.6250000000001,580 213.1250000000001,580" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-7.690000000000001" data-y="4" x="296.875" y="61.24999999999996" width="125.00000000000006" height="25.00000000000003" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-8.35" data-y="-4" x="255.62500000000014" y="561.25" width="124.99999999999994" height="25" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="D2FC-F-7N(20M)" data-x="-7.450000000000001" data-y="3.67" x="321.875" y="88.74999999999999" width="105" height="11.249999999999972" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="SW_LEFT" data-x="-7.870000000000001" data-y="4.3149999999999995" x="318.125" y="46.25" width="60" height="15.625" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="D2FC-F-7N(20M)" data-x="-8.11" data-y="-4.33" x="280.6250000000001" y="588.75" width="105" height="11.25" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="SW_RIGHT" data-x="-8.469999999999999" data-y="-3.6849999999999996" x="276.87500000000017" y="546.25" width="67.49999999999989" height="15.625" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="netId: GND
4
4
  globalConnNetId: connectivity_net0" data-x="-8.979363636363638" data-y="4.329999999999999" x="263.78977272727263" y="40" width="30" height="26.25" fill="#00000066" stroke="#000000" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="INLINE netId: LEFT_SW
5
5
  axis: x
6
6
  side: y+" data-x="-9.110000000000001" data-y="4.01" x="250.625" y="69.37499999999997" width="40" height="7.5" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.015999999999999997"/></g><g><rect data-type="rect" data-label="INLINE netId: RIGHT
@@ -71,7 +71,7 @@ RIGHT" data-x="-9.69" data-y="-4.1" cx="234.3750000000001" cy="580" r="3" fill="
71
71
  .port-label { fill: rgb(0, 100, 100); }
72
72
  .component-name { fill: rgb(0, 100, 100); }
73
73
 
74
- </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 555.3177571657768 73.81291826693001 L 469.89819023462815 73.81291826693001 L 469.89819023462815 395.84710085373 L 486.080407909615 395.84710085373 L 486.080407909615 717.88128344053 L 502.18211703895497 717.88128344053" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="12.881367303472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 555.3177571657768 73.81291826693001 L 469.89819023462815 73.81291826693001 L 469.89819023462815 395.84710085373 L 486.080407909615 395.84710085373 L 486.080407909615 717.88128344053 L 502.18211703895497 717.88128344053" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.610170912934px" 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 532.0215116390998 73.81291826693001 L 532.0215116390998 72.21079820856067" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="12.881367303472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 532.0215116390998 73.81291826693001 L 532.0215116390998 72.21079820856067" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.610170912934px" 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 555.3177571657768 89.91462739627002 L 487.6905788225488 89.91462739627002" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="12.881367303472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 555.3177571657768 89.91462739627002 L 487.6905788225488 89.91462739627002" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.610170912934px" 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 502.18211703895497 733.98299256987 L 447.436305999199 733.98299256987" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="12.881367303472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 502.18211703895497 733.98299256987 L 447.436305999199 733.98299256987" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.610170912934px" 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="587.5211754244567" y="65.76206370225998" width="96.61025477604016" height="32.20341825868002" stroke-width="1.610170912934px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="587.5211754244567" y="65.76206370225998" width="96.61025477604016" height="32.20341825868002" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="587.5211754244567" y1="73.81291826693001" x2="555.3177571657768" y2="73.81291826693001" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="553.7075862528428" y="72.20274735399602" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="571.4194662951168" y="72.20274735399607" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="587.5211754244567" y1="89.91462739627002" x2="555.3177571657768" y2="89.91462739627002" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><rect x="553.7075862528428" y="88.30445648333603" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="571.4194662951168" y="88.30445648333597" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="684.1314302004969" y1="81.86377283159999" x2="714.7246775462429" y2="81.86377283159999" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="716.3348484591769" cy="81.86377283159999" r="1.610170912934" stroke-width="1.610170912934px"/><rect x="714.7246775462429" y="80.25360191866599" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="700.2331393298368" y="80.25360191866605" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">3</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="534.385535297635" y="709.83042887586" width="96.61025477603994" height="32.20341825868002" stroke-width="1.610170912934px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="534.385535297635" y="709.83042887586" width="96.61025477603994" height="32.20341825868002" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="534.385535297635" y1="717.88128344053" x2="502.18211703895497" y2="717.88128344053" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="500.571946126021" y="716.271112527596" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="518.2838261682949" y="716.271112527596" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="534.385535297635" y1="733.98299256987" x2="502.18211703895497" y2="733.98299256987" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><rect x="500.571946126021" y="732.372821656936" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="518.2838261682949" y="732.3728216569359" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="630.9957900736749" y1="725.9321380051999" x2="661.589037419421" y2="725.9321380051999" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="663.1992083323549" cy="725.9321380051999" r="1.610170912934" stroke-width="1.610170912934px"/><rect x="661.589037419421" y="724.3219670922659" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="647.097499203015" y="724.321967092266" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">3</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="555.3177571657768" cy="73.81291826693001" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="555.3177571657768" cy="89.91462739627002" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="716.3348484591769" cy="81.86377283159999" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="502.18211703895497" cy="717.88128344053" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="502.18211703895497" cy="733.98299256987" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="663.1992083323549" cy="725.9321380051999" r="3.220341825868" 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="
74
+ </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 555.3177571657768 73.81291826693001 L 469.89819023462815 73.81291826693001 L 469.89819023462815 717.88128344053 L 502.18211703895497 717.88128344053" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="12.881367303472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 555.3177571657768 73.81291826693001 L 469.89819023462815 73.81291826693001 L 469.89819023462815 717.88128344053 L 502.18211703895497 717.88128344053" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.610170912934px" 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 532.0215116390998 73.81291826693001 L 532.0215116390998 72.21079820856067" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="12.881367303472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 532.0215116390998 73.81291826693001 L 532.0215116390998 72.21079820856067" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.610170912934px" 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 555.3177571657768 89.91462739627002 L 487.6905788225488 89.91462739627002" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="12.881367303472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 555.3177571657768 89.91462739627002 L 487.6905788225488 89.91462739627002" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.610170912934px" 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 502.18211703895497 733.98299256987 L 447.436305999199 733.98299256987" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="12.881367303472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 502.18211703895497 733.98299256987 L 447.436305999199 733.98299256987" stroke="rgb(0, 150, 0)" fill="none" stroke-width="1.610170912934px" 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="587.5211754244567" y="65.76206370225998" width="96.61025477604016" height="32.20341825868002" stroke-width="1.610170912934px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="587.5211754244567" y="65.76206370225998" width="96.61025477604016" height="32.20341825868002" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="587.5211754244567" y1="73.81291826693001" x2="555.3177571657768" y2="73.81291826693001" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="553.7075862528428" y="72.20274735399602" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="571.4194662951168" y="72.20274735399607" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="587.5211754244567" y1="89.91462739627002" x2="555.3177571657768" y2="89.91462739627002" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><rect x="553.7075862528428" y="88.30445648333603" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="571.4194662951168" y="88.30445648333597" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="684.1314302004969" y1="81.86377283159999" x2="714.7246775462429" y2="81.86377283159999" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="716.3348484591769" cy="81.86377283159999" r="1.610170912934" stroke-width="1.610170912934px"/><rect x="714.7246775462429" y="80.25360191866599" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="700.2331393298368" y="80.25360191866605" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">3</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="534.385535297635" y="709.83042887586" width="96.61025477603994" height="32.20341825868002" stroke-width="1.610170912934px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="534.385535297635" y="709.83042887586" width="96.61025477603994" height="32.20341825868002" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="534.385535297635" y1="717.88128344053" x2="502.18211703895497" y2="717.88128344053" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="500.571946126021" y="716.271112527596" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="518.2838261682949" y="716.271112527596" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="534.385535297635" y1="733.98299256987" x2="502.18211703895497" y2="733.98299256987" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><rect x="500.571946126021" y="732.372821656936" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="518.2838261682949" y="732.3728216569359" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="630.9957900736749" y1="725.9321380051999" x2="661.589037419421" y2="725.9321380051999" stroke-width="1.610170912934px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="663.1992083323549" cy="725.9321380051999" r="1.610170912934" stroke-width="1.610170912934px"/><rect x="661.589037419421" y="724.3219670922659" width="3.220341825868" height="3.220341825868" opacity="0"/></g><text class="pin-number sch-pin-number" x="647.097499203015" y="724.321967092266" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="12.076281847005px" transform="">3</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="555.3177571657768" cy="73.81291826693001" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="555.3177571657768" cy="89.91462739627002" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="716.3348484591769" cy="81.86377283159999" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="502.18211703895497" cy="717.88128344053" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="502.18211703895497" cy="733.98299256987" r="3.220341825868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="663.1992083323549" cy="725.9321380051999" r="3.220341825868" 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="
75
75
  M 532.0215116390998,72.21079820856067
76
76
  L 523.9706570744298,67.86333674363887
77
77
  L 523.9706570744298,40.254272823197226
@@ -80,7 +80,7 @@ globalConnNetId: connectivity_net60" data-x="12.0235" data-y="6.935" x="541.3034
80
80
  globalConnNetId: connectivity_net60" data-x="11.1325" data-y="6.919" x="527.3466731739061" y="200.65267610216364" width="3.6440540100861654" height="8.199121522693986" fill="hsl(80, 100%, 50%, 0.35)" stroke="black" stroke-width="0.05488392857142856"/></g><g><rect data-type="rect" data-label="netId: VD_SR2
81
81
  globalConnNetId: connectivity_net38" data-x="-1.4296875" data-y="4.791125000000001" x="292.629738083618" y="239.69643728648117" width="15.305026842362167" height="7.652513421181084" fill="#ef444466" stroke="#ef4444" stroke-width="0.05488392857142856"/></g><g><rect data-type="rect" data-label="netId: R507.pin2 to D502.pin2
82
82
  globalConnNetId: connectivity_net33" data-x="-11.5025" data-y="7.02125" x="112.653326826094" y="201.0671872458109" width="8.199121522693986" height="3.644054010086222" fill="hsl(80, 100%, 50%, 0.35)" stroke="black" stroke-width="0.05488392857142856"/></g><g><rect data-type="rect" data-label="netId: R510.pin1 to D503.pin1
83
- globalConnNetId: connectivity_net1" data-x="-9.266999999999998" data-y="4.1785" x="153.3847405238328" y="252.86285993167397" width="8.199121522693986" height="3.644054010086222" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.05488392857142856"/></g><g><rect data-type="rect" data-label="netId: R510.pin2 to D503.pin2
83
+ globalConnNetId: connectivity_net1" data-x="-9.22" data-y="3.9925" x="156.51862697250687" y="253.97429640475025" width="3.644054010086194" height="8.199121522693986" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.05488392857142856"/></g><g><rect data-type="rect" data-label="netId: R510.pin2 to D503.pin2
84
84
  globalConnNetId: connectivity_net2" data-x="-7.1935312499999995" data-y="5.069999999999999" x="193.44143484626647" y="234.34195542541076" width="3.644054010086194" height="8.199121522693986" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.05488392857142856"/></g><g><rect data-type="rect" data-label="netId: R511.pin1 to Q503.pin1
85
85
  globalConnNetId: connectivity_net2" data-x="-6.7524999999999995" data-y="4.7235" x="201.47714332194568" y="240.65527899788515" width="3.644054010086194" height="8.199121522693986" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.05488392857142856"/></g><g><rect data-type="rect" data-label="netId: Q502.pin1 to R512.pin1
86
86
  globalConnNetId: connectivity_net39" data-x="0.08499999999999994" data-y="4.3068125" x="323.78070603546445" y="250.52497153082805" width="8.199121522693986" height="3.644054010086194" fill="hsl(80, 100%, 50%, 0.35)" stroke="black" stroke-width="0.05488392857142856"/></g><g><rect data-type="rect" data-label="netId: VG_SR2
@@ -464,7 +464,7 @@ orientation: x+" data-x="11.797500000000001" data-y="6.935" cx="541.285179762485
464
464
  orientation: y-" data-x="11.1325" data-y="7.145" cx="529.1687001789492" cy="200.63445583211322" r="3" fill="hsl(80, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
465
465
  orientation: y+" data-x="-1.4296875" data-y="4.581125000000001" cx="300.2822515047991" cy="247.34895070766225" r="3" fill="hsl(80, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
466
466
  orientation: x+" data-x="-11.7275" data-y="7.02125" cx="112.653326826094" cy="202.88921425085402" r="3" fill="hsl(80, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
467
- orientation: x-" data-x="-9.041999999999998" data-y="4.1785" cx="161.58386204652678" cy="254.68488693671708" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
467
+ orientation: y+" data-x="-9.22" data-y="3.7675" cx="158.34065397754998" cy="262.17341792744423" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
468
468
  orientation: y+" data-x="-7.1935312499999995" data-y="4.845" cx="195.26346185130956" cy="242.54107694810475" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
469
469
  orientation: y+" data-x="-6.7524999999999995" data-y="4.4975" cx="203.29917032698876" cy="248.87262079062955" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
470
470
  orientation: x-" data-x="0.30999999999999994" data-y="4.3068125" cx="331.97982755815843" cy="252.34699853587114" r="3" fill="hsl(80, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
@@ -1101,13 +1101,13 @@ orientation: x-" data-x="-3.309375" data-y="3.0025" cx="266.03383764437933" cy="
1101
1101
  L 173.07366106426278,160.11182660560425
1102
1102
  Z
1103
1103
  " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="0.753887231036px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_78__stack1" x="174.43065808012756" y="156.34239045042426" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="6.784985079324px" transform="">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_79__stack1" d="
1104
- M 272.2663734878245,263.49803675180374
1105
- L 270.23087796402734,267.26747290698376
1106
- L 257.3042249091967,267.26747290698376
1107
- L 257.3042249091967,259.7286005966237
1108
- L 270.23087796402734,259.7286005966237
1104
+ M 265.556777131604,278.9904193495935
1105
+ L 261.787340976424,276.9549238257963
1106
+ L 261.787340976424,264.02827077096566
1107
+ L 269.326213286784,264.02827077096566
1108
+ L 269.326213286784,276.9549238257963
1109
1109
  Z
1110
- " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="0.753887231036px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_79__stack1" x="268.87388094816254" y="263.49803675180374" fill="rgb(132, 0, 0)" text-anchor="end" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="6.784985079324px" transform="">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_80__stack1" d="
1110
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="0.753887231036px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_79__stack1" x="265.556777131604" y="275.5979268099315" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="6.784985079324px" transform="rotate(-90 265.556777131604 275.5979268099315)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_80__stack1" d="
1111
1111
  M 341.9432228675283,238.37474477752903
1112
1112
  L 338.17378671234826,236.33924925373182
1113
1113
  L 338.17378671234826,223.4125961989012
@@ -1,15 +1,15 @@
1
1
  <svg width="1200" height="2016" viewBox="0 0 1200 2016" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on top and Circuit JSON schematic on the bottom">
2
2
  <g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
3
- <rect width="100%" height="100%" fill="white"/><g><polyline data-points="3.4,-7 5.157985400000001,-6.997375450000001" data-type="line" data-label="" points="163.11835958113113,299.30281055733576 386.25266743224313,298.96968654636817" fill="none" stroke="hsl(21, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4,-7 3.4,-7.2 4.957985400000002,-7.2 4.957985400000002,-6.997375450000001 5.157985400000001,-6.997375450000001" data-type="line" data-label="" points="163.11835958113113,299.30281055733576 163.11835958113113,324.6880393369505 360.8674386526286,324.6880393369505 360.8674386526286,298.96968654636817 386.25266743224313,298.96968654636817" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.6,-7 2.6,-7.76" data-type="line" data-label="" points="61.57744446267253,299.30281055733576 61.57744446267253,395.7666799198714" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="2.9979" data-y="-6.961574540324975" x="61.044354658300676" y="289.5484197092121" width="102.07400492283045" height="9.754390848123649" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007878597499999999"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="6" data-y="-7" x="386.2526674322432" y="244.2333200801284" width="213.74733256775687" height="110.1389809544147" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007878597499999999"/></g><g><rect data-type="rect" data-label="INLINE netId: RF1
3
+ <rect width="100%" height="100%" fill="white"/><g><polyline data-points="3.4,-7 5.157985400000001,-6.997375450000001" data-type="line" data-label="" points="163.11835958113113,299.30281055733576 386.25266743224313,298.96968654636817" fill="none" stroke="hsl(21, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4,-7 5.157985400000001,-7 5.157985400000001,-6.997375450000001" data-type="line" data-label="" points="163.11835958113113,299.30281055733576 386.25266743224313,299.30281055733576 386.25266743224313,298.96968654636817" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.6,-7 2.6,-7.76" data-type="line" data-label="" points="61.57744446267253,299.30281055733576 61.57744446267253,395.7666799198714" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="2.9979" data-y="-6.961574540324975" x="61.044354658300676" y="289.5484197092121" width="102.07400492283045" height="9.754390848123649" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007878597499999999"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="6" data-y="-7" x="386.2526674322432" y="244.2333200801284" width="213.74733256775687" height="110.1389809544147" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007878597499999999"/></g><g><rect data-type="rect" data-label="INLINE netId: RF1
4
4
  axis: x
5
- side: y+" data-x="4.178992700000001" data-y="-7.09" x="241.68471609318817" y="303.11059487427804" width="40.61636604738351" height="15.231137267768645" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.007878597499999999"/></g><g><rect data-type="rect" data-label="INLINE netId: RF_OUT
5
+ side: y+" data-x="4.278992700000001" data-y="-6.89" x="254.37733048299543" y="277.7253660946634" width="40.616366047383394" height="15.231137267768645" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.007878597499999999"/></g><g><rect data-type="rect" data-label="INLINE netId: RF_OUT
6
6
  axis: y
7
- side: x-" data-x="2.49" data-y="-7.38" x="40.000000000000085" y="311.995424947143" width="15.231137267768815" height="71.07864058292114" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.007878597499999999"/></g><text data-type="text" data-label="RF1" data-x="4.178992700000001" data-y="-7.09" x="261.9928991168799" y="310.72616350816236" fill="green" font-size="15.231137267768789" font-family="sans-serif" text-anchor="middle" dominant-baseline="central">RF1</text><text data-type="text" data-label="RF_OUT" data-x="2.49" data-y="-7.1" x="47.61556863388449" y="311.9954249471431" fill="green" font-size="15.231137267768789" font-family="sans-serif" text-anchor="end" dominant-baseline="central" transform="rotate(-90, 47.61556863388449, 311.9954249471431)">RF_OUT</text><g><circle data-type="point" data-label="2
7
+ side: x-" data-x="2.49" data-y="-7.38" x="40.000000000000085" y="311.995424947143" width="15.231137267768815" height="71.07864058292114" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.007878597499999999"/></g><text data-type="text" data-label="RF1" data-x="4.278992700000001" data-y="-6.89" x="274.68551350668713" y="285.3409347285477" fill="green" font-size="15.231137267768789" font-family="sans-serif" text-anchor="middle" dominant-baseline="central">RF1</text><text data-type="text" data-label="RF_OUT" data-x="2.49" data-y="-7.1" x="47.61556863388449" y="311.9954249471431" fill="green" font-size="15.231137267768789" font-family="sans-serif" text-anchor="end" dominant-baseline="central" transform="rotate(-90, 47.61556863388449, 311.9954249471431)">RF_OUT</text><g><circle data-type="point" data-label="2
8
8
  y-" data-x="3.4" data-y="-7" cx="163.11835958113113" cy="299.30281055733576" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="1
9
9
  y-" data-x="2.6" data-y="-7" cx="61.57744446267253" cy="299.30281055733576" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anode
10
10
  x-" data-x="5.157985400000001" data-y="-6.997375450000001" cx="386.25266743224313" cy="298.96968654636817" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="cathode
11
11
  x+" data-x="6.842014599999999" data-y="-7.00262455" cx="600" cy="299.63593456830347" r="3" fill="hsl(248, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="inline anchor
12
- RF1" data-x="4.178992700000001" data-y="-7.2" cx="261.9928991168799" cy="324.6880393369505" r="3" fill="green"/></g><g><circle data-type="point" data-label="inline anchor
12
+ RF1" data-x="4.278992700000001" data-y="-7" cx="274.68551350668713" cy="299.30281055733576" r="3" fill="green"/></g><g><circle data-type="point" data-label="inline anchor
13
13
  RF_OUT" data-x="2.6" data-y="-7.38" cx="61.57744446267253" cy="347.5347452386036" r="3" fill="green"/></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[
14
14
  document.currentScript.parentElement.addEventListener('mousemove', (e) => {
15
15
  const svg = e.currentTarget;
@@ -67,6 +67,6 @@ RF_OUT" data-x="2.6" data-y="-7.38" cx="61.57744446267253" cy="347.5347452386036
67
67
  .port-label { fill: rgb(0, 100, 100); }
68
68
  .component-name { fill: rgb(0, 100, 100); }
69
69
 
70
- </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 344.08840925458 360.1765754313001 L 344.08840925458 402.52731759564017 L 673.997599110611 402.52731759564017 L 673.997599110611 359.62081722956304 L 716.3483412749508 359.62081722956304" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="33.880593731472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 344.08840925458 360.1765754313001 L 344.08840925458 402.52731759564017 L 673.997599110611 402.52731759564017 L 673.997599110611 359.62081722956304 L 716.3483412749508 359.62081722956304" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.235074216434px" 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 174.68544059722007 360.1765754313001 L 174.68544059722007 521.109395655792" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="33.880593731472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 174.68544059722007 360.1765754313001 L 174.68544059722007 521.109395655792" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.235074216434px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="173.7960750117689" y="341.45215621399893" width="170.29233424281108" height="21.17537108216993" stroke-width="4.235074216434px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="173.7960750117689" y="341.45215621399893" width="170.29233424281108" height="21.17537108216993" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="344.08840925458" y1="360.1765754313001" x2="344.08840925458" y2="360.1765754313001" stroke-width="4.235074216434px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="339.853335038146" y="355.9415012148661" width="8.470148432868" height="8.470148432868" opacity="0"/></g><text class="pin-number sch-pin-number" x="339.853335038146" y="360.1765754313001" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="31.763056623254997px" transform="rotate(-90 339.853335038146 360.1765754313001)">2</text><line class="component-pin sch-component-pin sch-port-line" x1="174.68544059722007" y1="360.1765754313001" x2="174.68544059722007" y2="360.1765754313001" stroke-width="4.235074216434px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><rect x="170.45036638078608" y="355.9415012148661" width="8.470148432868" height="8.470148432868" opacity="0"/></g><text class="pin-number sch-pin-number" x="170.45036638078608" y="360.1765754313001" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="31.763056623254997px" transform="rotate(-90 170.45036638078608 360.1765754313001)">1</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="801.049825603631" y="268.30291880329037" width="187.19646357473812" height="183.74731325601942" stroke-width="4.235074216434px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="801.049825603631" y="268.30291880329037" width="187.19646357473812" height="183.74731325601942" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="801.049825603631" y1="359.62081722956304" x2="716.3483412749508" y2="359.62081722956304" stroke-width="4.235074216434px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="712.1132670585168" y="355.38574301312906" width="8.470148432868" height="8.470148432868" opacity="0"/></g><text class="pin-number sch-pin-number" x="758.6990834392909" y="355.3857430131293" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="31.763056623254997px" transform=""></text><text class="pin-number sch-pin-label" x="822.2251966858009" y="359.62081722956304" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="31.763056623254997px" transform="">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="988.2462891783691" y1="360.7323336330371" x2="1068.7126992906153" y2="360.7323336330371" stroke-width="4.235074216434px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="1072.9477735070493" cy="360.7323336330371" r="4.235074216434" stroke-width="4.235074216434px"/><rect x="1068.7126992906153" y="356.49725941660313" width="8.470148432868" height="8.470148432868" opacity="0"/></g><text class="pin-number sch-pin-number" x="1030.5970313427092" y="356.49725941660336" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="31.763056623254997px" transform=""></text><text class="pin-number sch-pin-label" x="967.0709180961992" y="360.7323336330371" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="31.763056623254997px" transform="">cathode</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="344.08840925458" cy="360.1765754313001" r="8.470148432868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="174.68544059722007" cy="360.1765754313001" r="8.470148432868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="716.3483412749508" cy="359.62081722956304" r="8.470148432868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="1072.9477735070493" cy="360.7323336330371" r="8.470148432868" fill="red" opacity="0"/></g><text class="sch-text" x="509.04300418259555" y="379.234409405253" fill="#047857" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.410445298604px" transform="rotate(0, 509.04300418259555, 379.234409405253)">XXX</text><text class="sch-text" x="151.39253240683303" y="440.64298554354605" fill="#047857" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.410445298604px" transform="rotate(-90, 151.39253240683303, 440.64298554354605)">XXXXXX</text>
70
+ </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 344.08840925458 360.1765754313001 L 716.3483412749508 360.1765754313001 L 716.3483412749508 359.62081722956304" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="33.880593731472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 344.08840925458 360.1765754313001 L 716.3483412749508 360.1765754313001 L 716.3483412749508 359.62081722956304" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.235074216434px" 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 174.68544059722007 360.1765754313001 L 174.68544059722007 521.109395655792" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="33.880593731472px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 174.68544059722007 360.1765754313001 L 174.68544059722007 521.109395655792" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.235074216434px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="173.7960750117689" y="341.45215621399893" width="170.29233424281108" height="21.17537108216993" stroke-width="4.235074216434px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="173.7960750117689" y="341.45215621399893" width="170.29233424281108" height="21.17537108216993" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="344.08840925458" y1="360.1765754313001" x2="344.08840925458" y2="360.1765754313001" stroke-width="4.235074216434px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="339.853335038146" y="355.9415012148661" width="8.470148432868" height="8.470148432868" opacity="0"/></g><text class="pin-number sch-pin-number" x="339.853335038146" y="360.1765754313001" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="31.763056623254997px" transform="rotate(-90 339.853335038146 360.1765754313001)">2</text><line class="component-pin sch-component-pin sch-port-line" x1="174.68544059722007" y1="360.1765754313001" x2="174.68544059722007" y2="360.1765754313001" stroke-width="4.235074216434px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><rect x="170.45036638078608" y="355.9415012148661" width="8.470148432868" height="8.470148432868" opacity="0"/></g><text class="pin-number sch-pin-number" x="170.45036638078608" y="360.1765754313001" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="31.763056623254997px" transform="rotate(-90 170.45036638078608 360.1765754313001)">1</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="801.049825603631" y="268.30291880329037" width="187.19646357473812" height="183.74731325601942" stroke-width="4.235074216434px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="801.049825603631" y="268.30291880329037" width="187.19646357473812" height="183.74731325601942" fill="transparent"/><line class="component-pin sch-component-pin sch-port-line" x1="801.049825603631" y1="359.62081722956304" x2="716.3483412749508" y2="359.62081722956304" stroke-width="4.235074216434px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="712.1132670585168" y="355.38574301312906" width="8.470148432868" height="8.470148432868" opacity="0"/></g><text class="pin-number sch-pin-number" x="758.6990834392909" y="355.3857430131293" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="31.763056623254997px" transform=""></text><text class="pin-number sch-pin-label" x="822.2251966858009" y="359.62081722956304" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="start" dominant-baseline="middle" font-size="31.763056623254997px" transform="">anode</text><line class="component-pin sch-component-pin sch-port-line" x1="988.2462891783691" y1="360.7323336330371" x2="1068.7126992906153" y2="360.7323336330371" stroke-width="4.235074216434px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="1072.9477735070493" cy="360.7323336330371" r="4.235074216434" stroke-width="4.235074216434px"/><rect x="1068.7126992906153" y="356.49725941660313" width="8.470148432868" height="8.470148432868" opacity="0"/></g><text class="pin-number sch-pin-number" x="1030.5970313427092" y="356.49725941660336" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="31.763056623254997px" transform=""></text><text class="pin-number sch-pin-label" x="967.0709180961992" y="360.7323336330371" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="end" dominant-baseline="middle" font-size="31.763056623254997px" transform="">cathode</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="344.08840925458" cy="360.1765754313001" r="8.470148432868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="174.68544059722007" cy="360.1765754313001" r="8.470148432868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="716.3483412749508" cy="359.62081722956304" r="8.470148432868" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="1072.9477735070493" cy="360.7323336330371" r="8.470148432868" fill="red" opacity="0"/></g><text class="sch-text" x="530.2183752647654" y="336.8836672409129" fill="#047857" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.410445298604px" transform="rotate(0, 530.2183752647654, 336.8836672409129)">XXX</text><text class="sch-text" x="151.39253240683303" y="440.64298554354605" fill="#047857" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.410445298604px" transform="rotate(-90, 151.39253240683303, 440.64298554354605)">XXXXXX</text>
71
71
  </g>
72
72
  </svg>
@@ -126,6 +126,68 @@ test("leaves a label without a movable connector in place", () => {
126
126
  expect(output.netLabelPlacements[0]).toEqual(label)
127
127
  })
128
128
 
129
+ test("leaves a label in place when its new connector would cross another net", () => {
130
+ const inputProblem: InputProblem = {
131
+ chips: [
132
+ {
133
+ chipId: "U1",
134
+ center: { x: 0, y: 0 },
135
+ width: 2,
136
+ height: 1,
137
+ pins: [{ pinId: "U1.1", x: -0.5, y: 0.2, _facingDirection: "x-" }],
138
+ },
139
+ ],
140
+ directConnections: [],
141
+ netConnections: [],
142
+ availableNetLabelOrientations: {},
143
+ }
144
+ const label: NetLabelPlacement = {
145
+ globalConnNetId: "regular-net",
146
+ netId: "D_PLUS",
147
+ mspConnectionPairIds: [],
148
+ pinIds: ["U1.1"],
149
+ orientation: "x-",
150
+ anchorPoint: { x: -0.5, y: 0.2 },
151
+ center: { x: -0.6, y: 0.2 },
152
+ width: 0.2,
153
+ height: 0.2,
154
+ }
155
+ const crossingTrace: SolvedTracePath = {
156
+ mspPairId: "crossing-trace",
157
+ dcConnNetId: "crossing-net",
158
+ globalConnNetId: "crossing-net",
159
+ pins: [] as any,
160
+ tracePath: [
161
+ { x: -1.2, y: -0.2 },
162
+ { x: -1.2, y: 0.4 },
163
+ ],
164
+ mspConnectionPairIds: ["crossing-trace"],
165
+ pinIds: [],
166
+ }
167
+ const inlineLabel: InlineNetLabelPlacement = {
168
+ globalConnNetId: "inline-net",
169
+ netId: "SWCLK",
170
+ pinIds: ["U1.2"],
171
+ axis: "x",
172
+ anchorPoint: { x: -1.1, y: 0 },
173
+ center: { x: -1.1, y: 0.11 },
174
+ width: 1.2,
175
+ height: 0.12,
176
+ side: "y+",
177
+ }
178
+
179
+ const output = pushAnchoredNetLabelsAwayFromInlineLabels({
180
+ inputProblem,
181
+ traces: [crossingTrace],
182
+ netLabelPlacements: [label],
183
+ inlineNetLabelPlacements: [inlineLabel],
184
+ })
185
+
186
+ expect(output.movedLabelCount).toBe(0)
187
+ expect(output.netLabelPlacements[0]).toEqual(label)
188
+ expect(output.traces).toEqual([crossingTrace])
189
+ })
190
+
129
191
  test("moves a contiguous label row together and shoves an anchored obstacle", () => {
130
192
  const inputProblem: InputProblem = {
131
193
  chips: [