@tscircuit/schematic-trace-solver 0.0.192 → 0.0.193

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 (20) hide show
  1. package/dist/index.js +12 -4
  2. package/lib/solvers/UnroutedTraceRecoverySolver/UnroutedTraceRecoverySolver.ts +10 -2
  3. package/package.json +1 -1
  4. package/site/SchematicTracePipelineSolver/repro173-boost-drv8711-ground-label-overlap.page.tsx +7 -0
  5. package/tests/bug-reports/bug-report-20260707T092615Z/__snapshots__/bug-report-20260707T092615Z.snap.svg +2 -2
  6. package/tests/examples/__snapshots__/example08.snap.svg +29 -29
  7. package/tests/examples/__snapshots__/example32.snap.svg +2 -2
  8. package/tests/examples/__snapshots__/example46.snap.svg +12 -21
  9. package/tests/repros/__snapshots__/repro-esp12f-section.snap.svg +2 -2
  10. package/tests/repros/__snapshots__/repro-ina237-current-monitor.snap.svg +17 -17
  11. package/tests/repros/__snapshots__/repro-netlabel-overlap-trace.snap.svg +2 -2
  12. package/tests/repros/__snapshots__/repro-pmp11282-isolated-dcdc.snap.svg +89 -98
  13. package/tests/repros/__snapshots__/repro173-boost-drv8711-ground-label-overlap.snap.svg +307 -0
  14. package/tests/repros/__snapshots__/rtc-imu-microsd-section.snap.svg +286 -0
  15. package/tests/repros/assets/repro173-boost-drv8711-ground-label-overlap.input.json +865 -0
  16. package/tests/repros/assets/rtc-imu-microsd-section.input.json +894 -0
  17. package/tests/repros/repro-pmp11282-isolated-dcdc.test.ts +10 -3
  18. package/tests/repros/repro173-boost-drv8711-ground-label-overlap.test.ts +41 -0
  19. package/tests/repros/rtc-imu-microsd-section.test.ts +28 -0
  20. package/tests/solvers/UnroutedTraceRecoverySolver/local-elbow-obstacles.test.ts +1 -1
@@ -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="-4.475,2.9699999999999998 -2.38,3" data-type="line" data-label="" points="86.20462046204614,228.4378437843784 408.86688668866884,223.8173817381737" fill="none" stroke="hsl(192, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.5250000000000004,2.9699999999999998 -2.7,1.5" data-type="line" data-label="" points="232.5192519251924,228.4378437843784 359.5819581958195,454.8404840484048" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.62,3 -3.3,1.5" data-type="line" data-label="" points="525.9185918591859,223.8173817381737 267.17271727172715,454.8404840484048" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-3.5250000000000004,2.9699999999999998 -2.46,2.9699999999999998 -2.46,1.5 -2.7,1.5" data-type="line" data-label="" points="232.5192519251924,228.4378437843784 396.5456545654565,228.4378437843784 396.5456545654565,454.8404840484048 359.5819581958195,454.8404840484048" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-4.475,2.9699999999999998 -4.675,2.9699999999999998 -4.675,3.45 -2.58,3.45 -2.58,3 -2.38,3" data-type="line" data-label="" points="86.20462046204614,228.4378437843784 55.401540154015265,228.4378437843784 55.401540154015265,154.51045104510433 378.063806380638,154.51045104510433 378.063806380638,223.8173817381737 408.86688668866884,223.8173817381737" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.62,3 -1.3790000000000002,3 -1.3790000000000002,3.251" data-type="line" data-label="" points="525.9185918591859,223.8173817381737 563.036303630363,223.8173817381737 563.036303630363,185.1595159515951" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.3,1.5 -3.541,1.5 -3.541,1.9509999999999998" data-type="line" data-label="" points="267.17271727172715,454.8404840484048 230.05500550055,454.8404840484048 230.05500550055,385.37953795379536" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-4" data-y="3" x="86.20462046204614" y="201.48514851485137" width="146.31463146314627" height="44.66446644664467" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.006492857142857141"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-2" data-y="3" x="408.86688668866884" y="185.31353135313518" width="117.05170517051704" height="77.00770077007707" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.006492857142857141"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="-3" data-y="1.5" x="267.17271727172715" y="390.15401540154005" width="92.40924092409233" height="129.37293729372942" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.006492857142857141"/></g><g><rect data-type="rect" data-label="netId: .B1 &gt; .pin1 to .SW1 &gt; .pin1
3
+ <rect width="100%" height="100%" fill="white"/><g><polyline data-points="-4.475,2.9699999999999998 -2.38,3" data-type="line" data-label="" points="86.20462046204614,228.4378437843784 408.86688668866884,223.8173817381737" fill="none" stroke="hsl(192, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.5250000000000004,2.9699999999999998 -2.7,1.5" data-type="line" data-label="" points="232.5192519251924,228.4378437843784 359.5819581958195,454.8404840484048" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.62,3 -3.3,1.5" data-type="line" data-label="" points="525.9185918591859,223.8173817381737 267.17271727172715,454.8404840484048" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-3.5250000000000004,2.9699999999999998 -2.46,2.9699999999999998 -2.46,1.5 -2.7,1.5" data-type="line" data-label="" points="232.5192519251924,228.4378437843784 396.5456545654565,228.4378437843784 396.5456545654565,454.8404840484048 359.5819581958195,454.8404840484048" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-4.475,2.9699999999999998 -4.675,2.9699999999999998 -4.675,3.345 -2.58,3.345 -2.58,3 -2.38,3" data-type="line" data-label="" points="86.20462046204614,228.4378437843784 55.401540154015265,228.4378437843784 55.401540154015265,170.68206820682053 378.063806380638,170.68206820682053 378.063806380638,223.8173817381737 408.86688668866884,223.8173817381737" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.62,3 -1.3790000000000002,3 -1.3790000000000002,3.251" data-type="line" data-label="" points="525.9185918591859,223.8173817381737 563.036303630363,223.8173817381737 563.036303630363,185.1595159515951" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.3,1.5 -3.541,1.5 -3.541,1.9509999999999998" data-type="line" data-label="" points="267.17271727172715,454.8404840484048 230.05500550055,454.8404840484048 230.05500550055,385.37953795379536" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-4" data-y="3" x="86.20462046204614" y="201.48514851485137" width="146.31463146314627" height="44.66446644664467" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.006492857142857141"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-2" data-y="3" x="408.86688668866884" y="185.31353135313518" width="117.05170517051704" height="77.00770077007707" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.006492857142857141"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="-3" data-y="1.5" x="267.17271727172715" y="390.15401540154005" width="92.40924092409233" height="129.37293729372942" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.006492857142857141"/></g><g><rect data-type="rect" data-label="netId: .B1 &gt; .pin1 to .SW1 &gt; .pin1
4
4
  globalConnNetId: connectivity_net0" data-x="-4.675" data-y="2.7449999999999997" x="39.99999999999994" y="228.43784378437843" width="30.803080308030644" height="69.30693069306932" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.006492857142857141"/></g><g><rect data-type="rect" data-label="netId: GND
5
5
  globalConnNetId: connectivity_net1" data-x="-2.46" data-y="1.29" x="359.58195819581954" y="454.84048404840473" width="73.92739273927401" height="64.68646864686474" fill="#00000066" stroke="#000000" stroke-width="0.006492857142857141"/></g><g><rect data-type="rect" data-label="netId: VCC
6
6
  globalConnNetId: connectivity_net2" data-x="-1.3790000000000002" data-y="3.461" x="526.072607260726" y="120.47304730473039" width="73.92739273927396" height="64.68646864686474" fill="#ef444466" stroke="#ef4444" stroke-width="0.006492857142857141"/></g><g><rect data-type="rect" data-label="netId: VCC
@@ -71,7 +71,7 @@ orientation: y+" data-x="-3.541" data-y="1.9509999999999998" cx="230.05500550055
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 487.61213397770496 265.834163955334 L 727.959678784312 265.834163955334 L 727.959678784312 597.5814793222 L 673.79685178564 597.5814793222" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="36.108551332448px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 487.61213397770496 265.834163955334 L 727.959678784312 265.834163955334 L 727.959678784312 597.5814793222 L 673.79685178564 597.5814793222" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.513568916556px" 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 273.21761044129505 265.834163955334 L 228.0819212757351 265.834163955334 L 228.0819212757351 157.50850995798987 L 700.878265284976 157.50850995798987 L 700.878265284976 259.0638105805 L 746.0139544505361 259.0638105805" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="36.108551332448px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 273.21761044129505 265.834163955334 L 228.0819212757351 265.834163955334 L 228.0819212757351 157.50850995798987 L 700.878265284976 157.50850995798987 L 700.878265284976 259.0638105805 L 746.0139544505361 259.0638105805" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.513568916556px" 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 917.529573279664 259.0638105805 L 971.9180787241637 259.0638105805 L 971.9180787241637 202.4185206777222" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="36.108551332448px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 917.529573279664 259.0638105805 L 971.9180787241637 259.0638105805 L 971.9180787241637 202.4185206777222" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.513568916556px" 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 538.3897842889601 597.5814793222 L 484.0012788444602 597.5814793222 L 484.0012788444602 495.8005002538622" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="36.108551332448px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 538.3897842889601 597.5814793222 L 484.0012788444602 597.5814793222 L 484.0012788444602 495.8005002538622" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.513568916556px" 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-overlay sch-component-overlay" x="273.21761044129505" y="231.53104018950836" width="214.3945235364099" height="66.46230229628708" fill="transparent"/><path class="sch-component-symbol-path" d="M 367.5512007973154 231.53104018950836 L 367.5512007973154 297.99334248579544" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 384.7027626802282 244.39471160169296 L 384.7027626802282 285.12967107361084" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 367.5512007973154 265.83416395533396 L 273.21761044129505 265.83416395533396" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 487.61213397770496 265.83416395533396 L 386.8467079155923 265.83416395533396" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="380.4148722095" y="212.2355330712315" stroke="rgb(245, 241, 237)" stroke-width="4.513568916556px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="40.622120249004px">B1</text><text class="sch-component-text" x="380.4148722095" y="319.4327948394364" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="40.622120249004px"></text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_1__stack1"><rect class="component-overlay sch-component-overlay" x="746.013954450536" y="227.468828164608" width="171.51561882912802" height="33.85176687416998" fill="transparent"/><path class="sch-component-symbol-path" d="M 746.013954450536 259.0638105805 L 804.690350365764 261.320595038778" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 815.974272657154 256.807026122222 L 854.33960844788 227.468828164608" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 858.853177364436 261.320595038778 L 917.529573279664 259.0638105805" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="831.7717638651" y="202.64419912355" stroke="rgb(245, 241, 237)" stroke-width="4.513568916556px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="40.622120249004px">SW1</text><text class="sch-component-text" x="831.7717638651" y="315.48342203744994" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="40.622120249004px"></text><circle class="sch-component-symbol-circle" cx="854.33960844788" cy="259.0638105805" r="4.513568916556px" stroke-width="4.513568916556px" fill="none" stroke="rgb(132, 0, 0)"/><circle class="sch-component-symbol-circle" cx="809.2039192823199" cy="259.0638105805" r="4.513568916556px" stroke-width="4.513568916556px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_2__stack1"><rect class="component-overlay sch-component-overlay" x="538.3897842889601" y="561.4684144208355" width="135.40706749667993" height="72.22612980272902" fill="transparent"/><path class="sch-component-symbol-path" d="M 673.79685178564 597.5814793222 L 619.634024786968 597.5814793222" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 592.5526112876321 597.5814793222 L 538.3897842889601 597.5814793222" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 619.634024786968 561.4684144208355 L 619.634024786968 633.6945442235645" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 592.5526112876321 561.4684144208355 L 592.5526112876321 633.6945442235645" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="606.0933180373" y="543.418652323528" stroke="rgb(245, 241, 237)" stroke-width="4.513568916556px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="40.622120249004px">C3</text><text class="sch-component-text" x="606.0933180373" y="651.744306320872" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="40.622120249004px"></text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="267.5756492956" cy="265.4956462865923" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="481.9701728320099" cy="265.4956462865923" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="746.0139544505361" cy="259.0638105805" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="917.529573279664" cy="259.0638105805" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="538.3897842889601" cy="597.5814793222" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="673.79685178564" cy="597.5814793222" r="9.027137833112" 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 487.61213397770496 265.834163955334 L 727.959678784312 265.834163955334 L 727.959678784312 597.5814793222 L 673.79685178564 597.5814793222" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="36.108551332448px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 487.61213397770496 265.834163955334 L 727.959678784312 265.834163955334 L 727.959678784312 597.5814793222 L 673.79685178564 597.5814793222" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.513568916556px" 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 273.21761044129505 265.834163955334 L 228.0819212757351 265.834163955334 L 228.0819212757351 181.20474676990887 L 700.878265284976 181.20474676990887 L 700.878265284976 259.0638105805 L 746.0139544505361 259.0638105805" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="36.108551332448px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 273.21761044129505 265.834163955334 L 228.0819212757351 265.834163955334 L 228.0819212757351 181.20474676990887 L 700.878265284976 181.20474676990887 L 700.878265284976 259.0638105805 L 746.0139544505361 259.0638105805" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.513568916556px" 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 917.529573279664 259.0638105805 L 971.9180787241637 259.0638105805 L 971.9180787241637 202.4185206777222" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="36.108551332448px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 917.529573279664 259.0638105805 L 971.9180787241637 259.0638105805 L 971.9180787241637 202.4185206777222" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.513568916556px" 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 538.3897842889601 597.5814793222 L 484.0012788444602 597.5814793222 L 484.0012788444602 495.8005002538622" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="36.108551332448px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 538.3897842889601 597.5814793222 L 484.0012788444602 597.5814793222 L 484.0012788444602 495.8005002538622" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.513568916556px" 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-overlay sch-component-overlay" x="273.21761044129505" y="231.53104018950836" width="214.3945235364099" height="66.46230229628708" fill="transparent"/><path class="sch-component-symbol-path" d="M 367.5512007973154 231.53104018950836 L 367.5512007973154 297.99334248579544" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 384.7027626802282 244.39471160169296 L 384.7027626802282 285.12967107361084" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 367.5512007973154 265.83416395533396 L 273.21761044129505 265.83416395533396" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 487.61213397770496 265.83416395533396 L 386.8467079155923 265.83416395533396" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="380.4148722095" y="212.2355330712315" stroke="rgb(245, 241, 237)" stroke-width="4.513568916556px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="40.622120249004px">B1</text><text class="sch-component-text" x="380.4148722095" y="319.4327948394364" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="40.622120249004px"></text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_1__stack1"><rect class="component-overlay sch-component-overlay" x="746.013954450536" y="227.468828164608" width="171.51561882912802" height="33.85176687416998" fill="transparent"/><path class="sch-component-symbol-path" d="M 746.013954450536 259.0638105805 L 804.690350365764 261.320595038778" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 815.974272657154 256.807026122222 L 854.33960844788 227.468828164608" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 858.853177364436 261.320595038778 L 917.529573279664 259.0638105805" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="831.7717638651" y="202.64419912355" stroke="rgb(245, 241, 237)" stroke-width="4.513568916556px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="40.622120249004px">SW1</text><text class="sch-component-text" x="831.7717638651" y="315.48342203744994" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="40.622120249004px"></text><circle class="sch-component-symbol-circle" cx="854.33960844788" cy="259.0638105805" r="4.513568916556px" stroke-width="4.513568916556px" fill="none" stroke="rgb(132, 0, 0)"/><circle class="sch-component-symbol-circle" cx="809.2039192823199" cy="259.0638105805" r="4.513568916556px" stroke-width="4.513568916556px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_2__stack1"><rect class="component-overlay sch-component-overlay" x="538.3897842889601" y="561.4684144208355" width="135.40706749667993" height="72.22612980272902" fill="transparent"/><path class="sch-component-symbol-path" d="M 673.79685178564 597.5814793222 L 619.634024786968 597.5814793222" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 592.5526112876321 597.5814793222 L 538.3897842889601 597.5814793222" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 619.634024786968 561.4684144208355 L 619.634024786968 633.6945442235645" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 592.5526112876321 561.4684144208355 L 592.5526112876321 633.6945442235645" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.513568916556px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="606.0933180373" y="543.418652323528" stroke="rgb(245, 241, 237)" stroke-width="4.513568916556px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="40.622120249004px">C3</text><text class="sch-component-text" x="606.0933180373" y="651.744306320872" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="40.622120249004px"></text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="267.5756492956" cy="265.4956462865923" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="481.9701728320099" cy="265.4956462865923" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="746.0139544505361" cy="259.0638105805" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="917.529573279664" cy="259.0638105805" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="538.3897842889601" cy="597.5814793222" r="9.027137833112" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="673.79685178564" cy="597.5814793222" r="9.027137833112" 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 228.0819212757351,265.834163955334
76
76
  L 250.6497658585151,278.0208000300352
77
77
  L 250.6497658585151,355.41346171924874