@tscircuit/schematic-trace-solver 0.0.148 → 0.0.150

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 (164) hide show
  1. package/.agents/skills/schematic-trace-visualization/SKILL.md +7 -2
  2. package/dist/index.d.ts +31 -2
  3. package/dist/index.js +127 -46
  4. package/lib/solvers/InlineNetLabelSolver/InlineNetLabelSolver.ts +115 -6
  5. package/lib/solvers/NetLabelPlacementSolver/NetLabelPlacementSolver.ts +17 -1
  6. package/lib/solvers/NetLabelPlacementSolver/SingleNetLabelPlacementSolver/SingleNetLabelPlacementSolver.ts +2 -0
  7. package/lib/solvers/NetLabelPlacementSolver/SingleNetLabelPlacementSolver/solvePortOnlyPin.ts +2 -0
  8. package/lib/types/InputProblem.ts +27 -1
  9. package/package.json +8 -1
  10. package/site/examples/example51.page.tsx +4 -0
  11. package/tests/assets/example51.json +5102 -0
  12. package/tests/bug-reports/bug-report-20260706T213649Z/__snapshots__/bug-report-20260706T213649Z.snap.svg +751 -5
  13. package/tests/bug-reports/bug-report-20260706T220324Z/__snapshots__/bug-report-20260706T220324Z.snap.svg +660 -5
  14. package/tests/bug-reports/bug-report-20260707T020342Z/__snapshots__/bug-report-20260707T020342Z.snap.svg +44 -5
  15. package/tests/bug-reports/bug-report-20260707T092615Z/__snapshots__/bug-report-20260707T092615Z.snap.svg +394 -5
  16. package/tests/bug-reports/bug-report-20260707T134549Z/__snapshots__/bug-report-20260707T134549Z.snap.svg +170 -5
  17. package/tests/bug-reports/bug-report-20260707T134722Z/__snapshots__/bug-report-20260707T134722Z.snap.svg +79 -5
  18. package/tests/bug-reports/bug-report-20260707T140410Z/__snapshots__/bug-report-20260707T140410Z.snap.svg +219 -5
  19. package/tests/bug-reports/bug-report-20260707T141025Z/__snapshots__/bug-report-20260707T141025Z.snap.svg +65 -5
  20. package/tests/bug-reports/bug-report-20260707T141421Z/__snapshots__/bug-report-20260707T141421Z.snap.svg +142 -5
  21. package/tests/bug-reports/bug-report-20260707T230831Z/__snapshots__/bug-report-20260707T230831Z.snap.svg +100 -5
  22. package/tests/bug-reports/bug-report-20260708T053736Z/__snapshots__/bug-report-20260708T053736Z.snap.svg +23 -5
  23. package/tests/bug-reports/bug-report-20260708T055430Z/__snapshots__/bug-report-20260708T055430Z.snap.svg +58 -5
  24. package/tests/bug-reports/bug-report-20260708T095725Z/__snapshots__/bug-report-20260708T095725Z.snap.svg +86 -5
  25. package/tests/bug-reports/bug-report-20260716T144856Z/__snapshots__/bug-report-20260716T144856Z.snap.svg +226 -5
  26. package/tests/bug-reports/bug-report-20260717T022934Z/__snapshots__/bug-report-20260717T022934Z.snap.svg +191 -5
  27. package/tests/bug-reports/bug-report-20260717T031704Z/__snapshots__/bug-report-20260717T031704Z.snap.svg +30 -5
  28. package/tests/bug-reports/bug-report-20260717T042845Z/__snapshots__/bug-report-20260717T042845Z.snap.svg +37 -5
  29. package/tests/bug-reports/bug-report-20260721T221026Z/__snapshots__/bug-report-20260721T221026Z.snap.svg +580 -2
  30. package/tests/bug-reports/bug-report-20260724T175257Z/__snapshots__/bug-report-20260724T175257Z.snap.svg +44 -5
  31. package/tests/bug-reports/bug-report-20260728T144234Z/__snapshots__/bug-report-20260728T144234Z.snap.svg +107 -5
  32. package/tests/bug-reports/bug-report-20260728T225606Z/__snapshots__/bug-report-20260728T225606Z.snap.svg +114 -5
  33. package/tests/bug-reports/bug-report-20260730T061837Z/__snapshots__/bug-report-20260730T061837Z.snap.svg +121 -5
  34. package/tests/bug-reports/bug-report-20260731T052229Z/__snapshots__/bug-report-20260731T052229Z.snap.svg +51 -5
  35. package/tests/bug-reports/bug-report-20260804T095800Z/__snapshots__/bug-report-20260804T095800Z.snap.svg +212 -5
  36. package/tests/bug-reports/bug-report-20260804T171919Z/__snapshots__/bug-report-20260804T171919Z.snap.svg +569 -5
  37. package/tests/bug-reports/bug-report-20260804T225912Z/__snapshots__/bug-report-20260804T225912Z.snap.svg +37 -5
  38. package/tests/bug-reports/bug-report-20260805T061316Z/__snapshots__/bug-report-20260805T061316Z.snap.svg +289 -5
  39. package/tests/bug-reports/bug-report-20260806T061548Z/__snapshots__/bug-report-20260806T061548Z.snap.svg +289 -5
  40. package/tests/bug-reports/bug-report-20260806T093501Z/__snapshots__/bug-report-20260806T093501Z.snap.svg +149 -5
  41. package/tests/bug-reports/bug-report-20260811T075142Z/__snapshots__/bug-report-20260811T075142Z.snap.svg +93 -5
  42. package/tests/bug-reports/bug-report-20260815T073240Z/__snapshots__/bug-report-20260815T073240Z.snap.svg +79 -5
  43. package/tests/bug-reports/bug-report-20260819T091818Z/__snapshots__/bug-report-20260819T091818Z.snap.svg +244 -2
  44. package/tests/examples/__snapshots__/example01.snap.svg +44 -5
  45. package/tests/examples/__snapshots__/example02.snap.svg +51 -5
  46. package/tests/examples/__snapshots__/example03.snap.svg +86 -5
  47. package/tests/examples/__snapshots__/example04.snap.svg +30 -5
  48. package/tests/examples/__snapshots__/example05.snap.svg +30 -5
  49. package/tests/examples/__snapshots__/example06.snap.svg +30 -5
  50. package/tests/examples/__snapshots__/example07.snap.svg +58 -5
  51. package/tests/examples/__snapshots__/example08.snap.svg +37 -5
  52. package/tests/examples/__snapshots__/example09.snap.svg +149 -5
  53. package/tests/examples/__snapshots__/example10.snap.svg +65 -5
  54. package/tests/examples/__snapshots__/example11.snap.svg +51 -5
  55. package/tests/examples/__snapshots__/example12.snap.svg +51 -5
  56. package/tests/examples/__snapshots__/example13.snap.svg +72 -5
  57. package/tests/examples/__snapshots__/example14.snap.svg +79 -5
  58. package/tests/examples/__snapshots__/example15.snap.svg +86 -5
  59. package/tests/examples/__snapshots__/example16.snap.svg +51 -5
  60. package/tests/examples/__snapshots__/example17.snap.svg +51 -5
  61. package/tests/examples/__snapshots__/example18.snap.svg +58 -5
  62. package/tests/examples/__snapshots__/example19.snap.svg +44 -5
  63. package/tests/examples/__snapshots__/example20.snap.svg +44 -5
  64. package/tests/examples/__snapshots__/example21.snap.svg +72 -5
  65. package/tests/examples/__snapshots__/example22.snap.svg +51 -5
  66. package/tests/examples/__snapshots__/example23.snap.svg +51 -5
  67. package/tests/examples/__snapshots__/example24.snap.svg +51 -5
  68. package/tests/examples/__snapshots__/example25.snap.svg +86 -5
  69. package/tests/examples/__snapshots__/example26.snap.svg +51 -5
  70. package/tests/examples/__snapshots__/example27.snap.svg +72 -5
  71. package/tests/examples/__snapshots__/example28.snap.svg +44 -5
  72. package/tests/examples/__snapshots__/example29.snap.svg +324 -5
  73. package/tests/examples/__snapshots__/example30.snap.svg +107 -5
  74. package/tests/examples/__snapshots__/example31.snap.svg +37 -5
  75. package/tests/examples/__snapshots__/example32.snap.svg +149 -5
  76. package/tests/examples/__snapshots__/example33.snap.svg +93 -5
  77. package/tests/examples/__snapshots__/example34.snap.svg +51 -5
  78. package/tests/examples/__snapshots__/example35.snap.svg +58 -5
  79. package/tests/examples/__snapshots__/example36.snap.svg +44 -5
  80. package/tests/examples/__snapshots__/example37.snap.svg +72 -5
  81. package/tests/examples/__snapshots__/example38.snap.svg +30 -5
  82. package/tests/examples/__snapshots__/example39.snap.svg +37 -5
  83. package/tests/examples/__snapshots__/example40.snap.svg +100 -5
  84. package/tests/examples/__snapshots__/example41.snap.svg +44 -5
  85. package/tests/examples/__snapshots__/example42.snap.svg +65 -5
  86. package/tests/examples/__snapshots__/example43.snap.svg +58 -5
  87. package/tests/examples/__snapshots__/example44.snap.svg +107 -5
  88. package/tests/examples/__snapshots__/example45.snap.svg +51 -5
  89. package/tests/examples/__snapshots__/example46.snap.svg +93 -5
  90. package/tests/examples/__snapshots__/example47.snap.svg +93 -5
  91. package/tests/examples/__snapshots__/example48.snap.svg +65 -5
  92. package/tests/examples/__snapshots__/example49.snap.svg +177 -5
  93. package/tests/examples/__snapshots__/example50.snap.svg +93 -5
  94. package/tests/examples/__snapshots__/example51.snap.svg +952 -0
  95. package/tests/examples/example51.test.ts +12 -0
  96. package/tests/fixtures/convertSolverOutputToCircuitJson.test.ts +219 -0
  97. package/tests/fixtures/convertSolverOutputToCircuitJson.ts +1058 -0
  98. package/tests/fixtures/matcher.ts +45 -8
  99. package/tests/repros/__snapshots__/board-1273-trace-overlap-cycle.snap.svg +762 -2
  100. package/tests/repros/__snapshots__/board-15984-same-net-junction.snap.svg +111 -2
  101. package/tests/repros/__snapshots__/board1096-usb-label-overlap-iteration.snap.svg +167 -2
  102. package/tests/repros/__snapshots__/bugreport-001-gnd-overlap.snap.svg +65 -5
  103. package/tests/repros/__snapshots__/manufacturePartNumber-text-box.snap.svg +30 -5
  104. package/tests/repros/__snapshots__/netlabel-connector-through-rail-label.snap.svg +79 -5
  105. package/tests/repros/__snapshots__/repro-atmega328p-fault-pullup.snap.svg +65 -5
  106. package/tests/repros/__snapshots__/repro-atmega328p-missing-gnd-netlabel.snap.svg +149 -5
  107. package/tests/repros/__snapshots__/repro-board-589-regulator-section.snap.svg +55 -2
  108. package/tests/repros/__snapshots__/repro-board-648-esp12f-section.snap.svg +160 -2
  109. package/tests/repros/__snapshots__/repro-bq24074-battery-charger.snap.svg +135 -5
  110. package/tests/repros/__snapshots__/repro-bq25895-cross-net-trace-overlap.snap.svg +69 -2
  111. package/tests/repros/__snapshots__/repro-cc2340r5.snap.svg +86 -5
  112. package/tests/repros/__snapshots__/repro-core-555-power-cross-net-overlap.snap.svg +44 -5
  113. package/tests/repros/__snapshots__/repro-core-subcircuit-missing-ground.snap.svg +44 -5
  114. package/tests/repros/__snapshots__/repro-core-tb67s579ftg-inline-label-routing.snap.svg +260 -0
  115. package/tests/repros/__snapshots__/repro-example35-minimize-trace-crossing.snap.svg +335 -2
  116. package/tests/repros/__snapshots__/repro-ground-label-on-lower-rail-end.snap.svg +48 -2
  117. package/tests/repros/__snapshots__/repro-ina237-current-monitor.snap.svg +149 -5
  118. package/tests/repros/__snapshots__/repro-missing-trace-netlabel.snap.svg +72 -5
  119. package/tests/repros/__snapshots__/repro-netlabel-collision-687.snap.svg +100 -5
  120. package/tests/repros/__snapshots__/repro-netlabel-overlap-trace.snap.svg +51 -5
  121. package/tests/repros/__snapshots__/repro-nrf52810-clock-routing.snap.svg +90 -2
  122. package/tests/repros/__snapshots__/repro-power-group-rail-labels.snap.svg +37 -5
  123. package/tests/repros/__snapshots__/repro-rectifier-trace-overlap.snap.svg +44 -5
  124. package/tests/repros/__snapshots__/repro-rp2040-gamepad-trace-alignment.snap.svg +237 -2
  125. package/tests/repros/__snapshots__/repro-rp2040-usb-cc2-ground-overlap.snap.svg +72 -5
  126. package/tests/repros/__snapshots__/repro-rp2040-v3v3-label-placement.snap.svg +51 -5
  127. package/tests/repros/__snapshots__/repro-rp2040-zero-crystal-fallback-netlabels.snap.svg +30 -5
  128. package/tests/repros/__snapshots__/repro-ti-power-output-section.snap.svg +79 -5
  129. package/tests/repros/__snapshots__/repro-tida010076-j4-ground-bus.snap.svg +27 -2
  130. package/tests/repros/__snapshots__/repro-tida010076-page02.snap.svg +1150 -5
  131. package/tests/repros/__snapshots__/repro-tps61222-trace-intersection.snap.svg +51 -5
  132. package/tests/repros/__snapshots__/repro-type-c-16pin-self-connection.snap.svg +30 -5
  133. package/tests/repros/__snapshots__/repro-type-c-16pin-to-resistor.snap.svg +30 -5
  134. package/tests/repros/__snapshots__/repro-type-c-vbus-led-ground-label.snap.svg +44 -5
  135. package/tests/repros/__snapshots__/repro-usb-power-vbus-label-detour.snap.svg +685 -2
  136. package/tests/repros/__snapshots__/repro-vcc-pin1-detour.snap.svg +27 -2
  137. package/tests/repros/__snapshots__/repro129-host-custom-symbol-passives.snap.svg +51 -5
  138. package/tests/repros/__snapshots__/repro130-bq27441-fuel-gauge-trace-through-c1.snap.svg +100 -5
  139. package/tests/repros/__snapshots__/repro161-power-section-autolayout.snap.svg +107 -5
  140. package/tests/repros/__snapshots__/repro47-endpoint-obstacle-detour.snap.svg +51 -5
  141. package/tests/repros/__snapshots__/repro48-555-timer-vcc-rail-label.snap.svg +104 -2
  142. package/tests/repros/__snapshots__/repro5-escape-padded-text-obstacles.snap.svg +30 -5
  143. package/tests/repros/__snapshots__/repro51-overlap-junction-crossing.snap.svg +65 -5
  144. package/tests/repros/__snapshots__/repro84-stacked-gnd-label-orientation.snap.svg +27 -2
  145. package/tests/repros/__snapshots__/small-variant-resistor-facing-direction.snap.svg +58 -5
  146. package/tests/repros/__snapshots__/trace-overlap-box-resistor.snap.svg +37 -5
  147. package/tests/repros/assets/repro-core-tb67s579ftg-inline-label-routing.input.json +900 -0
  148. package/tests/repros/repro-core-tb67s579ftg-inline-label-routing.test.ts +40 -0
  149. package/tests/solvers/InlineNetLabelSolver/__snapshots__/fallback-net-label-width.snap.svg +25 -7
  150. package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label-anchored-label-clearance.snap.svg +34 -2
  151. package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label-port-stub.snap.svg +23 -5
  152. package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label-two-pin-net.snap.svg +23 -5
  153. package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label01.snap.svg +23 -5
  154. package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label02.snap.svg +23 -5
  155. package/tests/solvers/InlineNetLabelSolver/__snapshots__/terminal-stub-trace-clearance.snap.svg +71 -0
  156. package/tests/solvers/InlineNetLabelSolver/fallback-net-label-width.test.ts +10 -1
  157. package/tests/solvers/InlineNetLabelSolver/terminal-stub-trace-clearance.test.ts +102 -0
  158. package/tests/solvers/SchematicTraceSingleLineSolver2/__snapshots__/SchematicTraceSingleLineSolver2_01-example17-d1_1-u1_1.snap.svg +23 -5
  159. package/tests/solvers/SchematicTraceSingleLineSolver2/__snapshots__/SchematicTraceSingleLineSolver2_repro47-short-opposing-pins.snap.svg +20 -2
  160. package/tests/solvers/TraceCleanupSolver/__snapshots__/TraceCleanupSolver.snap.svg +44 -5
  161. package/tests/solvers/TraceLabelOverlapAvoidanceSolver/__snapshots__/TraceLabelOverlapAvoidanceSolver.snap.svg +79 -5
  162. package/tests/solvers/TraceLabelOverlapAvoidanceSolver/sub-solver/__snapshots__/MergedNetLabelObstacles.snap.svg +44 -5
  163. package/tests/solvers/TraceLabelOverlapAvoidanceSolver/sub-solver/__snapshots__/OverlapAvoidanceStepSolver.snap.svg +23 -5
  164. package/tests/solvers/TraceLabelOverlapAvoidanceSolver/sub-solver/__snapshots__/SingleOverlapSolver.snap.svg +30 -5
@@ -1,4 +1,6 @@
1
- <svg width="640" height="640" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="white"/><g><polyline data-points="-3.448709299999999,-3.0002732499999993 -1.15,0.7" data-type="line" data-label="" points="126.96071821655636,467.1108058554054 255.6294907051284,259.99039400089237" fill="none" stroke="hsl(280, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-2.0002732499999993 -1.15,0.29999999999999993" data-type="line" data-label="" points="126.96071821655636,411.1364499468213 255.6294907051284,282.380136364326" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-1.0002732499999993 -1.15,0.09999999999999987" data-type="line" data-label="" points="126.96071821655636,355.1620940382372 255.6294907051284,293.5750075460428" fill="none" stroke="hsl(248, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-0.0002732499999993365 -1.15,-0.30000000000000004" data-type="line" data-label="" points="126.96071821655636,299.1877381296532 255.6294907051284,315.96474990947644" fill="none" stroke="hsl(320, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,0.9997267500000007 -1.15,-0.5" data-type="line" data-label="" points="126.96071821655636,243.21338222106917 255.6294907051284,327.15962109119323" fill="none" stroke="hsl(168, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,1.9997267500000007 -1.15,-0.7" data-type="line" data-label="" points="126.96071821655636,187.23902631248512 255.6294907051284,338.3544922729101" fill="none" stroke="hsl(240, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-2.9997267500000007 1.15,0.7" data-type="line" data-label="" points="513.0392817834438,467.0802158699014 384.3705092948717,259.99039400089237" fill="none" stroke="hsl(336, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-1.9997267500000007 1.15,0.30000000000000004" data-type="line" data-label="" points="513.0392817834438,411.1058599613173 384.3705092948717,282.380136364326" fill="none" stroke="hsl(128, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-0.9997267500000007 1.15,0.10000000000000009" data-type="line" data-label="" points="513.0392817834438,355.1315040527333 384.3705092948717,293.5750075460428" fill="none" stroke="hsl(280, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,0.0002732499999993365 1.15,-0.09999999999999987" data-type="line" data-label="" points="513.0392817834438,299.15714814414923 384.3705092948717,304.76987872775965" fill="none" stroke="hsl(152, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,1.0002732499999993 1.15,-0.49999999999999994" data-type="line" data-label="" points="513.0392817834438,243.1827922355652 384.3705092948717,327.15962109119323" fill="none" stroke="hsl(320, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,2.0002732499999993 1.15,-0.7" data-type="line" data-label="" points="513.0392817834438,187.20843632698114 384.3705092948717,338.3544922729101" fill="none" stroke="hsl(184, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.551290700000001,-2.9997267500000007 4.5512907,1.9997267500000007" data-type="line" data-label="" points="65.2444345147714,467.0802158699014 574.7555654852287,187.23902631248512" fill="none" stroke="hsl(96, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.551290700000001,-0.9997267500000007 4.5512907,-0.0002732499999993365" data-type="line" data-label="" points="65.2444345147714,355.1315040527333 574.7555654852287,299.1877381296532" fill="none" stroke="hsl(128, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.551290700000001,1.0002732499999993 4.5512907,-2.0002732499999993" data-type="line" data-label="" points="65.2444345147714,243.1827922355652 574.7555654852287,411.1364499468213" fill="none" stroke="hsl(160, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-3.0002732499999993 -2.59935465,-3.0002732499999993 -2.59935465,0.7 -1.15,0.7" data-type="line" data-label="" points="126.96071821655636,467.1108058554054 174.50279768826715,467.1108058554054 174.50279768826715,259.99039400089237 255.6294907051284,259.99039400089237" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-2.0002732499999993 -2.49935465,-2.0002732499999993 -2.49935465,0.29999999999999993 -1.15,0.29999999999999993" data-type="line" data-label="" points="126.96071821655636,411.1364499468213 180.10023327912555,411.1364499468213 180.10023327912555,282.380136364326 255.6294907051284,282.380136364326" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-1.0002732499999993 -2.39935465,-1.0002732499999993 -2.39935465,0.09999999999999987 -1.15,0.09999999999999987" data-type="line" data-label="" points="126.96071821655636,355.1620940382372 185.69766886998397,355.1620940382372 185.69766886998397,293.5750075460428 255.6294907051284,293.5750075460428" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-0.0002732499999993365 -2.1993546499999996,-0.0002732499999993365 -2.1993546499999996,-0.30000000000000004 -1.15,-0.30000000000000004" data-type="line" data-label="" points="126.96071821655636,299.1877381296532 196.8925400517008,299.1877381296532 196.8925400517008,315.96474990947644 255.6294907051284,315.96474990947644" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,0.9997267500000007 -2.0993546499999995,0.9997267500000007 -2.0993546499999995,-0.5 -1.15,-0.5" data-type="line" data-label="" points="126.96071821655636,243.21338222106917 202.4899756425592,243.21338222106917 202.4899756425592,327.15962109119323 255.6294907051284,327.15962109119323" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,1.9997267500000007 -1.9993546499999995,1.9997267500000007 -1.9993546499999995,-0.7 -1.15,-0.7" data-type="line" data-label="" points="126.96071821655636,187.23902631248512 208.08741123341758,187.23902631248512 208.08741123341758,338.3544922729101 255.6294907051284,338.3544922729101" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-2.9997267500000007 1.9993546499999995,-2.9997267500000007 1.9993546499999995,0.7 1.15,0.7" data-type="line" data-label="" points="513.0392817834438,467.0802158699014 431.91258876658253,467.0802158699014 431.91258876658253,259.99039400089237 384.3705092948717,259.99039400089237" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-1.9997267500000007 2.0993546499999995,-1.9997267500000007 2.0993546499999995,0.30000000000000004 1.15,0.30000000000000004" data-type="line" data-label="" points="513.0392817834438,411.1058599613173 437.5100243574409,411.1058599613173 437.5100243574409,282.380136364326 384.3705092948717,282.380136364326" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-0.9997267500000007 2.1993546499999996,-0.9997267500000007 2.1993546499999996,0.10000000000000009 1.15,0.10000000000000009" data-type="line" data-label="" points="513.0392817834438,355.1315040527333 443.1074599482993,355.1315040527333 443.1074599482993,293.5750075460428 384.3705092948717,293.5750075460428" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,0.0002732499999993365 2.39935465,0.0002732499999993365 2.39935465,-0.09999999999999987 1.15,-0.09999999999999987" data-type="line" data-label="" points="513.0392817834438,299.15714814414923 454.3023311300161,299.15714814414923 454.3023311300161,304.76987872775965 384.3705092948717,304.76987872775965" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,1.0002732499999993 2.49935465,1.0002732499999993 2.49935465,-0.49999999999999994 1.15,-0.49999999999999994" data-type="line" data-label="" points="513.0392817834438,243.1827922355652 459.8997667208746,243.1827922355652 459.8997667208746,327.15962109119323 384.3705092948717,327.15962109119323" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,2.0002732499999993 2.59935465,2.0002732499999993 2.59935465,-0.7 1.15,-0.7" data-type="line" data-label="" points="513.0392817834438,187.20843632698114 465.49720231173296,187.20843632698114 465.49720231173296,338.3544922729101 384.3705092948717,338.3544922729101" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="255.62949070512843" y="248.79552281917557" width="128.74101858974328" height="100.7538406354513" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-4" data-y="-3" x="65.2444345147714" y="456.2109978934251" width="61.71628370178496" height="21.769025938456537" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="-4" data-y="-2" x="65.2444345147714" y="400.23664198484107" width="61.71628370178496" height="21.76902593845648" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="-4" data-y="-1" x="65.2444345147714" y="344.26228607625706" width="61.71628370178496" height="21.769025938456537" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="-4" data-y="0" x="65.2444345147714" y="288.287930167673" width="61.71628370178496" height="21.76902593845648" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_5" data-x="-4" data-y="1" x="65.2444345147714" y="232.3135742590889" width="61.71628370178496" height="21.769025938456508" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_6" data-x="-4" data-y="2" x="65.2444345147714" y="176.3392183505049" width="61.71628370178496" height="21.769025938456508" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_7" data-x="4" data-y="-3" x="513.0392817834438" y="456.2109978934251" width="61.716283701784846" height="21.769025938456537" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_8" data-x="4" data-y="-2" x="513.0392817834438" y="400.23664198484107" width="61.716283701784846" height="21.76902593845648" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_9" data-x="4" data-y="-1" x="513.0392817834438" y="344.26228607625706" width="61.716283701784846" height="21.769025938456537" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_10" data-x="4" data-y="0" x="513.0392817834438" y="288.287930167673" width="61.716283701784846" height="21.76902593845648" fill="hsl(320, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_11" data-x="4" data-y="1" x="513.0392817834438" y="232.3135742590889" width="61.716283701784846" height="21.769025938456508" fill="hsl(320, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_12" data-x="4" data-y="2" x="513.0392817834438" y="176.3392183505049" width="61.716283701784846" height="21.769025938456508" fill="hsl(320, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="netId: .R1 &gt; .pin2 to .U1 &gt; .IN1
1
+ <svg width="2416" height="1200" viewBox="0 0 2416 1200" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on the left and Circuit JSON schematic on the right">
2
+ <g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
3
+ <rect width="100%" height="100%" fill="white"/><g><polyline data-points="-3.448709299999999,-3.0002732499999993 -1.15,0.7" data-type="line" data-label="" points="126.96071821655636,467.1108058554054 255.6294907051284,259.99039400089237" fill="none" stroke="hsl(280, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-2.0002732499999993 -1.15,0.29999999999999993" data-type="line" data-label="" points="126.96071821655636,411.1364499468213 255.6294907051284,282.380136364326" fill="none" stroke="hsl(264, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-1.0002732499999993 -1.15,0.09999999999999987" data-type="line" data-label="" points="126.96071821655636,355.1620940382372 255.6294907051284,293.5750075460428" fill="none" stroke="hsl(248, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-0.0002732499999993365 -1.15,-0.30000000000000004" data-type="line" data-label="" points="126.96071821655636,299.1877381296532 255.6294907051284,315.96474990947644" fill="none" stroke="hsl(320, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,0.9997267500000007 -1.15,-0.5" data-type="line" data-label="" points="126.96071821655636,243.21338222106917 255.6294907051284,327.15962109119323" fill="none" stroke="hsl(168, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,1.9997267500000007 -1.15,-0.7" data-type="line" data-label="" points="126.96071821655636,187.23902631248512 255.6294907051284,338.3544922729101" fill="none" stroke="hsl(240, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-2.9997267500000007 1.15,0.7" data-type="line" data-label="" points="513.0392817834438,467.0802158699014 384.3705092948717,259.99039400089237" fill="none" stroke="hsl(336, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-1.9997267500000007 1.15,0.30000000000000004" data-type="line" data-label="" points="513.0392817834438,411.1058599613173 384.3705092948717,282.380136364326" fill="none" stroke="hsl(128, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-0.9997267500000007 1.15,0.10000000000000009" data-type="line" data-label="" points="513.0392817834438,355.1315040527333 384.3705092948717,293.5750075460428" fill="none" stroke="hsl(280, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,0.0002732499999993365 1.15,-0.09999999999999987" data-type="line" data-label="" points="513.0392817834438,299.15714814414923 384.3705092948717,304.76987872775965" fill="none" stroke="hsl(152, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,1.0002732499999993 1.15,-0.49999999999999994" data-type="line" data-label="" points="513.0392817834438,243.1827922355652 384.3705092948717,327.15962109119323" fill="none" stroke="hsl(320, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.4487093,2.0002732499999993 1.15,-0.7" data-type="line" data-label="" points="513.0392817834438,187.20843632698114 384.3705092948717,338.3544922729101" fill="none" stroke="hsl(184, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.551290700000001,-2.9997267500000007 4.5512907,1.9997267500000007" data-type="line" data-label="" points="65.2444345147714,467.0802158699014 574.7555654852287,187.23902631248512" fill="none" stroke="hsl(96, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.551290700000001,-0.9997267500000007 4.5512907,-0.0002732499999993365" data-type="line" data-label="" points="65.2444345147714,355.1315040527333 574.7555654852287,299.1877381296532" fill="none" stroke="hsl(128, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.551290700000001,1.0002732499999993 4.5512907,-2.0002732499999993" data-type="line" data-label="" points="65.2444345147714,243.1827922355652 574.7555654852287,411.1364499468213" fill="none" stroke="hsl(160, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-3.0002732499999993 -2.59935465,-3.0002732499999993 -2.59935465,0.7 -1.15,0.7" data-type="line" data-label="" points="126.96071821655636,467.1108058554054 174.50279768826715,467.1108058554054 174.50279768826715,259.99039400089237 255.6294907051284,259.99039400089237" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-2.0002732499999993 -2.49935465,-2.0002732499999993 -2.49935465,0.29999999999999993 -1.15,0.29999999999999993" data-type="line" data-label="" points="126.96071821655636,411.1364499468213 180.10023327912555,411.1364499468213 180.10023327912555,282.380136364326 255.6294907051284,282.380136364326" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-1.0002732499999993 -2.39935465,-1.0002732499999993 -2.39935465,0.09999999999999987 -1.15,0.09999999999999987" data-type="line" data-label="" points="126.96071821655636,355.1620940382372 185.69766886998397,355.1620940382372 185.69766886998397,293.5750075460428 255.6294907051284,293.5750075460428" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,-0.0002732499999993365 -2.1993546499999996,-0.0002732499999993365 -2.1993546499999996,-0.30000000000000004 -1.15,-0.30000000000000004" data-type="line" data-label="" points="126.96071821655636,299.1877381296532 196.8925400517008,299.1877381296532 196.8925400517008,315.96474990947644 255.6294907051284,315.96474990947644" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,0.9997267500000007 -2.0993546499999995,0.9997267500000007 -2.0993546499999995,-0.5 -1.15,-0.5" data-type="line" data-label="" points="126.96071821655636,243.21338222106917 202.4899756425592,243.21338222106917 202.4899756425592,327.15962109119323 255.6294907051284,327.15962109119323" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.448709299999999,1.9997267500000007 -1.9993546499999995,1.9997267500000007 -1.9993546499999995,-0.7 -1.15,-0.7" data-type="line" data-label="" points="126.96071821655636,187.23902631248512 208.08741123341758,187.23902631248512 208.08741123341758,338.3544922729101 255.6294907051284,338.3544922729101" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-2.9997267500000007 1.9993546499999995,-2.9997267500000007 1.9993546499999995,0.7 1.15,0.7" data-type="line" data-label="" points="513.0392817834438,467.0802158699014 431.91258876658253,467.0802158699014 431.91258876658253,259.99039400089237 384.3705092948717,259.99039400089237" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-1.9997267500000007 2.0993546499999995,-1.9997267500000007 2.0993546499999995,0.30000000000000004 1.15,0.30000000000000004" data-type="line" data-label="" points="513.0392817834438,411.1058599613173 437.5100243574409,411.1058599613173 437.5100243574409,282.380136364326 384.3705092948717,282.380136364326" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,-0.9997267500000007 2.1993546499999996,-0.9997267500000007 2.1993546499999996,0.10000000000000009 1.15,0.10000000000000009" data-type="line" data-label="" points="513.0392817834438,355.1315040527333 443.1074599482993,355.1315040527333 443.1074599482993,293.5750075460428 384.3705092948717,293.5750075460428" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,0.0002732499999993365 2.39935465,0.0002732499999993365 2.39935465,-0.09999999999999987 1.15,-0.09999999999999987" data-type="line" data-label="" points="513.0392817834438,299.15714814414923 454.3023311300161,299.15714814414923 454.3023311300161,304.76987872775965 384.3705092948717,304.76987872775965" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,1.0002732499999993 2.49935465,1.0002732499999993 2.49935465,-0.49999999999999994 1.15,-0.49999999999999994" data-type="line" data-label="" points="513.0392817834438,243.1827922355652 459.8997667208746,243.1827922355652 459.8997667208746,327.15962109119323 384.3705092948717,327.15962109119323" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.4487093,2.0002732499999993 2.59935465,2.0002732499999993 2.59935465,-0.7 1.15,-0.7" data-type="line" data-label="" points="513.0392817834438,187.20843632698114 465.49720231173296,187.20843632698114 465.49720231173296,338.3544922729101 384.3705092948717,338.3544922729101" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="255.62949070512843" y="248.79552281917557" width="128.74101858974328" height="100.7538406354513" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-4" data-y="-3" x="65.2444345147714" y="456.2109978934251" width="61.71628370178496" height="21.769025938456537" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="-4" data-y="-2" x="65.2444345147714" y="400.23664198484107" width="61.71628370178496" height="21.76902593845648" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="-4" data-y="-1" x="65.2444345147714" y="344.26228607625706" width="61.71628370178496" height="21.769025938456537" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="-4" data-y="0" x="65.2444345147714" y="288.287930167673" width="61.71628370178496" height="21.76902593845648" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_5" data-x="-4" data-y="1" x="65.2444345147714" y="232.3135742590889" width="61.71628370178496" height="21.769025938456508" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_6" data-x="-4" data-y="2" x="65.2444345147714" y="176.3392183505049" width="61.71628370178496" height="21.769025938456508" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_7" data-x="4" data-y="-3" x="513.0392817834438" y="456.2109978934251" width="61.716283701784846" height="21.769025938456537" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_8" data-x="4" data-y="-2" x="513.0392817834438" y="400.23664198484107" width="61.716283701784846" height="21.76902593845648" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_9" data-x="4" data-y="-1" x="513.0392817834438" y="344.26228607625706" width="61.716283701784846" height="21.769025938456537" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_10" data-x="4" data-y="0" x="513.0392817834438" y="288.287930167673" width="61.716283701784846" height="21.76902593845648" fill="hsl(320, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_11" data-x="4" data-y="1" x="513.0392817834438" y="232.3135742590889" width="61.716283701784846" height="21.769025938456508" fill="hsl(320, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="schematic_component_12" data-x="4" data-y="2" x="513.0392817834438" y="176.3392183505049" width="61.716283701784846" height="21.769025938456508" fill="hsl(320, 100%, 50%, 0.8)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="netId: .R1 &gt; .pin2 to .U1 &gt; .IN1
2
4
  globalConnNetId: connectivity_net0" data-x="-3.0240319749999998" data-y="-2.7752732499999992" x="145.13432236155336" y="441.9223456965425" width="11.19487118171682" height="25.18846015886288" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="netId: .R2 &gt; .pin2 to .U1 &gt; .IN3
3
5
  globalConnNetId: connectivity_net1" data-x="-2.9740319749999995" data-y="-1.7752732499999992" x="147.93304015698254" y="385.9479897879585" width="11.19487118171682" height="25.188460158862824" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="netId: .R3 &gt; .pin2 to .U1 &gt; .IN4
4
6
  globalConnNetId: connectivity_net2" data-x="-2.9240319749999992" data-y="-0.7752732499999994" x="150.73175795241178" y="329.97363387937446" width="11.19487118171682" height="25.188460158862767" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.017865323928571427"/></g><g><rect data-type="rect" data-label="netId: .R4 &gt; .pin2 to .U1 &gt; .IN6
@@ -84,7 +86,7 @@ orientation: x+" data-x="4.5512907" data-y="-2.0002732499999993" cx="574.7555654
84
86
  const h = svg.getElementById('crosshair-h');
85
87
  const v = svg.getElementById('crosshair-v');
86
88
  const coords = svg.getElementById('coordinates');
87
-
89
+
88
90
  crosshair.style.display = 'block';
89
91
  h.setAttribute('x1', '0');
90
92
  h.setAttribute('x2', '640');
@@ -103,13 +105,13 @@ orientation: x+" data-x="4.5512907" data-y="-2.0002732499999993" cx="574.7555654
103
105
  // y' = (y - ty) / sy
104
106
  const sx = matrix.a;
105
107
  const sy = matrix.d;
106
- const tx = matrix.e;
108
+ const tx = matrix.e;
107
109
  const ty = matrix.f;
108
110
  const realPoint = {
109
111
  x: (x - tx) / sx,
110
112
  y: (y - ty) / sy // Flip y back since we used negative scale
111
113
  }
112
-
114
+
113
115
  coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
114
116
  coords.setAttribute('x', (x + 5).toString());
115
117
  coords.setAttribute('y', (y - 5).toString());
@@ -117,4 +119,146 @@ orientation: x+" data-x="4.5512907" data-y="-2.0002732499999993" cx="574.7555654
117
119
  document.currentScript.parentElement.addEventListener('mouseleave', () => {
118
120
  document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
119
121
  });
120
- ]]></script></svg>
122
+ ]]></script>
123
+ </g>
124
+ <g transform="translate(1216, 200)">
125
+ <style>
126
+ .boundary { fill: rgb(245, 241, 237); }
127
+ .schematic-boundary { fill: none; stroke: #fff; }
128
+ .component { fill: none; stroke: rgb(132, 0, 0); }
129
+ .chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
130
+ .component-pin { fill: none; stroke: rgb(132, 0, 0); }
131
+ .text { font-family: sans-serif; fill: rgb(0, 150, 0); }
132
+ .pin-number { fill: rgb(169, 0, 0); }
133
+ .port-label { fill: rgb(0, 100, 100); }
134
+ .component-name { fill: rgb(0, 100, 100); }
135
+
136
+ </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 220.20181854863262 675.3491671453723 L 313.73923310464124 675.3491671453723 L 313.73923310464124 267.84684411016 L 473.35322560557 267.84684411016" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 220.20181854863262 675.3491671453723 L 313.73923310464124 675.3491671453723 L 313.73923310464124 267.84684411016 L 473.35322560557 267.84684411016" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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 220.20181854863262 565.2215372371724 L 324.75199609546127 565.2215372371724 L 324.75199609546127 311.89789607344 L 473.35322560557 311.89789607344" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 220.20181854863262 565.2215372371724 L 324.75199609546127 565.2215372371724 L 324.75199609546127 311.89789607344 L 473.35322560557 311.89789607344" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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 220.20181854863262 455.09390732897236 L 335.7647590862813 455.09390732897236 L 335.7647590862813 333.92342205508004 L 473.35322560557 333.92342205508004" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 220.20181854863262 455.09390732897236 L 335.7647590862813 455.09390732897236 L 335.7647590862813 333.92342205508004 L 473.35322560557 333.92342205508004" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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 220.20181854863262 344.96627742077237 L 357.7902850679213 344.96627742077237 L 357.7902850679213 377.97447401836 L 473.35322560557 377.97447401836" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 220.20181854863262 344.96627742077237 L 357.7902850679213 344.96627742077237 L 357.7902850679213 377.97447401836 L 473.35322560557 377.97447401836" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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 220.20181854863262 234.83864751257232 L 368.8030480587413 234.83864751257232 L 368.8030480587413 400 L 473.35322560557 400" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 220.20181854863262 234.83864751257232 L 368.8030480587413 234.83864751257232 L 368.8030480587413 400 L 473.35322560557 400" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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 220.20181854863262 124.71101760437233 L 379.81581104956126 124.71101760437233 L 379.81581104956126 422.02552598164 L 473.35322560557 422.02552598164" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 220.20181854863262 124.71101760437233 L 379.81581104956126 124.71101760437233 L 379.81581104956126 422.02552598164 L 473.35322560557 422.02552598164" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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 979.7981814513676 675.2889823956277 L 820.1841889504387 675.2889823956277 L 820.1841889504387 267.84684411016 L 726.6467743944299 267.84684411016" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 979.7981814513676 675.2889823956277 L 820.1841889504387 675.2889823956277 L 820.1841889504387 267.84684411016 L 726.6467743944299 267.84684411016" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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_7__stack1"><path d="M 979.7981814513676 565.1613524874276 L 831.1969519412587 565.1613524874276 L 831.1969519412587 311.89789607344 L 726.6467743944299 311.89789607344" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 979.7981814513676 565.1613524874276 L 831.1969519412587 565.1613524874276 L 831.1969519412587 311.89789607344 L 726.6467743944299 311.89789607344" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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_8__stack1"><path d="M 979.7981814513676 455.0337225792277 L 842.2097149320787 455.0337225792277 L 842.2097149320787 333.92342205508 L 726.6467743944299 333.92342205508" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 979.7981814513676 455.0337225792277 L 842.2097149320787 455.0337225792277 L 842.2097149320787 333.92342205508 L 726.6467743944299 333.92342205508" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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_9__stack1"><path d="M 979.7981814513676 344.90609267102764 L 864.2352409137187 344.90609267102764 L 864.2352409137187 355.94894803671997 L 726.6467743944299 355.94894803671997" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 979.7981814513676 344.90609267102764 L 864.2352409137187 344.90609267102764 L 864.2352409137187 355.94894803671997 L 726.6467743944299 355.94894803671997" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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_10__stack1"><path d="M 979.7981814513676 234.77846276282764 L 875.2480039045388 234.77846276282764 L 875.2480039045388 400 L 726.6467743944299 400" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 979.7981814513676 234.77846276282764 L 875.2480039045388 234.77846276282764 L 875.2480039045388 400 L 726.6467743944299 400" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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_11__stack1"><path d="M 979.7981814513676 124.65083285462765 L 886.2607668953588 124.65083285462765 L 886.2607668953588 422.02552598164 L 726.6467743944299 422.02552598164" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="17.620420785312003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 979.7981814513676 124.65083285462765 L 886.2607668953588 124.65083285462765 L 886.2607668953588 422.02552598164 L 726.6467743944299 422.02552598164" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.2025525981640004px" 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="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_7__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_8__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_9__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_10__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_11__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="517.40427756885" y="245.82131812852" width="165.19144486229993" height="198.22973383475997" stroke-width="2.2025525981640004px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="517.40427756885" y="245.82131812852" width="165.19144486229993" height="198.22973383475997" fill="transparent"/><text class="sch-text" x="600" y="344.9361850459" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="19.822973383476px" transform="rotate(0, 600, 344.9361850459)">U1</text><line class="component-pin sch-component-pin sch-port-line" x1="517.40427756885" y1="267.84684411016" x2="473.35322560557" y2="267.84684411016" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="471.150673007406" y="265.644291511996" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="495.37875158721" y="265.644291511996" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="517.40427756885" y1="289.8723700918" x2="475.555778203734" y2="289.8723700918" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="473.35322560557" cy="289.8723700918" r="2.2025525981640004" stroke-width="2.2025525981640004px"/><rect x="471.150673007406" y="287.669817493636" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="495.37875158721" y="287.669817493636" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="517.40427756885" y1="311.89789607344" x2="473.35322560557" y2="311.89789607344" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><rect x="471.150673007406" y="309.695343475276" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="495.37875158721" y="309.695343475276" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="517.40427756885" y1="333.92342205508004" x2="473.35322560557" y2="333.92342205508004" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><rect x="471.150673007406" y="331.72086945691603" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="495.37875158721" y="331.72086945691603" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="517.40427756885" y1="355.94894803672" x2="475.555778203734" y2="355.94894803672" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="473.35322560557" cy="355.94894803672" r="2.2025525981640004" stroke-width="2.2025525981640004px"/><rect x="471.150673007406" y="353.746395438556" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="495.37875158721" y="353.746395438556" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="517.40427756885" y1="377.97447401836" x2="473.35322560557" y2="377.97447401836" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_5__stack1"><rect x="471.150673007406" y="375.771921420196" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="495.37875158721" y="375.771921420196" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="517.40427756885" y1="400" x2="473.35322560557" y2="400" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_6__stack1"><rect x="471.150673007406" y="397.797447401836" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="495.37875158721" y="397.797447401836" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="517.40427756885" y1="422.02552598164" x2="473.35322560557" y2="422.02552598164" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_7__stack1"><rect x="471.150673007406" y="419.822973383476" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="495.37875158721" y="419.822973383476" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">8</text><line class="component-pin sch-component-pin sch-port-line" x1="682.59572243115" y1="422.02552598164" x2="726.6467743944299" y2="422.02552598164" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_8__stack1"><rect x="724.444221796266" y="419.822973383476" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="704.62124841279" y="419.822973383476" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">9</text><line class="component-pin sch-component-pin sch-port-line" x1="682.59572243115" y1="400" x2="726.6467743944299" y2="400" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_9__stack1"><rect x="724.444221796266" y="397.797447401836" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="704.62124841279" y="397.797447401836" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">10</text><line class="component-pin sch-component-pin sch-port-line" x1="682.59572243115" y1="377.97447401836" x2="724.444221796266" y2="377.97447401836" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_10__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="726.6467743944299" cy="377.97447401836" r="2.2025525981640004" stroke-width="2.2025525981640004px"/><rect x="724.444221796266" y="375.771921420196" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="704.62124841279" y="375.771921420196" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">11</text><line class="component-pin sch-component-pin sch-port-line" x1="682.59572243115" y1="355.94894803671997" x2="726.6467743944299" y2="355.94894803671997" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_11__stack1"><rect x="724.444221796266" y="353.74639543855596" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="704.62124841279" y="353.74639543855596" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">12</text><line class="component-pin sch-component-pin sch-port-line" x1="682.59572243115" y1="333.92342205508" x2="726.6467743944299" y2="333.92342205508" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_12__stack1"><rect x="724.444221796266" y="331.720869456916" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="704.62124841279" y="331.720869456916" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">13</text><line class="component-pin sch-component-pin sch-port-line" x1="682.59572243115" y1="311.89789607344" x2="726.6467743944299" y2="311.89789607344" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_13__stack1"><rect x="724.444221796266" y="309.695343475276" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="704.62124841279" y="309.695343475276" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">14</text><line class="component-pin sch-component-pin sch-port-line" x1="682.59572243115" y1="289.8723700918" x2="724.444221796266" y2="289.8723700918" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_14__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="726.6467743944299" cy="289.8723700918" r="2.2025525981640004" stroke-width="2.2025525981640004px"/><rect x="724.444221796266" y="287.669817493636" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="704.62124841279" y="287.669817493636" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">15</text><line class="component-pin sch-component-pin sch-port-line" x1="682.59572243115" y1="267.84684411016" x2="726.6467743944299" y2="267.84684411016" stroke-width="2.2025525981640004px"/><g class="sch-port" data-schematic-port-id="source_port_0_15__stack1"><rect x="724.444221796266" y="265.644291511996" width="4.405105196328001" height="4.405105196328001" opacity="0"/></g><text class="pin-number sch-pin-number" x="704.62124841279" y="265.644291511996" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="16.51914448623px" transform="">16</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="98.77714218576727" y="659.1030710482303" width="121.42469127830088" height="32.3718226947949" fill="transparent"/><path class="sch-component-symbol-path" d="M 98.77714218576727 675.2889823956277 L 119.01863822186004 675.2889823956277" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 199.9603374279754 675.2889823956277 L 220.20183346406816 675.2889823956277" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 119.01863822186004 659.1030710482303 L 199.9603374279754 659.1030710482303 L 199.9603374279754 691.4748937430252 L 119.01863822186004 691.4748937430252 L 119.01863822186004 659.1030710482303" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="159.48948782491772" y="642.9090647214142" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R1</text><text class="sch-component-text" x="159.48948782491772" y="707.6689000698412" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="98.77714218576727" cy="675.2889823956277" r="2.2025525981640004px" stroke-width="2.2025525981640004px" 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="98.77714218576727" y="548.9754411400302" width="121.42469127830088" height="32.3718226947949" fill="transparent"/><path class="sch-component-symbol-path" d="M 98.77714218576727 565.1613524874276 L 119.01863822186004 565.1613524874276" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 199.9603374279754 565.1613524874276 L 220.20183346406816 565.1613524874276" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 119.01863822186004 548.9754411400302 L 199.9603374279754 548.9754411400302 L 199.9603374279754 581.3472638348251 L 119.01863822186004 581.3472638348251 L 119.01863822186004 548.9754411400302" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="159.48948782491772" y="532.7814348132141" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R2</text><text class="sch-component-text" x="159.48948782491772" y="597.5412701616411" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="98.77714218576727" cy="565.1613524874276" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_3__stack1"><rect class="component-overlay sch-component-overlay" x="98.77714218576727" y="438.8478112318302" width="121.42469127830088" height="32.371822694795014" fill="transparent"/><path class="sch-component-symbol-path" d="M 98.77714218576727 455.0337225792277 L 119.01863822186004 455.0337225792277" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 199.9603374279754 455.0337225792277 L 220.20183346406816 455.0337225792277" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 119.01863822186004 438.8478112318302 L 199.9603374279754 438.8478112318302 L 199.9603374279754 471.2196339266252 L 119.01863822186004 471.2196339266252 L 119.01863822186004 438.8478112318302" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="159.48948782491772" y="422.6538049050141" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R3</text><text class="sch-component-text" x="159.48948782491772" y="487.41364025344126" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="98.77714218576727" cy="455.0337225792277" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_4__stack1"><rect class="component-overlay sch-component-overlay" x="98.77714218576727" y="328.72018132363013" width="121.42469127830088" height="32.371822694795014" fill="transparent"/><path class="sch-component-symbol-path" d="M 98.77714218576727 344.90609267102764 L 119.01863822186004 344.90609267102764" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 199.9603374279754 344.90609267102764 L 220.20183346406816 344.90609267102764" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 119.01863822186004 328.72018132363013 L 199.9603374279754 328.72018132363013 L 199.9603374279754 361.09200401842514 L 119.01863822186004 361.09200401842514 L 119.01863822186004 328.72018132363013" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="159.48948782491772" y="312.52617499681406" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R4</text><text class="sch-component-text" x="159.48948782491772" y="377.2860103452412" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="98.77714218576727" cy="344.90609267102764" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_5__stack1"><rect class="component-overlay sch-component-overlay" x="98.77714218576727" y="218.59255141543014" width="121.42469127830088" height="32.371822694795014" fill="transparent"/><path class="sch-component-symbol-path" d="M 98.77714218576727 234.77846276282764 L 119.01863822186004 234.77846276282764" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 199.9603374279754 234.77846276282764 L 220.20183346406816 234.77846276282764" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 119.01863822186004 218.59255141543014 L 199.9603374279754 218.59255141543014 L 199.9603374279754 250.96437411022515 L 119.01863822186004 250.96437411022515 L 119.01863822186004 218.59255141543014" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="159.48948782491772" y="202.39854508861407" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R5</text><text class="sch-component-text" x="159.48948782491772" y="267.1583804370412" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="98.77714218576727" cy="234.77846276282764" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_6__stack1"><rect class="component-overlay sch-component-overlay" x="98.77714218576727" y="108.46492150723014" width="121.42469127830088" height="32.371822694795014" fill="transparent"/><path class="sch-component-symbol-path" d="M 98.77714218576727 124.65083285462765 L 119.01863822186004 124.65083285462765" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 199.9603374279754 124.65083285462765 L 220.20183346406816 124.65083285462765" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 119.01863822186004 108.46492150723014 L 199.9603374279754 108.46492150723014 L 199.9603374279754 140.83674420202516 L 119.01863822186004 140.83674420202516 L 119.01863822186004 108.46492150723014" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="159.48948782491772" y="92.27091518041408" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R6</text><text class="sch-component-text" x="159.48948782491772" y="157.03075052884122" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="98.77714218576727" cy="124.65083285462765" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_7__stack1"><rect class="component-overlay sch-component-overlay" x="979.7981814513676" y="659.1030710482303" width="121.42469127830054" height="32.3718226947949" fill="transparent"/><path class="sch-component-symbol-path" d="M 979.7981814513676 675.2889823956277 L 1000.0396774874603 675.2889823956277" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1080.9813766935754 675.2889823956277 L 1101.222872729668 675.2889823956277" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1000.0396774874603 659.1030710482303 L 1080.9813766935754 659.1030710482303 L 1080.9813766935754 691.4748937430252 L 1000.0396774874603 691.4748937430252 L 1000.0396774874603 659.1030710482303" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1040.5105270905178" y="642.9090647214142" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R7</text><text class="sch-component-text" x="1040.5105270905178" y="707.6689000698412" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="1101.222872729668" cy="675.2889823956277" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_8__stack1"><rect class="component-overlay sch-component-overlay" x="979.7981814513676" y="548.9754411400302" width="121.42469127830054" height="32.3718226947949" fill="transparent"/><path class="sch-component-symbol-path" d="M 979.7981814513676 565.1613524874276 L 1000.0396774874603 565.1613524874276" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1080.9813766935754 565.1613524874276 L 1101.222872729668 565.1613524874276" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1000.0396774874603 548.9754411400302 L 1080.9813766935754 548.9754411400302 L 1080.9813766935754 581.3472638348251 L 1000.0396774874603 581.3472638348251 L 1000.0396774874603 548.9754411400302" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1040.5105270905178" y="532.7814348132141" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R8</text><text class="sch-component-text" x="1040.5105270905178" y="597.5412701616411" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="1101.222872729668" cy="565.1613524874276" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_9__stack1"><rect class="component-overlay sch-component-overlay" x="979.7981814513676" y="438.84781123183024" width="121.42469127830054" height="32.3718226947949" fill="transparent"/><path class="sch-component-symbol-path" d="M 979.7981814513676 455.0337225792277 L 1000.0396774874603 455.0337225792277" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1080.9813766935754 455.0337225792277 L 1101.222872729668 455.0337225792277" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1000.0396774874603 438.84781123183024 L 1080.9813766935754 438.84781123183024 L 1080.9813766935754 471.21963392662514 L 1000.0396774874603 471.21963392662514 L 1000.0396774874603 438.84781123183024" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1040.5105270905178" y="422.6538049050142" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R9</text><text class="sch-component-text" x="1040.5105270905178" y="487.41364025344114" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="1101.222872729668" cy="455.0337225792277" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_10__stack1"><rect class="component-overlay sch-component-overlay" x="979.7981814513676" y="328.7201813236302" width="121.42469127830054" height="32.3718226947949" fill="transparent"/><path class="sch-component-symbol-path" d="M 979.7981814513676 344.90609267102764 L 1000.0396774874603 344.90609267102764" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1080.9813766935754 344.90609267102764 L 1101.222872729668 344.90609267102764" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1000.0396774874603 328.7201813236302 L 1080.9813766935754 328.7201813236302 L 1080.9813766935754 361.0920040184251 L 1000.0396774874603 361.0920040184251 L 1000.0396774874603 328.7201813236302" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1040.5105270905178" y="312.5261749968141" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R10</text><text class="sch-component-text" x="1040.5105270905178" y="377.28601034524115" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="1101.222872729668" cy="344.90609267102764" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_11__stack1"><rect class="component-overlay sch-component-overlay" x="979.7981814513676" y="218.59255141543017" width="121.42469127830054" height="32.37182269479496" fill="transparent"/><path class="sch-component-symbol-path" d="M 979.7981814513676 234.77846276282764 L 1000.0396774874603 234.77846276282764" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1080.9813766935754 234.77846276282764 L 1101.222872729668 234.77846276282764" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1000.0396774874603 218.59255141543017 L 1080.9813766935754 218.59255141543017 L 1080.9813766935754 250.96437411022512 L 1000.0396774874603 250.96437411022512 L 1000.0396774874603 218.59255141543017" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1040.5105270905178" y="202.39854508861416" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R11</text><text class="sch-component-text" x="1040.5105270905178" y="267.15838043704116" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="1101.222872729668" cy="234.77846276282764" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_12__stack1"><rect class="component-overlay sch-component-overlay" x="979.7981814513676" y="108.46492150723019" width="121.42469127830054" height="32.37182269479494" fill="transparent"/><path class="sch-component-symbol-path" d="M 979.7981814513676 124.65083285462765 L 1000.0396774874603 124.65083285462765" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1080.9813766935754 124.65083285462765 L 1101.222872729668 124.65083285462765" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1000.0396774874603 108.46492150723019 L 1080.9813766935754 108.46492150723019 L 1080.9813766935754 140.83674420202513 L 1000.0396774874603 140.83674420202513 L 1000.0396774874603 108.46492150723019" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.2025525981640004px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1040.5105270905178" y="92.27091518041416" stroke="rgb(245, 241, 237)" stroke-width="2.2025525981640004px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="19.822973383476px">R12</text><text class="sch-component-text" x="1040.5105270905178" y="157.03075052884114" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="19.822973383476px"></text><circle class="component-pin sch-component-pin" cx="1101.222872729668" cy="124.65083285462765" r="2.2025525981640004px" stroke-width="2.2025525981640004px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="473.35322560557" cy="267.84684411016" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="473.35322560557" cy="289.8723700918" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="473.35322560557" cy="311.89789607344" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="473.35322560557" cy="333.92342205508004" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="473.35322560557" cy="355.94894803672" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_5__stack1"><circle cx="473.35322560557" cy="377.97447401836" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_6__stack1"><circle cx="473.35322560557" cy="400" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_7__stack1"><circle cx="473.35322560557" cy="422.02552598164" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_8__stack1"><circle cx="726.6467743944299" cy="422.02552598164" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_9__stack1"><circle cx="726.6467743944299" cy="400" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_10__stack1"><circle cx="726.6467743944299" cy="377.97447401836" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_11__stack1"><circle cx="726.6467743944299" cy="355.94894803671997" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_12__stack1"><circle cx="726.6467743944299" cy="333.92342205508" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_13__stack1"><circle cx="726.6467743944299" cy="311.89789607344" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_14__stack1"><circle cx="726.6467743944299" cy="289.8723700918" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_15__stack1"><circle cx="726.6467743944299" cy="267.84684411016" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="126.45119885245771" cy="675.2889823956277" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="247.875875215323" cy="675.3491671453723" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="126.45119885245771" cy="565.1613524874276" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="247.875875215323" cy="565.2215372371724" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_0__stack1"><circle cx="126.45119885245771" cy="455.0337225792277" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_1__stack1"><circle cx="247.875875215323" cy="455.09390732897236" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_0__stack1"><circle cx="126.45119885245771" cy="344.90609267102764" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_1__stack1"><circle cx="247.875875215323" cy="344.96627742077237" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_5_0__stack1"><circle cx="126.45119885245771" cy="234.77846276282764" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_5_1__stack1"><circle cx="247.875875215323" cy="234.83864751257232" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_6_0__stack1"><circle cx="126.45119885245771" cy="124.65083285462765" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_6_1__stack1"><circle cx="247.875875215323" cy="124.71101760437233" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_7_0__stack1"><circle cx="1007.4722381180578" cy="675.2889823956277" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_7_1__stack1"><circle cx="1128.8969144809228" cy="675.3491671453723" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_8_0__stack1"><circle cx="1007.4722381180578" cy="565.1613524874276" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_8_1__stack1"><circle cx="1128.8969144809228" cy="565.2215372371724" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_9_0__stack1"><circle cx="1007.4722381180578" cy="455.0337225792277" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_9_1__stack1"><circle cx="1128.8969144809228" cy="455.09390732897236" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_10_0__stack1"><circle cx="1007.4722381180578" cy="344.90609267102764" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_10_1__stack1"><circle cx="1128.8969144809228" cy="344.96627742077237" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_11_0__stack1"><circle cx="1007.4722381180578" cy="234.77846276282764" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_11_1__stack1"><circle cx="1128.8969144809228" cy="234.83864751257232" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_12_0__stack1"><circle cx="1007.4722381180578" cy="124.65083285462765" r="4.405105196328001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_12_1__stack1"><circle cx="1128.8969144809228" cy="124.71101760437233" r="4.405105196328001" 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="
137
+ M 266.9705258266369,675.3491671453723
138
+ L 255.9577628358169,669.4022751303296
139
+ L 255.9577628358169,631.6358399138109
140
+ L 277.9832888174569,631.6358399138109
141
+ L 277.9832888174569,669.4022751303296
142
+ Z
143
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" x="266.9705258266369" y="665.4376804536344" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 266.9705258266369 665.4376804536344)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" d="
144
+ M 272.47690732204694,565.2215372371724
145
+ L 261.4641443312269,559.2746452221296
146
+ L 261.4641443312269,521.5082100056109
147
+ L 283.48967031286696,521.5082100056109
148
+ L 283.48967031286696,559.2746452221296
149
+ Z
150
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" x="272.47690732204694" y="555.3100505454344" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 272.47690732204694 555.3100505454344)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" d="
151
+ M 277.9832888174569,455.09390732897236
152
+ L 266.9705258266369,449.14701531392956
153
+ L 266.9705258266369,411.38058009741087
154
+ L 288.99605180827695,411.38058009741087
155
+ L 288.99605180827695,449.14701531392956
156
+ Z
157
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><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="277.9832888174569" y="445.1824206372344" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 277.9832888174569 445.1824206372344)">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="
158
+ M 288.9960518082769,344.96627742077237
159
+ L 277.98328881745687,339.01938540572957
160
+ L 277.98328881745687,301.2529501892109
161
+ L 300.0088147990969,301.2529501892109
162
+ L 300.0088147990969,339.01938540572957
163
+ Z
164
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><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="288.9960518082769" y="335.0547907290344" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 288.9960518082769 335.0547907290344)">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="
165
+ M 294.5024333036869,234.83864751257232
166
+ L 283.4896703128669,228.89175549752952
167
+ L 283.4896703128669,191.1253202810108
168
+ L 305.51519629450695,191.1253202810108
169
+ L 305.51519629450695,228.89175549752952
170
+ Z
171
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_4__stack1" x="294.5024333036869" y="224.92716082083433" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 294.5024333036869 224.92716082083433)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_5__stack1" d="
172
+ M 300.00881479909697,124.71101760437233
173
+ L 288.99605180827695,118.76412558932952
174
+ L 288.99605180827695,80.99769037281081
175
+ L 311.021577789917,80.99769037281081
176
+ L 311.021577789917,118.76412558932952
177
+ Z
178
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_5__stack1" x="300.00881479909697" y="114.79953091263432" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 300.00881479909697 114.79953091263432)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_6__stack1" d="
179
+ M 933.029474173363,124.65083285462765
180
+ L 922.0167111825431,118.70394083958485
181
+ L 922.0167111825431,80.93750562306613
182
+ L 944.042237164183,80.93750562306613
183
+ L 944.042237164183,118.70394083958485
184
+ Z
185
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_6__stack1" x="933.029474173363" y="114.73934616288965" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 933.029474173363 114.73934616288965)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_7__stack1" d="
186
+ M 927.5230926779532,234.77846276282764
187
+ L 916.5103296871332,228.83157074778484
188
+ L 916.5103296871332,191.06513553126612
189
+ L 938.5358556687731,191.06513553126612
190
+ L 938.5358556687731,228.83157074778484
191
+ Z
192
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_7__stack1" x="927.5230926779532" y="224.86697607108965" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 927.5230926779532 224.86697607108965)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_8__stack1" d="
193
+ M 922.0167111825431,344.90609267102764
194
+ L 911.0039481917231,338.95920065598483
195
+ L 911.0039481917231,301.19276543946614
196
+ L 933.029474173363,301.19276543946614
197
+ L 933.029474173363,338.95920065598483
198
+ Z
199
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_8__stack1" x="922.0167111825431" y="334.99460597928964" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 922.0167111825431 334.99460597928964)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_9__stack1" d="
200
+ M 911.0039481917231,455.0337225792277
201
+ L 899.9911852009031,449.0868305641849
202
+ L 899.9911852009031,411.32039534766614
203
+ L 922.0167111825431,411.32039534766614
204
+ L 922.0167111825431,449.0868305641849
205
+ Z
206
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_9__stack1" x="911.0039481917231" y="445.1222358874897" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 911.0039481917231 445.1222358874897)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_10__stack1" d="
207
+ M 905.4975666963131,565.1613524874276
208
+ L 894.4848037054932,559.2144604723849
209
+ L 894.4848037054932,521.4480252558661
210
+ L 916.5103296871331,521.4480252558661
211
+ L 916.5103296871331,559.2144604723849
212
+ Z
213
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_10__stack1" x="905.4975666963131" y="555.2498657956896" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 905.4975666963131 555.2498657956896)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_11__stack1" d="
214
+ M 899.9911852009031,675.2889823956277
215
+ L 888.9784222100832,669.342090380585
216
+ L 888.9784222100832,631.5756551640662
217
+ L 911.0039481917231,631.5756551640662
218
+ L 911.0039481917231,669.342090380585
219
+ Z
220
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_11__stack1" x="899.9911852009031" y="665.3774957038897" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="rotate(-90 899.9911852009031 665.3774957038897)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_12__stack1" d="
221
+ M 98.77714218576733,675.2889823956277
222
+ L 92.83025017072453,686.3017453864477
223
+ L 55.06381495420581,686.3017453864477
224
+ L 55.06381495420581,664.2762194048078
225
+ L 92.83025017072454,664.2762194048078
226
+ Z
227
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_12__stack1" x="88.86565549402933" y="675.2889823956277" fill="rgb(132, 0, 0)" text-anchor="end" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" 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_13__stack1" d="
228
+ M 1101.2228578142326,124.71101760437233
229
+ L 1107.1697498292754,113.69825461355234
230
+ L 1144.9361850457942,113.69825461355234
231
+ L 1144.9361850457942,135.72378059519232
232
+ L 1107.1697498292754,135.72378059519232
233
+ Z
234
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_13__stack1" x="1111.1343445059706" y="124.71101760437233" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" 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_14__stack1" d="
235
+ M 98.77714218576733,455.0337225792277
236
+ L 92.83025017072453,466.0464855700477
237
+ L 55.06381495420581,466.0464855700477
238
+ L 55.06381495420581,444.02095958840766
239
+ L 92.83025017072454,444.02095958840766
240
+ Z
241
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_14__stack1" x="88.86565549402933" y="455.0337225792277" fill="rgb(132, 0, 0)" text-anchor="end" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" 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_15__stack1" d="
242
+ M 1101.2228578142326,344.96627742077237
243
+ L 1107.1697498292754,333.95351442995235
244
+ L 1144.9361850457942,333.95351442995235
245
+ L 1144.9361850457942,355.9790404115924
246
+ L 1107.1697498292754,355.9790404115924
247
+ Z
248
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_15__stack1" x="1111.1343445059706" y="344.96627742077237" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" 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_16__stack1" d="
249
+ M 98.77714218576733,234.77846276282764
250
+ L 92.83025017072453,245.79122575364764
251
+ L 55.06381495420581,245.79122575364764
252
+ L 55.06381495420581,223.76569977200765
253
+ L 92.83025017072454,223.76569977200765
254
+ Z
255
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_16__stack1" x="88.86565549402933" y="234.77846276282764" fill="rgb(132, 0, 0)" text-anchor="end" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" 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_17__stack1" d="
256
+ M 1101.2228578142326,565.2215372371724
257
+ L 1107.1697498292754,554.2087742463524
258
+ L 1144.9361850457942,554.2087742463524
259
+ L 1144.9361850457942,576.2343002279923
260
+ L 1107.1697498292754,576.2343002279923
261
+ Z
262
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.2025525981640004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_17__stack1" x="1111.1343445059706" y="565.2215372371724" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="19.822973383476px" transform="">XX</text>
263
+ </g>
264
+ </svg>
@@ -1,4 +1,6 @@
1
- <svg width="640" height="640" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="white"/><g><polyline data-points="-2.2855604555,-0.5519250999999993 3.2144395445,-0.5519250999999993" data-type="line" data-label="" points="49.983280260645415,365.6995529759246 505.38482182413946,365.6995529759246" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.2855604555000015,0.5519250999999993 3.2144395444999985,0.5519250999999993" data-type="line" data-label="" points="49.9832802606453,274.3004470240754 505.38482182413935,274.3004470240754" fill="none" stroke="hsl(102, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.5938689350000006,0.004526300000001031 3.9061310649999994,0.004526300000001031" data-type="line" data-label="" points="107.2555320282994,319.6252210913492 562.6570735917935,319.6252210913492" fill="none" stroke="hsl(321, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-2" data-y="0" x="40" y="274.3004470240754" width="67.2555320282994" height="91.39910595184915" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.012077253803571426"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="3.5" data-y="0" x="495.40154156349405" y="274.3004470240754" width="67.2555320282994" height="91.39910595184915" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.012077253803571426"/></g><g><rect data-type="rect" data-label="netId: collector
1
+ <svg width="2416" height="1200" viewBox="0 0 2416 1200" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on the left and Circuit JSON schematic on the right">
2
+ <g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
3
+ <rect width="100%" height="100%" fill="white"/><g><polyline data-points="-2.2855604555,-0.5519250999999993 3.2144395445,-0.5519250999999993" data-type="line" data-label="" points="49.983280260645415,365.6995529759246 505.38482182413946,365.6995529759246" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.2855604555000015,0.5519250999999993 3.2144395444999985,0.5519250999999993" data-type="line" data-label="" points="49.9832802606453,274.3004470240754 505.38482182413935,274.3004470240754" fill="none" stroke="hsl(102, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.5938689350000006,0.004526300000001031 3.9061310649999994,0.004526300000001031" data-type="line" data-label="" points="107.2555320282994,319.6252210913492 562.6570735917935,319.6252210913492" fill="none" stroke="hsl(321, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-2" data-y="0" x="40" y="274.3004470240754" width="67.2555320282994" height="91.39910595184915" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.012077253803571426"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="3.5" data-y="0" x="495.40154156349405" y="274.3004470240754" width="67.2555320282994" height="91.39910595184915" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.012077253803571426"/></g><g><rect data-type="rect" data-label="netId: collector
2
4
  globalConnNetId: connectivity_net0" data-x="-2.2855604555" data-y="-0.7779250999999993" x="41.70325223221825" y="365.78235325620886" width="16.560056056854336" height="37.26012612792226" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.012077253803571426"/></g><g><rect data-type="rect" data-label="netId: collector
3
5
  globalConnNetId: connectivity_net0" data-x="3.2144395445" data-y="-0.7779250999999993" x="497.1047937957122" y="365.78235325620886" width="16.56005605685442" height="37.26012612792226" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.012077253803571426"/></g><g><rect data-type="rect" data-label="netId: emitter
4
6
  globalConnNetId: connectivity_net1" data-x="-2.2855604555000015" data-y="0.7779250999999993" x="41.703252232218134" y="236.95752061586887" width="16.560056056854336" height="37.26012612792226" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.012077253803571426"/></g><g><rect data-type="rect" data-label="netId: emitter
@@ -26,7 +28,7 @@ orientation: x+" data-x="3.9061310649999994" data-y="0.004526300000001031" cx="5
26
28
  const h = svg.getElementById('crosshair-h');
27
29
  const v = svg.getElementById('crosshair-v');
28
30
  const coords = svg.getElementById('coordinates');
29
-
31
+
30
32
  crosshair.style.display = 'block';
31
33
  h.setAttribute('x1', '0');
32
34
  h.setAttribute('x2', '640');
@@ -45,13 +47,13 @@ orientation: x+" data-x="3.9061310649999994" data-y="0.004526300000001031" cx="5
45
47
  // y' = (y - ty) / sy
46
48
  const sx = matrix.a;
47
49
  const sy = matrix.d;
48
- const tx = matrix.e;
50
+ const tx = matrix.e;
49
51
  const ty = matrix.f;
50
52
  const realPoint = {
51
53
  x: (x - tx) / sx,
52
54
  y: (y - ty) / sy // Flip y back since we used negative scale
53
55
  }
54
-
56
+
55
57
  coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
56
58
  coords.setAttribute('x', (x + 5).toString());
57
59
  coords.setAttribute('y', (y - 5).toString());
@@ -59,4 +61,62 @@ orientation: x+" data-x="3.9061310649999994" data-y="0.004526300000001031" cx="5
59
61
  document.currentScript.parentElement.addEventListener('mouseleave', () => {
60
62
  document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
61
63
  });
62
- ]]></script></svg>
64
+ ]]></script>
65
+ </g>
66
+ <g transform="translate(1216, 200)">
67
+ <style>
68
+ .boundary { fill: rgb(245, 241, 237); }
69
+ .schematic-boundary { fill: none; stroke: #fff; }
70
+ .component { fill: none; stroke: rgb(132, 0, 0); }
71
+ .chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
72
+ .component-pin { fill: none; stroke: rgb(132, 0, 0); }
73
+ .text { font-family: sans-serif; fill: rgb(0, 150, 0); }
74
+ .pin-number { fill: rgb(169, 0, 0); }
75
+ .port-label { fill: rgb(0, 100, 100); }
76
+ .component-name { fill: rgb(0, 100, 100); }
77
+
78
+ </style><rect class="boundary" x="0" y="0" width="1200" height="800"/><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="151.471407050165" y="376.7552437745223" width="15.300142126269975" height="46.48951245095543" stroke-width="3.060028425254px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="151.471407050165" y="376.7552437745223" width="15.300142126269975" height="46.48951245095543" fill="transparent"/><text class="sch-text" x="159.1214781133" y="400" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="27.540255827286px" transform="rotate(0, 159.1214781133, 400)">Q1_NPN</text><line class="component-pin sch-component-pin sch-port-line" x1="115.43032256537595" y1="423.2447562254777" x2="115.43032256537595" y2="481.3852963053037" stroke-width="3.060028425254px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="115.43032256537595" cy="484.44532473055773" r="3.060028425254" stroke-width="3.060028425254px"/><rect x="112.37029414012194" y="481.3852963053037" width="6.120056850508" height="6.120056850508" opacity="0"/></g><text class="pin-number sch-pin-number" x="112.37029414012193" y="453.8450404780177" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="22.950213189405px" transform="rotate(-90 112.37029414012193 453.8450404780177)">1</text><line class="component-pin sch-component-pin sch-port-line" x1="115.43032256537577" y1="376.7552437745223" x2="115.43032256537577" y2="318.6147036946963" stroke-width="3.060028425254px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="115.43032256537577" cy="315.55467526944227" r="3.060028425254" stroke-width="3.060028425254px"/><rect x="112.37029414012177" y="312.49464684418825" width="6.120056850508" height="6.120056850508" opacity="0"/></g><text class="pin-number sch-pin-number" x="112.37029414012176" y="346.1549595219823" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="22.950213189405px" transform="rotate(-90 112.37029414012176 346.1549595219823)">2</text><line class="component-pin sch-component-pin sch-port-line" x1="166.77154917643497" y1="399.30746966693846" x2="218.2000798519799" y2="399.30746966693846" stroke-width="3.060028425254px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="221.26010827723388" cy="399.30746966693846" r="3.060028425254" stroke-width="3.060028425254px"/><rect x="218.2000798519799" y="396.24744124168444" width="6.120056850508" height="6.120056850508" opacity="0"/></g><text class="pin-number sch-pin-number" x="194.0158287268344" y="396.2474412416845" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="22.950213189405px" 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="992.979223995015" y="376.7552437745223" width="15.300142126269975" height="46.48951245095543" stroke-width="3.060028425254px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="992.979223995015" y="376.7552437745223" width="15.300142126269975" height="46.48951245095543" fill="transparent"/><text class="sch-text" x="1000.6292950581501" y="400" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="27.540255827286px" transform="rotate(0, 1000.6292950581501, 400)">Q2_PNP</text><line class="component-pin sch-component-pin sch-port-line" x1="956.9381395102259" y1="423.2447562254777" x2="956.9381395102259" y2="481.3852963053037" stroke-width="3.060028425254px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="956.9381395102259" cy="484.44532473055773" r="3.060028425254" stroke-width="3.060028425254px"/><rect x="953.8781110849719" y="481.3852963053037" width="6.120056850508" height="6.120056850508" opacity="0"/></g><text class="pin-number sch-pin-number" x="953.878111084972" y="453.8450404780177" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="22.950213189405px" transform="rotate(-90 953.878111084972 453.8450404780177)">1</text><line class="component-pin sch-component-pin sch-port-line" x1="956.9381395102257" y1="376.7552437745223" x2="956.9381395102257" y2="318.6147036946963" stroke-width="3.060028425254px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="956.9381395102257" cy="315.55467526944227" r="3.060028425254" stroke-width="3.060028425254px"/><rect x="953.8781110849717" y="312.49464684418825" width="6.120056850508" height="6.120056850508" opacity="0"/></g><text class="pin-number sch-pin-number" x="953.8781110849718" y="346.1549595219823" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="22.950213189405px" transform="rotate(-90 953.8781110849718 346.1549595219823)">2</text><line class="component-pin sch-component-pin sch-port-line" x1="1008.279366121285" y1="399.30746966693846" x2="1059.70789679683" y2="399.30746966693846" stroke-width="3.060028425254px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="1062.767925222084" cy="399.30746966693846" r="3.060028425254" stroke-width="3.060028425254px"/><rect x="1059.70789679683" y="396.24744124168444" width="6.120056850508" height="6.120056850508" opacity="0"/></g><text class="pin-number sch-pin-number" x="1035.5236456716846" y="396.2474412416845" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="22.950213189405px" transform="">3</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="115.43032256537595" cy="484.44532473055773" r="6.120056850508" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="115.43032256537577" cy="315.55467526944227" r="6.120056850508" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="221.26010827723388" cy="399.30746966693846" r="6.120056850508" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="956.9381395102259" cy="484.44532473055773" r="6.120056850508" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="956.9381395102257" cy="315.55467526944227" r="6.120056850508" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="1062.767925222084" cy="399.30746966693846" r="6.120056850508" fill="red" opacity="0"/></g><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" d="
79
+ M 115.43032256537595,484.44532473055773
80
+ L 130.73046469164595,492.7074014787435
81
+ L 130.73046469164595,545.1766888770987
82
+ L 100.13018043910594,545.1766888770987
83
+ L 100.13018043910594,492.7074014787435
84
+ Z
85
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.060028425254px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" x="115.43032256537595" y="498.21545264420075" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="27.540255827286px" transform="rotate(90 115.43032256537595 498.21545264420075)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" d="
86
+ M 956.9381395102259,484.44532473055773
87
+ L 972.2382816364959,492.7074014787435
88
+ L 972.2382816364959,545.1766888770987
89
+ L 941.637997383956,545.1766888770987
90
+ L 941.637997383956,492.7074014787435
91
+ Z
92
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.060028425254px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" x="956.9381395102259" y="498.21545264420075" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="27.540255827286px" transform="rotate(90 956.9381395102259 498.21545264420075)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" d="
93
+ M 115.43032256537577,315.55467526944227
94
+ L 100.13018043910577,307.2925985212565
95
+ L 100.13018043910577,254.8233111229012
96
+ L 130.73046469164578,254.8233111229012
97
+ L 130.73046469164578,307.2925985212565
98
+ Z
99
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.060028425254px"/><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="115.43032256537577" y="301.78454735579925" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="27.540255827286px" transform="rotate(-90 115.43032256537577 301.78454735579925)">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="
100
+ M 956.9381395102257,315.55467526944227
101
+ L 941.6379973839557,307.2925985212565
102
+ L 941.6379973839557,254.8233111229012
103
+ L 972.2382816364957,254.8233111229012
104
+ L 972.2382816364957,307.2925985212565
105
+ Z
106
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.060028425254px"/><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="956.9381395102257" y="301.78454735579925" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="27.540255827286px" transform="rotate(-90 956.9381395102257 301.78454735579925)">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="
107
+ M 221.26010827723388,399.30746966693846
108
+ L 229.52218502541967,384.0073275406685
109
+ L 281.99147242377495,384.0073275406685
110
+ L 281.99147242377495,414.60761179320843
111
+ L 229.52218502541967,414.60761179320843
112
+ Z
113
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.060028425254px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_4__stack1" x="235.03023619087688" y="399.30746966693846" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="27.540255827286px" 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_5__stack1" d="
114
+ M 1062.767925222084,399.30746966693846
115
+ L 1071.0300019702697,384.0073275406685
116
+ L 1123.4992893686249,384.0073275406685
117
+ L 1123.4992893686249,414.60761179320843
118
+ L 1071.0300019702697,414.60761179320843
119
+ Z
120
+ " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.060028425254px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_5__stack1" x="1076.5380531357268" y="399.30746966693846" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="27.540255827286px" transform="">XX</text>
121
+ </g>
122
+ </svg>