@tscircuit/schematic-trace-solver 0.0.101 → 0.0.102

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 (32) hide show
  1. package/dist/index.d.ts +13 -6
  2. package/dist/index.js +213 -64
  3. package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceSingleLineSolver2/SchematicTraceSingleLineSolver2.ts +13 -5
  4. package/lib/solvers/TraceOverlapShiftSolver/TraceOverlapIssueSolver/TraceOverlapIssueSolver.ts +168 -24
  5. package/lib/solvers/TraceOverlapShiftSolver/TraceOverlapShiftSolver.ts +128 -48
  6. package/package.json +1 -1
  7. package/site/bug-reports/bug-report-20260716T144856Z.page.tsx +4 -0
  8. package/site/bug-reports/bug-report-20260717T022934Z.page.tsx +4 -0
  9. package/site/bug-reports/bug-report-20260717T031704Z.page.tsx +4 -0
  10. package/tests/bug-reports/bug-report-20260706T213649Z/__snapshots__/bug-report-20260706T213649Z.snap.svg +3 -3
  11. package/tests/bug-reports/bug-report-20260706T220324Z/__snapshots__/bug-report-20260706T220324Z.snap.svg +3 -3
  12. package/tests/bug-reports/bug-report-20260707T092615Z/__snapshots__/bug-report-20260707T092615Z.snap.svg +5 -5
  13. package/tests/bug-reports/bug-report-20260707T140410Z/__snapshots__/bug-report-20260707T140410Z.snap.svg +3 -3
  14. package/tests/bug-reports/bug-report-20260716T144856Z/__snapshots__/bug-report-20260716T144856Z.snap.svg +149 -0
  15. package/tests/bug-reports/bug-report-20260716T144856Z/bug-report-20260716T144856Z.json +693 -0
  16. package/tests/bug-reports/bug-report-20260716T144856Z/bug-report-20260716T144856Z.test.ts +12 -0
  17. package/tests/bug-reports/bug-report-20260717T022934Z/__snapshots__/bug-report-20260717T022934Z.snap.svg +130 -0
  18. package/tests/bug-reports/bug-report-20260717T022934Z/bug-report-20260717T022934Z.json +543 -0
  19. package/tests/bug-reports/bug-report-20260717T022934Z/bug-report-20260717T022934Z.test.ts +12 -0
  20. package/tests/bug-reports/bug-report-20260717T031704Z/__snapshots__/bug-report-20260717T031704Z.snap.svg +48 -0
  21. package/tests/bug-reports/bug-report-20260717T031704Z/bug-report-20260717T031704Z.json +77 -0
  22. package/tests/bug-reports/bug-report-20260717T031704Z/bug-report-20260717T031704Z.test.ts +12 -0
  23. package/tests/examples/__snapshots__/example11.snap.svg +19 -19
  24. package/tests/examples/__snapshots__/example19.snap.svg +3 -5
  25. package/tests/examples/__snapshots__/example29.snap.svg +13 -13
  26. package/tests/examples/__snapshots__/example37.snap.svg +4 -2
  27. package/tests/examples/example16.test.ts +22 -0
  28. package/tests/repros/__snapshots__/repro-rp2040-gamepad-trace-alignment.snap.svg +2 -8
  29. package/tests/repros/__snapshots__/repro47-endpoint-obstacle-detour.snap.svg +19 -19
  30. package/tests/repros/__snapshots__/trace-overlap-box-resistor.snap.svg +10 -10
  31. package/tests/repros/repro47-endpoint-obstacle-detour.test.ts +30 -0
  32. package/tests/solvers/TraceOverlapShiftSolver/TraceOverlapShiftSolver.test.ts +174 -0
@@ -0,0 +1,130 @@
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.3,1.3 1.3,-0.19999999999999996" data-type="line" data-label="" points="463.70744010088265,217.20680958385876 428.3984867591425,270.1702395964691" fill="none" stroke="hsl(72, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.5500000000000003,2.5 3.9,1.9000000000000001" data-type="line" data-label="" points="507.843631778058,174.8360655737705 520.2017654476671,196.0214375788146" fill="none" stroke="hsl(272, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="2.65,2.5 2.3,1.9000000000000001" data-type="line" data-label="" points="476.06557377049177,174.8360655737705 463.70744010088265,196.0214375788146" fill="none" stroke="hsl(272, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.9,1.3 1.3,-0.6" data-type="line" data-label="" points="520.2017654476671,217.20680958385876 428.3984867591425,284.2938209331652" fill="none" stroke="hsl(224, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="5.3999378,1.9499999999999997 5.4,1.5" data-type="line" data-label="" points="573.1629992433795,194.25598991172762 573.1651954602773,210.14501891551072" fill="none" stroke="hsl(24, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="5.4,0.8999999999999999 1.3,0.20000000000000007" data-type="line" data-label="" points="573.1651954602773,231.33039092055486 428.3984867591425,256.046658259773" fill="none" stroke="hsl(344, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-7.1,1.45 -7.1,1.9999999999999998" data-type="line" data-label="" points="131.80327868852456,211.91046658259773 131.80327868852456,192.4905422446406" fill="none" stroke="hsl(136, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-1.3,0.6 -1.3,-0.20000000000000007" data-type="line" data-label="" points="336.59520807061784,241.9230769230769 336.59520807061784,270.1702395964691" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.6 3.1,2.8775" data-type="line" data-label="" points="336.59520807061784,241.9230769230769 491.95460277427486,161.50693568726354" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.6 5.400062200000001,2.85" data-type="line" data-label="" points="336.59520807061784,241.9230769230769 573.1673916771753,162.47793190416138" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.6 -2.8,-0.9200000000000002" data-type="line" data-label="" points="336.59520807061784,241.9230769230769 283.6317780580075,295.59268600252204" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.6 -3.8,-0.9200000000000002" data-type="line" data-label="" points="336.59520807061784,241.9230769230769 248.3228247162673,295.59268600252204" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.6 -7.1,2.5999999999999996" data-type="line" data-label="" points="336.59520807061784,241.9230769230769 131.80327868852456,171.30517023959646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.6 -8.3,-6.1" data-type="line" data-label="" points="336.59520807061784,241.9230769230769 89.43253467843624,478.49306431273646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.6 -3.3,-5.7" data-type="line" data-label="" points="336.59520807061784,241.9230769230769 265.9773013871374,464.36948297604033" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,-0.20000000000000007 3.1,2.8775" data-type="line" data-label="" points="336.59520807061784,270.1702395964691 491.95460277427486,161.50693568726354" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,-0.20000000000000007 5.400062200000001,2.85" data-type="line" data-label="" points="336.59520807061784,270.1702395964691 573.1673916771753,162.47793190416138" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,-0.20000000000000007 -2.8,-0.9200000000000002" data-type="line" data-label="" points="336.59520807061784,270.1702395964691 283.6317780580075,295.59268600252204" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,-0.20000000000000007 -3.8,-0.9200000000000002" data-type="line" data-label="" points="336.59520807061784,270.1702395964691 248.3228247162673,295.59268600252204" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,-0.20000000000000007 -7.1,2.5999999999999996" data-type="line" data-label="" points="336.59520807061784,270.1702395964691 131.80327868852456,171.30517023959646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,-0.20000000000000007 -8.3,-6.1" data-type="line" data-label="" points="336.59520807061784,270.1702395964691 89.43253467843624,478.49306431273646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,-0.20000000000000007 -3.3,-5.7" data-type="line" data-label="" points="336.59520807061784,270.1702395964691 265.9773013871374,464.36948297604033" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.1,2.8775 5.400062200000001,2.85" data-type="line" data-label="" points="491.95460277427486,161.50693568726354 573.1673916771753,162.47793190416138" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.1,2.8775 -2.8,-0.9200000000000002" data-type="line" data-label="" points="491.95460277427486,161.50693568726354 283.6317780580075,295.59268600252204" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.1,2.8775 -3.8,-0.9200000000000002" data-type="line" data-label="" points="491.95460277427486,161.50693568726354 248.3228247162673,295.59268600252204" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.1,2.8775 -7.1,2.5999999999999996" data-type="line" data-label="" points="491.95460277427486,161.50693568726354 131.80327868852456,171.30517023959646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.1,2.8775 -8.3,-6.1" data-type="line" data-label="" points="491.95460277427486,161.50693568726354 89.43253467843624,478.49306431273646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.1,2.8775 -3.3,-5.7" data-type="line" data-label="" points="491.95460277427486,161.50693568726354 265.9773013871374,464.36948297604033" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.400062200000001,2.85 -2.8,-0.9200000000000002" data-type="line" data-label="" points="573.1673916771753,162.47793190416138 283.6317780580075,295.59268600252204" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.400062200000001,2.85 -3.8,-0.9200000000000002" data-type="line" data-label="" points="573.1673916771753,162.47793190416138 248.3228247162673,295.59268600252204" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.400062200000001,2.85 -7.1,2.5999999999999996" data-type="line" data-label="" points="573.1673916771753,162.47793190416138 131.80327868852456,171.30517023959646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.400062200000001,2.85 -8.3,-6.1" data-type="line" data-label="" points="573.1673916771753,162.47793190416138 89.43253467843624,478.49306431273646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.400062200000001,2.85 -3.3,-5.7" data-type="line" data-label="" points="573.1673916771753,162.47793190416138 265.9773013871374,464.36948297604033" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.8,-0.9200000000000002 -3.8,-0.9200000000000002" data-type="line" data-label="" points="283.6317780580075,295.59268600252204 248.3228247162673,295.59268600252204" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.8,-0.9200000000000002 -7.1,2.5999999999999996" data-type="line" data-label="" points="283.6317780580075,295.59268600252204 131.80327868852456,171.30517023959646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.8,-0.9200000000000002 -8.3,-6.1" data-type="line" data-label="" points="283.6317780580075,295.59268600252204 89.43253467843624,478.49306431273646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.8,-0.9200000000000002 -3.3,-5.7" data-type="line" data-label="" points="283.6317780580075,295.59268600252204 265.9773013871374,464.36948297604033" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-3.8,-0.9200000000000002 -7.1,2.5999999999999996" data-type="line" data-label="" points="248.3228247162673,295.59268600252204 131.80327868852456,171.30517023959646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-3.8,-0.9200000000000002 -8.3,-6.1" data-type="line" data-label="" points="248.3228247162673,295.59268600252204 89.43253467843624,478.49306431273646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-3.8,-0.9200000000000002 -3.3,-5.7" data-type="line" data-label="" points="248.3228247162673,295.59268600252204 265.9773013871374,464.36948297604033" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-7.1,2.5999999999999996 -8.3,-6.1" data-type="line" data-label="" points="131.80327868852456,171.30517023959646 89.43253467843624,478.49306431273646" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-7.1,2.5999999999999996 -3.3,-5.7" data-type="line" data-label="" points="131.80327868852456,171.30517023959646 265.9773013871374,464.36948297604033" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-8.3,-6.1 -3.3,-5.7" data-type="line" data-label="" points="89.43253467843624,478.49306431273646 265.9773013871374,464.36948297604033" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.19999999999999996 1.3,0.6" data-type="line" data-label="" points="336.59520807061784,256.046658259773 428.3984867591425,241.9230769230769" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.19999999999999996 -2.8,-1.68" data-type="line" data-label="" points="336.59520807061784,256.046658259773 283.6317780580075,322.42749054224464" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.19999999999999996 -3.8,-1.68" data-type="line" data-label="" points="336.59520807061784,256.046658259773 248.3228247162673,322.42749054224464" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.19999999999999996 -7.1,0.55" data-type="line" data-label="" points="336.59520807061784,256.046658259773 131.80327868852456,243.68852459016392" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.19999999999999996 -8.3,-6.3" data-type="line" data-label="" points="336.59520807061784,256.046658259773 89.43253467843624,485.5548549810845" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,0.19999999999999996 -3.3,-5.5" data-type="line" data-label="" points="336.59520807061784,256.046658259773 265.9773013871374,457.30769230769226" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,0.6 -2.8,-1.68" data-type="line" data-label="" points="428.3984867591425,241.9230769230769 283.6317780580075,322.42749054224464" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,0.6 -3.8,-1.68" data-type="line" data-label="" points="428.3984867591425,241.9230769230769 248.3228247162673,322.42749054224464" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,0.6 -7.1,0.55" data-type="line" data-label="" points="428.3984867591425,241.9230769230769 131.80327868852456,243.68852459016392" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,0.6 -8.3,-6.3" data-type="line" data-label="" points="428.3984867591425,241.9230769230769 89.43253467843624,485.5548549810845" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,0.6 -3.3,-5.5" data-type="line" data-label="" points="428.3984867591425,241.9230769230769 265.9773013871374,457.30769230769226" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.8,-1.68 -3.8,-1.68" data-type="line" data-label="" points="283.6317780580075,322.42749054224464 248.3228247162673,322.42749054224464" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.8,-1.68 -7.1,0.55" data-type="line" data-label="" points="283.6317780580075,322.42749054224464 131.80327868852456,243.68852459016392" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.8,-1.68 -8.3,-6.3" data-type="line" data-label="" points="283.6317780580075,322.42749054224464 89.43253467843624,485.5548549810845" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.8,-1.68 -3.3,-5.5" data-type="line" data-label="" points="283.6317780580075,322.42749054224464 265.9773013871374,457.30769230769226" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-3.8,-1.68 -7.1,0.55" data-type="line" data-label="" points="248.3228247162673,322.42749054224464 131.80327868852456,243.68852459016392" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-3.8,-1.68 -8.3,-6.3" data-type="line" data-label="" points="248.3228247162673,322.42749054224464 89.43253467843624,485.5548549810845" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-3.8,-1.68 -3.3,-5.5" data-type="line" data-label="" points="248.3228247162673,322.42749054224464 265.9773013871374,457.30769230769226" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-7.1,0.55 -8.3,-6.3" data-type="line" data-label="" points="131.80327868852456,243.68852459016392 89.43253467843624,485.5548549810845" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-7.1,0.55 -3.3,-5.5" data-type="line" data-label="" points="131.80327868852456,243.68852459016392 265.9773013871374,457.30769230769226" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-8.3,-6.3 -3.3,-5.5" data-type="line" data-label="" points="89.43253467843624,485.5548549810845 265.9773013871374,457.30769230769226" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.3,-0.6 -6.7225,1" data-type="line" data-label="" points="336.59520807061784,284.2938209331652 145.1324085750315,227.79949558638083" fill="none" stroke="hsl(259, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,-0.6 3.9,1.3" data-type="line" data-label="" points="428.3984867591425,284.2938209331652 520.2017654476671,217.20680958385876" fill="none" stroke="hsl(216, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,-0.6 -8.3,-5.7" data-type="line" data-label="" points="428.3984867591425,284.2938209331652 89.43253467843624,464.36948297604033" fill="none" stroke="hsl(216, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,-0.6 -3.3,-5.9" data-type="line" data-label="" points="428.3984867591425,284.2938209331652 265.9773013871374,471.4312736443884" fill="none" stroke="hsl(216, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.9,1.3 -8.3,-5.7" data-type="line" data-label="" points="520.2017654476671,217.20680958385876 89.43253467843624,464.36948297604033" fill="none" stroke="hsl(216, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.9,1.3 -3.3,-5.9" data-type="line" data-label="" points="520.2017654476671,217.20680958385876 265.9773013871374,471.4312736443884" fill="none" stroke="hsl(216, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-8.3,-5.7 -3.3,-5.9" data-type="line" data-label="" points="89.43253467843624,464.36948297604033 265.9773013871374,471.4312736443884" fill="none" stroke="hsl(216, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,-0.19999999999999996 2.3,1.3" data-type="line" data-label="" points="428.3984867591425,270.1702395964691 463.70744010088265,217.20680958385876" fill="none" stroke="hsl(145, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,-0.19999999999999996 -8.3,-5.9" data-type="line" data-label="" points="428.3984867591425,270.1702395964691 89.43253467843624,471.4312736443884" fill="none" stroke="hsl(145, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,-0.19999999999999996 -3.3,-6.3" data-type="line" data-label="" points="428.3984867591425,270.1702395964691 265.9773013871374,485.5548549810845" fill="none" stroke="hsl(145, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.3,1.3 -8.3,-5.9" data-type="line" data-label="" points="463.70744010088265,217.20680958385876 89.43253467843624,471.4312736443884" fill="none" stroke="hsl(145, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.3,1.3 -3.3,-6.3" data-type="line" data-label="" points="463.70744010088265,217.20680958385876 265.9773013871374,485.5548549810845" fill="none" stroke="hsl(145, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-8.3,-5.9 -3.3,-6.3" data-type="line" data-label="" points="89.43253467843624,471.4312736443884 265.9773013871374,485.5548549810845" fill="none" stroke="hsl(145, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,0.20000000000000007 5.4,0.8999999999999999" data-type="line" data-label="" points="428.3984867591425,256.046658259773 573.1651954602773,231.33039092055486" fill="none" stroke="hsl(113, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.3,0.20000000000000007 -3.3,-6.5" data-type="line" data-label="" points="428.3984867591425,256.046658259773 265.9773013871374,492.61664564943254" fill="none" stroke="hsl(113, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.4,0.8999999999999999 -3.3,-6.5" data-type="line" data-label="" points="573.1651954602773,231.33039092055486 265.9773013871374,492.61664564943254" fill="none" stroke="hsl(113, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.5500000000000003,2.5 3.9,2.5 3.9,1.9000000000000001" data-type="line" data-label="" points="507.843631778058,174.8360655737705 520.2017654476671,174.8360655737705 520.2017654476671,196.0214375788146" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.65,2.5 2.3,2.5 2.3,1.9000000000000001" data-type="line" data-label="" points="476.06557377049177,174.8360655737705 463.70744010088265,174.8360655737705 463.70744010088265,196.0214375788146" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="5.3999378,1.9499999999999997 5.4,1.5000000000000004" data-type="line" data-label="" points="573.1629992433795,194.25598991172762 573.1651954602773,210.1450189155107" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-7.1,1.45 -7.1,1.9999999999999998" data-type="line" data-label="" points="131.80327868852456,211.91046658259773 131.80327868852456,192.4905422446406" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.8,-0.9200000000000002 -2.8,-0.72 -3.8,-0.72 -3.8,-0.9200000000000002" data-type="line" data-label="" points="283.6317780580075,295.59268600252204 283.6317780580075,288.53089533417403 248.3228247162673,288.53089533417403 248.3228247162673,295.59268600252204" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.3,-0.19999999999999996 -2.8,-0.19999999999999996 -2.8,-0.9200000000000002" data-type="line" data-label="" points="336.59520807061784,270.1702395964691 283.6317780580075,270.1702395964691 283.6317780580075,295.59268600252204" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="5.400062200000001,2.85 5.400062200000001,3.0775 3.1,3.0775 3.1,2.8775" data-type="line" data-label="" points="573.1673916771753,162.47793190416138 573.1673916771753,154.4451450189155 491.95460277427486,154.4451450189155 491.95460277427486,161.50693568726354" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.8,-1.68 -2.8,-1.8800000000000001 -3.8,-1.8800000000000001 -3.8,-1.68" data-type="line" data-label="" points="283.6317780580075,322.42749054224464 283.6317780580075,329.4892812105927 248.3228247162673,329.4892812105927 248.3228247162673,322.42749054224464" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.3,1.3 2.3,-0.19999999999999996 1.3,-0.19999999999999996" data-type="line" data-label="" points="463.70744010088265,217.20680958385876 463.70744010088265,270.1702395964691 428.3984867591425,270.1702395964691" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.9,1.3 3.9,-0.6 1.3,-0.6" data-type="line" data-label="" points="520.2017654476671,217.20680958385876 520.2017654476671,284.2938209331652 428.3984867591425,284.2938209331652" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="5.4,0.8999999999999999 5.4,-6.5 -3.3,-6.5" data-type="line" data-label="" points="573.1651954602773,231.33039092055486 573.1651954602773,492.61664564943254 265.9773013871374,492.61664564943254" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-8.3,-6.3 -7.1,-6.3 -7.1,0.55" data-type="line" data-label="" points="89.43253467843624,485.5548549810845 131.80327868852456,485.5548549810845 131.80327868852456,243.68852459016392" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.3,0.6 -1.821,0.6 -1.821,-5.551115123125783e-17 -1.5,-5.551115123125783e-17 -1.5,-0.20000000000000007 -1.3,-0.20000000000000007" data-type="line" data-label="" points="336.59520807061784,241.9230769230769 318.1992433795712,241.9230769230769 318.1992433795712,263.10844892812105 329.53341740226983,263.10844892812105 329.53341740226983,270.1702395964691 336.59520807061784,270.1702395964691" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-8.3,-6.1 -6.698999999999999,-6.1 -6.698999999999999,-6.0489999999999995" data-type="line" data-label="" points="89.43253467843624,478.49306431273646 145.9621689785624,478.49306431273646 145.9621689785624,476.6923076923077" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.3,-5.7 -2.849,-5.7 -2.849,-5.399" data-type="line" data-label="" points="265.9773013871374,464.36948297604033 281.90163934426226,464.36948297604033 281.90163934426226,453.7414880201766" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.3,0.19999999999999996 -3.141000000000001,0.19999999999999996 -3.141000000000001,0.14899999999999997" data-type="line" data-label="" points="336.59520807061784,256.046658259773 271.5914249684741,256.046658259773 271.5914249684741,257.84741488020177" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.3,-5.5 -2.0589999999999993,-5.5 -2.0589999999999993,-5.551" data-type="line" data-label="" points="265.9773013871374,457.30769230769226 309.7957124842371,457.30769230769226 309.7957124842371,459.10844892812105" 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="336.59520807061784" y="234.86128625472884" width="91.80327868852464" height="56.49432534678439" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="2.455" data-y="1.6" x="447.81841109709956" y="196.0214375788146" width="42.72383354350569" height="21.185372005044144" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="3.1" data-y="2.6" x="476.0655737704917" y="161.50693568726354" width="31.778058007566244" height="19.59646910466583" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="4.055" data-y="1.6" x="504.312736443884" y="196.0214375788146" width="42.723833543505634" height="21.185372005044144" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="5.4" data-y="2.4" x="567.7956481715005" y="162.47793190416138" width="10.739094577553601" height="31.778058007566244" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_5" data-x="5.555" data-y="1.2" x="557.2761664564941" y="210.1450189155107" width="42.72383354350575" height="21.185372005044144" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_6" data-x="-2.6774999999999998" data-y="-1.3" x="267.7427490542244" y="295.5926860025221" width="40.4287515762926" height="26.834804539722597" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_7" data-x="-3.6774999999999998" data-y="-1.3" x="232.4337957124842" y="295.5926860025221" width="40.4287515762926" height="26.834804539722597" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_8" data-x="-7" data-y="1" x="125.53593947036563" y="211.91046658259773" width="19.596469104665857" height="31.778058007566187" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_9" data-x="-6.945" data-y="2.3" x="115.91424968474143" y="171.30517023959646" width="42.72383354350569" height="21.185372005044144" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_10" data-x="-9" data-y="-6" x="40" y="457.30769230769226" width="49.43253467843624" height="35.30895334174028" fill="hsl(320, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="schematic_component_11" data-x="-4" data-y="-6" x="216.5447667087011" y="450.2459016393443" width="49.432534678436326" height="49.4325346784363" fill="hsl(320, 100%, 50%, 0.8)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="BME280" data-x="-0.54" data-y="-0.93" x="350.718789407314" y="292.7679697351829" width="25.422446406052927" height="6.355611601513203" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="U1" data-x="-0.78" data-y="0.915" x="348.6002522068095" y="226.38713745271122" width="12.711223203026464" height="8.827238335435055" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="JP1" data-x="-9.120000000000001" data-y="-5.385" x="52.00504413619157" y="448.8335435056746" width="16.948297604035304" height="8.827238335435084" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="JP2" data-x="-4.119999999999999" data-y="-5.1850000000000005" x="228.5498108448928" y="441.77175283732663" width="16.948297604035304" height="8.827238335435027" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: V3_3
2
+ globalConnNetId: connectivity_net7" data-x="-1.821" data-y="0.8099999999999999" x="307.60655737704917" y="227.09331651954602" width="21.185372005044087" height="14.829760403530884" fill="#ef444466" stroke="#ef4444" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: V3_3
3
+ globalConnNetId: connectivity_net7" data-x="5.400062200000001" data-y="3.2875" x="562.5747056746532" y="139.61538461538458" width="21.1853720050442" height="14.829760403530912" fill="#ef444466" stroke="#ef4444" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: V3_3
4
+ globalConnNetId: connectivity_net7" data-x="-7.1" data-y="2.8109999999999995" x="121.21059268600249" y="156.4401008827238" width="21.185372005044144" height="14.829760403530912" fill="#ef444466" stroke="#ef4444" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: V3_3
5
+ globalConnNetId: connectivity_net7" data-x="-6.698999999999999" data-y="-5.8389999999999995" x="135.36948297604033" y="461.8625472887768" width="21.185372005044115" height="14.829760403530884" fill="#ef444466" stroke="#ef4444" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: V3_3
6
+ globalConnNetId: connectivity_net7" data-x="-2.849" data-y="-5.189" x="271.3089533417402" y="438.91172761664563" width="21.185372005044087" height="14.82976040353094" fill="#ef444466" stroke="#ef4444" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: GND
7
+ globalConnNetId: connectivity_net8" data-x="-3.141000000000001" data-y="-0.061000000000000026" x="263.11727616645646" y="257.84741488020177" width="16.948297604035304" height="14.829760403530884" fill="#00000066" stroke="#000000" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: GND
8
+ globalConnNetId: connectivity_net8" data-x="1.511" data-y="0.6" x="428.4337957124842" y="238.39218158890287" width="14.829760403530884" height="7.0617906683480385" fill="#00000066" stroke="#000000" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: GND
9
+ globalConnNetId: connectivity_net8" data-x="-2.8" data-y="-2.0900000000000003" x="275.15762925598983" y="329.4892812105927" width="16.948297604035304" height="14.829760403530884" fill="#00000066" stroke="#000000" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: GND
10
+ globalConnNetId: connectivity_net8" data-x="-7.1" data-y="-6.51" x="123.3291298865069" y="485.55485498108453" width="16.948297604035304" height="14.829760403530884" fill="#00000066" stroke="#000000" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: GND
11
+ globalConnNetId: connectivity_net8" data-x="-2.0589999999999993" data-y="-5.761" x="301.32156368221945" y="459.1084489281211" width="16.948297604035304" height="14.829760403530884" fill="#00000066" stroke="#000000" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: SDD_ADR
12
+ globalConnNetId: connectivity_net9" data-x="-1.781" data-y="-0.6" x="302.6633039092055" y="280.76292559899116" width="33.89659520807061" height="7.061790668348067" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: SDD_ADR
13
+ globalConnNetId: connectivity_net9" data-x="-6.241499999999999" data-y="1" x="145.16771752837326" y="224.2686002522068" width="33.89659520807058" height="7.0617906683480385" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: SCK_SCL
14
+ globalConnNetId: connectivity_net3" data-x="3.42" data-y="0.35000000000000003" x="486.3051702395964" y="247.21941992433796" width="33.89659520807061" height="7.0617906683480385" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: SCK_SCL
15
+ globalConnNetId: connectivity_net3" data-x="-7.819" data-y="-5.7" x="89.46784363177801" y="460.8385876418663" width="33.89659520807061" height="7.06179066834801" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: SCK_SCL
16
+ globalConnNetId: connectivity_net3" data-x="-2.819" data-y="-5.9" x="266.01261034047917" y="467.90037831021436" width="33.89659520807061" height="7.061790668348067" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: SDI_SDA
17
+ globalConnNetId: connectivity_net0" data-x="1.8199999999999998" data-y="1.1" x="429.8108448928121" y="220.73770491803276" width="33.89659520807061" height="7.061790668348067" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: SDI_SDA
18
+ globalConnNetId: connectivity_net0" data-x="-7.819" data-y="-5.9" x="89.46784363177801" y="467.90037831021436" width="33.89659520807061" height="7.061790668348067" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: SDI_SDA
19
+ globalConnNetId: connectivity_net0" data-x="-2.819" data-y="-6.3" x="266.01261034047917" y="482.0239596469105" width="33.89659520807061" height="7.061790668347953" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: N_CS
20
+ globalConnNetId: connectivity_net5" data-x="5.1000000000000005" data-y="-2.8" x="551.9798234552334" y="358.44262295081967" width="21.185372005044087" height="7.061790668348067" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: N_CS
21
+ globalConnNetId: connectivity_net5" data-x="1.601" data-y="0.20000000000000007" x="428.4337957124842" y="252.51576292559895" width="21.185372005044144" height="7.0617906683480385" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: .SJ1 &gt; .pin3 to .R1 &gt; .pin2
22
+ globalConnNetId: connectivity_net2" data-x="2.3" data-y="2.725" x="460.1765447667086" y="158.94703656998735" width="7.06179066834801" height="15.889029003783122" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: .SJ1 &gt; .pin1 to .R2 &gt; .pin2
23
+ globalConnNetId: connectivity_net1" data-x="3.9" data-y="2.725" x="516.670870113493" y="158.94703656998735" width="7.061790668348067" height="15.889029003783122" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: .SJ3 &gt; .pin3 to .R4 &gt; .pin1
24
+ globalConnNetId: connectivity_net6" data-x="-6.875" data-y="1.7249999999999999" x="131.80327868852459" y="198.66960907944514" width="15.889029003783065" height="7.0617906683480385" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><rect data-type="rect" data-label="netId: SDO_ADR
25
+ globalConnNetId: connectivity_net10" data-x="-2.819" data-y="-6.1" x="266.01261034047917" y="474.96216897856243" width="33.89659520807061" height="7.06179066834801" fill="hsl(80, 100%, 50%, 0.35)" stroke="black" stroke-width="0.02832142857142857"/></g><g><circle data-type="point" data-label="U1.1
26
+ x-" data-x="-1.3" data-y="0.6" cx="336.59520807061784" cy="241.9230769230769" r="3" fill="hsl(319, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.2
27
+ x-" data-x="-1.3" data-y="0.19999999999999996" cx="336.59520807061784" cy="256.046658259773" r="3" fill="hsl(320, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.3
28
+ x-" data-x="-1.3" data-y="-0.20000000000000007" cx="336.59520807061784" cy="270.1702395964691" r="3" fill="hsl(321, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.4
29
+ x-" data-x="-1.3" data-y="-0.6" cx="336.59520807061784" cy="284.2938209331652" r="3" fill="hsl(322, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.5
30
+ x+" data-x="1.3" data-y="-0.6" cx="428.3984867591425" cy="284.2938209331652" r="3" fill="hsl(323, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.6
31
+ x+" data-x="1.3" data-y="-0.19999999999999996" cx="428.3984867591425" cy="270.1702395964691" r="3" fill="hsl(324, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.7
32
+ x+" data-x="1.3" data-y="0.20000000000000007" cx="428.3984867591425" cy="256.046658259773" r="3" fill="hsl(325, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.8
33
+ x+" data-x="1.3" data-y="0.6" cx="428.3984867591425" cy="241.9230769230769" r="3" fill="hsl(326, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R1.1
34
+ y-" data-x="2.3" data-y="1.3" cx="463.70744010088265" cy="217.20680958385876" r="3" fill="hsl(226, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R1.2
35
+ y+" data-x="2.3" data-y="1.9000000000000001" cx="463.70744010088265" cy="196.0214375788146" r="3" fill="hsl(227, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SJ1.1
36
+ x+" data-x="3.5500000000000003" data-y="2.5" cx="507.843631778058" cy="174.8360655737705" r="3" fill="hsl(181, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SJ1.2
37
+ y+" data-x="3.1" data-y="2.8775" cx="491.95460277427486" cy="161.50693568726354" r="3" fill="hsl(182, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SJ1.3
38
+ x-" data-x="2.65" data-y="2.5" cx="476.06557377049177" cy="174.8360655737705" r="3" fill="hsl(183, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R2.1
39
+ y-" data-x="3.9" data-y="1.3" cx="520.2017654476671" cy="217.20680958385876" r="3" fill="hsl(107, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R2.2
40
+ y+" data-x="3.9" data-y="1.9000000000000001" cx="520.2017654476671" cy="196.0214375788146" r="3" fill="hsl(108, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SJ2.1
41
+ y-" data-x="5.3999378" data-y="1.9499999999999997" cx="573.1629992433795" cy="194.25598991172762" r="3" fill="hsl(62, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SJ2.2
42
+ y+" data-x="5.400062200000001" data-y="2.85" cx="573.1673916771753" cy="162.47793190416138" r="3" fill="hsl(63, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R3.1
43
+ y-" data-x="5.4" data-y="0.8999999999999999" cx="573.1651954602773" cy="231.33039092055486" r="3" fill="hsl(348, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R3.2
44
+ y+" data-x="5.4" data-y="1.5" cx="573.1651954602773" cy="210.14501891551072" r="3" fill="hsl(349, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C2.1
45
+ y-" data-x="-2.8" data-y="-1.68" cx="283.6317780580075" cy="322.42749054224464" r="3" fill="hsl(2, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C2.2
46
+ y+" data-x="-2.8" data-y="-0.9200000000000002" cx="283.6317780580075" cy="295.59268600252204" r="3" fill="hsl(3, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C1.1
47
+ y-" data-x="-3.8" data-y="-1.68" cx="248.3228247162673" cy="322.42749054224464" r="3" fill="hsl(121, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="C1.2
48
+ y+" data-x="-3.8" data-y="-0.9200000000000002" cx="248.3228247162673" cy="295.59268600252204" r="3" fill="hsl(122, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SJ3.1
49
+ y-" data-x="-7.1" data-y="0.55" cx="131.80327868852456" cy="243.68852459016392" r="3" fill="hsl(303, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SJ3.2
50
+ x+" data-x="-6.7225" data-y="1" cx="145.1324085750315" cy="227.79949558638083" r="3" fill="hsl(304, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="SJ3.3
51
+ y+" data-x="-7.1" data-y="1.45" cx="131.80327868852456" cy="211.91046658259773" r="3" fill="hsl(305, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R4.1
52
+ y-" data-x="-7.1" data-y="1.9999999999999998" cx="131.80327868852456" cy="192.4905422446406" r="3" fill="hsl(229, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="R4.2
53
+ y+" data-x="-7.1" data-y="2.5999999999999996" cx="131.80327868852456" cy="171.30517023959646" r="3" fill="hsl(230, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP1.1
54
+ x+" data-x="-8.3" data-y="-6.3" cx="89.43253467843624" cy="485.5548549810845" r="3" fill="hsl(358, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP1.2
55
+ x+" data-x="-8.3" data-y="-6.1" cx="89.43253467843624" cy="478.49306431273646" r="3" fill="hsl(359, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP1.3
56
+ x+" data-x="-8.3" data-y="-5.9" cx="89.43253467843624" cy="471.4312736443884" r="3" fill="hsl(0, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP1.4
57
+ x+" data-x="-8.3" data-y="-5.7" cx="89.43253467843624" cy="464.36948297604033" r="3" fill="hsl(1, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP2.1
58
+ x+" data-x="-3.3" data-y="-6.5" cx="265.9773013871374" cy="492.61664564943254" r="3" fill="hsl(239, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP2.2
59
+ x+" data-x="-3.3" data-y="-6.3" cx="265.9773013871374" cy="485.5548549810845" r="3" fill="hsl(240, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP2.3
60
+ x+" data-x="-3.3" data-y="-6.1" cx="265.9773013871374" cy="478.49306431273646" r="3" fill="hsl(241, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP2.4
61
+ x+" data-x="-3.3" data-y="-5.9" cx="265.9773013871374" cy="471.4312736443884" r="3" fill="hsl(242, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP2.5
62
+ x+" data-x="-3.3" data-y="-5.7" cx="265.9773013871374" cy="464.36948297604033" r="3" fill="hsl(243, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="JP2.6
63
+ x+" data-x="-3.3" data-y="-5.5" cx="265.9773013871374" cy="457.30769230769226" r="3" fill="hsl(244, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anchorPoint
64
+ orientation: y+" data-x="-1.821" data-y="0.6" cx="318.1992433795712" cy="241.9230769230769" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
65
+ orientation: y+" data-x="5.400062200000001" data-y="3.0775" cx="573.1673916771753" cy="154.4451450189155" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
66
+ orientation: y+" data-x="-7.1" data-y="2.5999999999999996" cx="131.80327868852456" cy="171.30517023959646" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
67
+ orientation: y+" data-x="-6.698999999999999" data-y="-6.0489999999999995" cx="145.9621689785624" cy="476.6923076923077" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
68
+ orientation: y+" data-x="-2.849" data-y="-5.399" cx="281.90163934426226" cy="453.7414880201766" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
69
+ orientation: y-" data-x="-3.141000000000001" data-y="0.14899999999999997" cx="271.5914249684741" cy="257.84741488020177" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
70
+ orientation: x+" data-x="1.3" data-y="0.6" cx="428.3984867591425" cy="241.9230769230769" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
71
+ orientation: y-" data-x="-2.8" data-y="-1.8800000000000001" cx="283.6317780580075" cy="329.4892812105927" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
72
+ orientation: y-" data-x="-7.1" data-y="-6.3" cx="131.80327868852456" cy="485.5548549810845" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
73
+ orientation: y-" data-x="-2.0589999999999993" data-y="-5.551" cx="309.7957124842371" cy="459.10844892812105" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
74
+ orientation: x-" data-x="-1.3" data-y="-0.6" cx="336.59520807061784" cy="284.2938209331652" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
75
+ orientation: x+" data-x="-6.7225" data-y="1" cx="145.1324085750315" cy="227.79949558638083" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
76
+ orientation: x-" data-x="3.9" data-y="0.35000000000000003" cx="520.2017654476671" cy="250.75031525851196" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
77
+ orientation: x+" data-x="-8.3" data-y="-5.7" cx="89.43253467843624" cy="464.36948297604033" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
78
+ orientation: x+" data-x="-3.3" data-y="-5.9" cx="265.9773013871374" cy="471.4312736443884" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
79
+ orientation: x-" data-x="2.3" data-y="1.1" cx="463.70744010088265" cy="224.2686002522068" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
80
+ orientation: x+" data-x="-8.3" data-y="-5.9" cx="89.43253467843624" cy="471.4312736443884" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
81
+ orientation: x+" data-x="-3.3" data-y="-6.3" cx="265.9773013871374" cy="485.5548549810845" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
82
+ orientation: x-" data-x="5.4" data-y="-2.8" cx="573.1651954602773" cy="361.9735182849937" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
83
+ orientation: x+" data-x="1.3" data-y="0.20000000000000007" cx="428.3984867591425" cy="256.046658259773" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
84
+ orientation: y+" data-x="2.3" data-y="2.5" cx="463.70744010088265" cy="174.8360655737705" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
85
+ orientation: y+" data-x="3.9" data-y="2.5" cx="520.2017654476671" cy="174.8360655737705" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
86
+ orientation: x+" data-x="-7.1" data-y="1.7249999999999999" cx="131.80327868852456" cy="202.20050441361917" r="3" fill="hsl(40, 100%, 50%, 0.9)"/></g><g><circle data-type="point" data-label="anchorPoint
87
+ orientation: x+" data-x="-3.3" data-y="-6.1" cx="265.9773013871374" cy="478.49306431273646" r="3" fill="hsl(80, 100%, 50%, 0.9)"/></g><g id="crosshair" style="display: none"><line id="crosshair-h" y1="0" y2="640" stroke="#666" stroke-width="0.5"/><line id="crosshair-v" x1="0" x2="640" stroke="#666" stroke-width="0.5"/><text id="coordinates" font-family="monospace" font-size="12" fill="#666"></text></g><script><![CDATA[
88
+ document.currentScript.parentElement.addEventListener('mousemove', (e) => {
89
+ const svg = e.currentTarget;
90
+ const rect = svg.getBoundingClientRect();
91
+ const x = e.clientX - rect.left;
92
+ const y = e.clientY - rect.top;
93
+ const crosshair = svg.getElementById('crosshair');
94
+ const h = svg.getElementById('crosshair-h');
95
+ const v = svg.getElementById('crosshair-v');
96
+ const coords = svg.getElementById('coordinates');
97
+
98
+ crosshair.style.display = 'block';
99
+ h.setAttribute('x1', '0');
100
+ h.setAttribute('x2', '640');
101
+ h.setAttribute('y1', y);
102
+ h.setAttribute('y2', y);
103
+ v.setAttribute('x1', x);
104
+ v.setAttribute('x2', x);
105
+ v.setAttribute('y1', '0');
106
+ v.setAttribute('y2', '640');
107
+
108
+ // Calculate real coordinates using inverse transformation
109
+ const matrix = {"a":35.30895334174023,"c":0,"e":382.49684741488016,"b":0,"d":-35.30895334174023,"f":263.10844892812105};
110
+ // Manually invert and apply the affine transform
111
+ // Since we only use translate and scale, we can directly compute:
112
+ // x' = (x - tx) / sx
113
+ // y' = (y - ty) / sy
114
+ const sx = matrix.a;
115
+ const sy = matrix.d;
116
+ const tx = matrix.e;
117
+ const ty = matrix.f;
118
+ const realPoint = {
119
+ x: (x - tx) / sx,
120
+ y: (y - ty) / sy // Flip y back since we used negative scale
121
+ }
122
+
123
+ coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
124
+ coords.setAttribute('x', (x + 5).toString());
125
+ coords.setAttribute('y', (y - 5).toString());
126
+ });
127
+ document.currentScript.parentElement.addEventListener('mouseleave', () => {
128
+ document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
129
+ });
130
+ ]]></script></svg>