circuit-json-to-lbrn 0.0.1
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.
- package/.claude/settings.local.json +9 -0
- package/README.md +13 -0
- package/biome.json +93 -0
- package/bunfig.toml +5 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.js +215 -0
- package/lib/ConvertContext.ts +9 -0
- package/lib/element-handlers/addPlatedHole/addCirclePlatedHole.ts +83 -0
- package/lib/element-handlers/addPlatedHole/addCircularHoleWithRectPad.ts +12 -0
- package/lib/element-handlers/addPlatedHole/addHoleWithPolygonPad.ts +12 -0
- package/lib/element-handlers/addPlatedHole/addOvalPlatedHole.ts +12 -0
- package/lib/element-handlers/addPlatedHole/addPillHoleWithRectPad.ts +12 -0
- package/lib/element-handlers/addPlatedHole/addRotatedPillHoleWithRectPad.ts +12 -0
- package/lib/element-handlers/addPlatedHole/index.ts +43 -0
- package/lib/element-handlers/addSmtPad/addRectSmtPad.ts +37 -0
- package/lib/element-handlers/addSmtPad/index.ts +15 -0
- package/lib/index.ts +41 -0
- package/package.json +29 -0
- package/tests/__snapshots__/svg.snap.svg +3 -0
- package/tests/assets/lga-interconnect.circuit.json +6170 -0
- package/tests/examples/__snapshots__/lga-interconnect.snap.svg +8 -0
- package/tests/examples/lga-interconnect.test.ts +20 -0
- package/tests/fixtures/preload.ts +1 -0
- package/tests/plated-hole.test.ts +70 -0
- package/tests/svg.test.ts +12 -0
- package/tsconfig.json +32 -0
- package/types.d.ts +4 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<svg width="800" height="1400" viewBox="0 0 800 1400" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<g transform="translate(0, 0)">
|
|
3
|
+
<style></style><rect class="boundary" x="0" y="0" fill="#000" width="800" height="600" data-type="pcb_background" data-pcb-layer="global"/><rect class="pcb-boundary" fill="none" stroke="#fff" stroke-width="0.3" x="108.95522388059703" y="8.955223880597032" width="582.0895522388059" height="582.0895522388059" data-type="pcb_boundary" data-pcb-layer="global"/><path class="pcb-board" d="M 108.95522388059703 591.044776119403 L 691.044776119403 591.044776119403 L 691.044776119403 8.955223880597032 L 108.95522388059703 8.955223880597032 Z" fill="none" stroke="rgba(255, 255, 255, 0.5)" stroke-width="0.8955223880597014" data-type="pcb_board" data-pcb-layer="board"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="180.59701492537314" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 259.7014925373134 L 198.50746268656718 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="225.37313432835822" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 368.65671641791045 259.7014925373134 L 243.28358208955225 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="538.8059701492537" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 431.34328358208955 340.2985074626866 L 556.7164179104477 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="270.1492537313433" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 377.6119402985075 259.7014925373134 L 288.05970149253733 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="314.92537313432837" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 386.56716417910445 259.7014925373134 L 332.8358208955224 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="449.2537313432836" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 413.43283582089555 340.2985074626866 L 467.1641791044776 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="359.70149253731347" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 395.5223880597015 259.7014925373134 L 377.6119402985075 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="404.4776119402985" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 404.4776119402985 259.7014925373134 L 422.3880597014925 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="393.2835820895522" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="359.70149253731347" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 395.5223880597015 340.2985074626866 L 377.6119402985075 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="411.1940298507463" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="449.2537313432836" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 413.43283582089555 259.7014925373134 L 467.1641791044776 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="494.02985074626866" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 422.3880597014925 259.7014925373134 L 511.94029850746267 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="375.3731343283582" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="270.1492537313433" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 377.6119402985075 340.2985074626866 L 288.05970149253733 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="429.1044776119403" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="538.8059701492537" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 431.34328358208955 259.7014925373134 L 556.7164179104477 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="257.46268656716416" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="583.5820895522388" y="35.82089552238808" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 259.7014925373134 L 601.4925373134329 53.731343283582106" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="180.59701492537314" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 340.2985074626866 L 198.50746268656718 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="135.82089552238807" y="125.37313432835822" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 268.65671641791045 L 153.7313432835821 143.28358208955225" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="628.3582089552239" y="438.8059701492537" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 331.34328358208955 L 646.2686567164179 456.7164179104477" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="135.82089552238807" y="259.70149253731347" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 295.5223880597015 L 153.7313432835821 277.6119402985075" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="266.4179104477612" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="628.3582089552239" y="125.37313432835822" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 268.65671641791045 L 646.2686567164179 143.28358208955225" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="366.4179104477612" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="225.37313432835822" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 368.65671641791045 340.2985074626866 L 243.28358208955225 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="402.23880597014926" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="404.4776119402985" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 404.4776119402985 340.2985074626866 L 422.3880597014925 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="420.14925373134326" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="494.02985074626866" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 422.3880597014925 340.2985074626866 L 511.94029850746267 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="135.82089552238807" y="170.1492537313433" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 277.6119402985075 L 153.7313432835821 188.05970149253733" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="329.1044776119403" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="135.82089552238807" y="438.8059701492537" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 331.34328358208955 L 153.7313432835821 456.7164179104477" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="628.3582089552239" y="304.4776119402985" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 304.4776119402985 L 646.2686567164179 322.3880597014925" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="135.82089552238807" y="349.2537313432836" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 313.43283582089555 L 153.7313432835821 367.1641791044776" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="384.3283582089552" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="314.92537313432837" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 386.56716417910445 340.2985074626866 L 332.8358208955224 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="275.3731343283582" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="628.3582089552239" y="170.1492537313433" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 277.6119402985075 L 646.2686567164179 188.05970149253733" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="135.82089552238807" y="394.02985074626866" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 322.3880597014925 L 153.7313432835821 411.94029850746267" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="135.82089552238807" y="214.92537313432834" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 286.56716417910445 L 153.7313432835821 232.83582089552237" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="311.1940298507463" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="628.3582089552239" y="349.2537313432836" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 313.43283582089555 L 646.2686567164179 367.1641791044776" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="320.14925373134326" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="628.3582089552239" y="394.02985074626866" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 322.3880597014925 L 646.2686567164179 411.94029850746267" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="338.05970149253733" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="583.5820895522388" y="528.3582089552239" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 340.2985074626866 L 601.4925373134329 546.2686567164179" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="284.3283582089552" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="628.3582089552239" y="214.92537313432834" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 286.56716417910445 L 646.2686567164179 232.83582089552237" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="438.05970149253733" y="293.2835820895522" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="628.3582089552239" y="259.70149253731347" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 440.2985074626866 295.5223880597015 L 646.2686567164179 277.6119402985075" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="357.46268656716416" y="302.23880597014926" width="4.477611940298507" height="4.477611940298507" data-type="pcb_smtpad" data-pcb-layer="top"/><rect class="pcb-pad" fill="rgb(200, 52, 52)" x="135.82089552238807" y="304.4776119402985" width="35.82089552238806" height="35.82089552238806" data-type="pcb_smtpad" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 359.7014925373134 304.4776119402985 L 153.7313432835821 322.3880597014925" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 404.4776119402985 322.3880597014925 L 413.43283582089555 313.43283582089555" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><path class="pcb-trace" stroke="rgb(200, 52, 52)" fill="none" d="M 386.56716417910445 331.34328358208955 L 377.6119402985075 331.34328358208955" stroke-width="1.3432835820895521" stroke-linecap="round" stroke-linejoin="round" shape-rendering="crispEdges" data-type="pcb_trace" data-pcb-layer="top"/><path class="pcb-silkscreen pcb-silkscreen-top" d="M 346.2686567164179 259.7014925373134 L 339.1044776119403 255.22388059701493 L 339.1044776119403 264.17910447761193 L 346.2686567164179 259.7014925373134 Z" fill="none" stroke="#f2eda1" stroke-width="0.8955223880597014" stroke-linecap="round" stroke-linejoin="round" data-pcb-component-id="test_fixture_pcb_component" data-pcb-silkscreen-path-id="test_fixture_pin1_indicator" data-type="pcb_silkscreen_path" data-pcb-layer="top"/><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,198.50746268656718,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C1</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,243.28358208955225,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X18</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,556.7164179104477,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X9</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,288.05970149253733,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C18</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,332.8358208955224,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X17</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,467.1641791044776,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X8</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,377.6119402985075,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C17</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,422.3880597014925,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X16</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,377.6119402985075,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X7</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,467.1641791044776,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C16</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,511.94029850746267,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X15</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,288.05970149253733,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X6</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,556.7164179104477,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C15</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-after-edge" transform="matrix(1,0,0,1,601.4925373134329,31.343283582089555)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X14</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,198.50746268656718,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X5</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="end" dominant-baseline="central" transform="matrix(1,0,0,1,131.34328358208955,143.28358208955225)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X1</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,456.7164179104477)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X10</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="end" dominant-baseline="central" transform="matrix(1,0,0,1,131.34328358208955,277.6119402985075)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C3</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,143.28358208955225)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C14</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="5.3731343283582085" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,152.23880597014926)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">NET1</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,243.28358208955225,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C6</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,422.3880597014925,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C8</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,511.94029850746267,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C9</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="end" dominant-baseline="central" transform="matrix(1,0,0,1,131.34328358208955,188.05970149253733)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C2</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="end" dominant-baseline="central" transform="matrix(1,0,0,1,131.34328358208955,456.7164179104477)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C5</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,322.3880597014925)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C12</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="end" dominant-baseline="central" transform="matrix(1,0,0,1,131.34328358208955,367.1641791044776)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C4</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="5.3731343283582085" text-anchor="end" dominant-baseline="central" transform="matrix(1,0,0,1,131.34328358208955,376.1194029850746)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">NET1</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,332.8358208955224,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C7</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,188.05970149253733)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X13</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="end" dominant-baseline="central" transform="matrix(1,0,0,1,131.34328358208955,411.94029850746267)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X4</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="end" dominant-baseline="central" transform="matrix(1,0,0,1,131.34328358208955,232.83582089552237)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X2</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,367.1641791044776)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X11</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,411.94029850746267)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C11</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="5.3731343283582085" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,420.8955223880597)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">NET1</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="middle" dominant-baseline="text-before-edge" transform="matrix(1,0,0,1,601.4925373134329,568.6567164179105)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C10</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,232.83582089552237)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">C13</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="start" dominant-baseline="central" transform="matrix(1,0,0,1,668.6567164179105,277.6119402985075)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X12</text><text x="0" y="0" dx="0" dy="0" fill="#f2eda1" font-family="Arial, sans-serif" font-size="7.164179104477611" text-anchor="end" dominant-baseline="central" transform="matrix(1,0,0,1,131.34328358208955,322.3880597014925)" class="pcb-silkscreen-text pcb-silkscreen-top" data-pcb-silkscreen-text-id="test_fixture_pcb_component" stroke="none" data-type="pcb_silkscreen_text" data-pcb-layer="top">X3</text>
|
|
4
|
+
</g>
|
|
5
|
+
<g transform="translate(0, 600) scale(10.126582278481013, 10.126582278481013) translate(39.5, 39.5)">
|
|
6
|
+
<rect x="-39.5" y="-39.5" width="79" height="79" fill="white"/><g transform="matrix(1 0 0 -1 0 0)"><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 4.25 L -4.25 4.25 L -4.25 4.75 L -4.75 4.75 L -4.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 4.25 L -3.25 4.25 L -3.25 4.75 L -3.75 4.75 L -3.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 4.25 L -2.25 4.25 L -2.25 4.75 L -2.75 4.75 L -2.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 4.25 L -1.25 4.25 L -1.25 4.75 L -1.75 4.75 L -1.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 4.25 L -0.25 4.25 L -0.25 4.75 L -0.75 4.75 L -0.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 4.25 L 0.75 4.25 L 0.75 4.75 L 0.25 4.75 L 0.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 4.25 L 1.75 4.25 L 1.75 4.75 L 1.25 4.75 L 1.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 4.25 L 2.75 4.25 L 2.75 4.75 L 2.25 4.75 L 2.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 4.25 L 3.75 4.25 L 3.75 4.75 L 3.25 4.75 L 3.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 4.25 L 4.75 4.25 L 4.75 4.75 L 4.25 4.75 L 4.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 3.25 L -4.25 3.25 L -4.25 3.75 L -4.75 3.75 L -4.75 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 3.25 L -3.25 3.25 L -3.25 3.75 L -3.75 3.75 L -3.75 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 3.25 L -2.25 3.25 L -2.25 3.75 L -2.75 3.75 L -2.75 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 3.25 L -1.25 3.25 L -1.25 3.75 L -1.75 3.75 L -1.75 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 3.25 L -0.25 3.25 L -0.25 3.75 L -0.75 3.75 L -0.75 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 3.25 L 0.75 3.25 L 0.75 3.75 L 0.25 3.75 L 0.25 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 3.25 L 1.75 3.25 L 1.75 3.75 L 1.25 3.75 L 1.25 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 3.25 L 2.75 3.25 L 2.75 3.75 L 2.25 3.75 L 2.25 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 3.25 L 3.75 3.25 L 3.75 3.75 L 3.25 3.75 L 3.25 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 3.25 L 4.75 3.25 L 4.75 3.75 L 4.25 3.75 L 4.25 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 2.25 L -4.25 2.25 L -4.25 2.75 L -4.75 2.75 L -4.75 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 2.25 L -3.25 2.25 L -3.25 2.75 L -3.75 2.75 L -3.75 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 2.25 L -2.25 2.25 L -2.25 2.75 L -2.75 2.75 L -2.75 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 2.25 L -1.25 2.25 L -1.25 2.75 L -1.75 2.75 L -1.75 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 2.25 L -0.25 2.25 L -0.25 2.75 L -0.75 2.75 L -0.75 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 2.25 L 0.75 2.25 L 0.75 2.75 L 0.25 2.75 L 0.25 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 2.25 L 1.75 2.25 L 1.75 2.75 L 1.25 2.75 L 1.25 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 2.25 L 2.75 2.25 L 2.75 2.75 L 2.25 2.75 L 2.25 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 2.25 L 3.75 2.25 L 3.75 2.75 L 3.25 2.75 L 3.25 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 2.25 L 4.75 2.25 L 4.75 2.75 L 4.25 2.75 L 4.25 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 1.25 L -4.25 1.25 L -4.25 1.75 L -4.75 1.75 L -4.75 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 1.25 L -3.25 1.25 L -3.25 1.75 L -3.75 1.75 L -3.75 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 1.25 L -2.25 1.25 L -2.25 1.75 L -2.75 1.75 L -2.75 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 1.25 L -1.25 1.25 L -1.25 1.75 L -1.75 1.75 L -1.75 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 1.25 L -0.25 1.25 L -0.25 1.75 L -0.75 1.75 L -0.75 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 1.25 L 0.75 1.25 L 0.75 1.75 L 0.25 1.75 L 0.25 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 1.25 L 1.75 1.25 L 1.75 1.75 L 1.25 1.75 L 1.25 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 1.25 L 2.75 1.25 L 2.75 1.75 L 2.25 1.75 L 2.25 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 1.25 L 3.75 1.25 L 3.75 1.75 L 3.25 1.75 L 3.25 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 1.25 L 4.75 1.25 L 4.75 1.75 L 4.25 1.75 L 4.25 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 0.25 L -4.25 0.25 L -4.25 0.75 L -4.75 0.75 L -4.75 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 0.25 L -3.25 0.25 L -3.25 0.75 L -3.75 0.75 L -3.75 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 0.25 L -2.25 0.25 L -2.25 0.75 L -2.75 0.75 L -2.75 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 0.25 L -1.25 0.25 L -1.25 0.75 L -1.75 0.75 L -1.75 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 0.25 L -0.25 0.25 L -0.25 0.75 L -0.75 0.75 L -0.75 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 0.25 L 0.75 0.25 L 0.75 0.75 L 0.25 0.75 L 0.25 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 0.25 L 1.75 0.25 L 1.75 0.75 L 1.25 0.75 L 1.25 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 0.25 L 2.75 0.25 L 2.75 0.75 L 2.25 0.75 L 2.25 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 0.25 L 3.75 0.25 L 3.75 0.75 L 3.25 0.75 L 3.25 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 0.25 L 4.75 0.25 L 4.75 0.75 L 4.25 0.75 L 4.25 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -0.75 L -4.25 -0.75 L -4.25 -0.25 L -4.75 -0.25 L -4.75 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 -0.75 L -3.25 -0.75 L -3.25 -0.25 L -3.75 -0.25 L -3.75 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 -0.75 L -2.25 -0.75 L -2.25 -0.25 L -2.75 -0.25 L -2.75 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 -0.75 L -1.25 -0.75 L -1.25 -0.25 L -1.75 -0.25 L -1.75 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 -0.75 L -0.25 -0.75 L -0.25 -0.25 L -0.75 -0.25 L -0.75 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 -0.75 L 0.75 -0.75 L 0.75 -0.25 L 0.25 -0.25 L 0.25 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 -0.75 L 1.75 -0.75 L 1.75 -0.25 L 1.25 -0.25 L 1.25 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 -0.75 L 2.75 -0.75 L 2.75 -0.25 L 2.25 -0.25 L 2.25 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 -0.75 L 3.75 -0.75 L 3.75 -0.25 L 3.25 -0.25 L 3.25 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -0.75 L 4.75 -0.75 L 4.75 -0.25 L 4.25 -0.25 L 4.25 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -1.75 L -4.25 -1.75 L -4.25 -1.25 L -4.75 -1.25 L -4.75 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 -1.75 L -3.25 -1.75 L -3.25 -1.25 L -3.75 -1.25 L -3.75 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 -1.75 L -2.25 -1.75 L -2.25 -1.25 L -2.75 -1.25 L -2.75 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 -1.75 L -1.25 -1.75 L -1.25 -1.25 L -1.75 -1.25 L -1.75 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 -1.75 L -0.25 -1.75 L -0.25 -1.25 L -0.75 -1.25 L -0.75 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 -1.75 L 0.75 -1.75 L 0.75 -1.25 L 0.25 -1.25 L 0.25 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 -1.75 L 1.75 -1.75 L 1.75 -1.25 L 1.25 -1.25 L 1.25 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 -1.75 L 2.75 -1.75 L 2.75 -1.25 L 2.25 -1.25 L 2.25 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 -1.75 L 3.75 -1.75 L 3.75 -1.25 L 3.25 -1.25 L 3.25 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -1.75 L 4.75 -1.75 L 4.75 -1.25 L 4.25 -1.25 L 4.25 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -2.75 L -4.25 -2.75 L -4.25 -2.25 L -4.75 -2.25 L -4.75 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 -2.75 L -3.25 -2.75 L -3.25 -2.25 L -3.75 -2.25 L -3.75 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 -2.75 L -2.25 -2.75 L -2.25 -2.25 L -2.75 -2.25 L -2.75 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 -2.75 L -1.25 -2.75 L -1.25 -2.25 L -1.75 -2.25 L -1.75 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 -2.75 L -0.25 -2.75 L -0.25 -2.25 L -0.75 -2.25 L -0.75 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 -2.75 L 0.75 -2.75 L 0.75 -2.25 L 0.25 -2.25 L 0.25 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 -2.75 L 1.75 -2.75 L 1.75 -2.25 L 1.25 -2.25 L 1.25 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 -2.75 L 2.75 -2.75 L 2.75 -2.25 L 2.25 -2.25 L 2.25 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 -2.75 L 3.75 -2.75 L 3.75 -2.25 L 3.25 -2.25 L 3.25 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -2.75 L 4.75 -2.75 L 4.75 -2.25 L 4.25 -2.25 L 4.25 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -3.75 L -4.25 -3.75 L -4.25 -3.25 L -4.75 -3.25 L -4.75 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 -3.75 L -3.25 -3.75 L -3.25 -3.25 L -3.75 -3.25 L -3.75 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 -3.75 L -2.25 -3.75 L -2.25 -3.25 L -2.75 -3.25 L -2.75 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 -3.75 L -1.25 -3.75 L -1.25 -3.25 L -1.75 -3.25 L -1.75 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 -3.75 L -0.25 -3.75 L -0.25 -3.25 L -0.75 -3.25 L -0.75 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 -3.75 L 0.75 -3.75 L 0.75 -3.25 L 0.25 -3.25 L 0.25 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 -3.75 L 1.75 -3.75 L 1.75 -3.25 L 1.25 -3.25 L 1.25 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 -3.75 L 2.75 -3.75 L 2.75 -3.25 L 2.25 -3.25 L 2.25 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 -3.75 L 3.75 -3.75 L 3.75 -3.25 L 3.25 -3.25 L 3.25 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -3.75 L 4.75 -3.75 L 4.75 -3.25 L 4.25 -3.25 L 4.25 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -4.75 L -4.25 -4.75 L -4.25 -4.25 L -4.75 -4.25 L -4.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 -4.75 L -3.25 -4.75 L -3.25 -4.25 L -3.75 -4.25 L -3.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 -4.75 L -2.25 -4.75 L -2.25 -4.25 L -2.75 -4.25 L -2.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 -4.75 L -1.25 -4.75 L -1.25 -4.25 L -1.75 -4.25 L -1.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 -4.75 L -0.25 -4.75 L -0.25 -4.25 L -0.75 -4.25 L -0.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 -4.75 L 0.75 -4.75 L 0.75 -4.25 L 0.25 -4.25 L 0.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 -4.75 L 1.75 -4.75 L 1.75 -4.25 L 1.25 -4.25 L 1.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 -4.75 L 2.75 -4.75 L 2.75 -4.25 L 2.25 -4.25 L 2.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 -4.75 L 3.75 -4.75 L 3.75 -4.25 L 3.25 -4.25 L 3.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -4.75 L 4.75 -4.75 L 4.75 -4.25 L 4.25 -4.25 L 4.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 4.25 L -4.25 4.25 L -4.25 4.75 L -4.75 4.75 L -4.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -24.5 25.5 L -20.5 25.5 L -20.5 29.5 L -24.5 29.5 L -24.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 4.25 L -3.25 4.25 L -3.25 4.75 L -3.75 4.75 L -3.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -19.5 25.5 L -15.5 25.5 L -15.5 29.5 L -19.5 29.5 L -19.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 -4.75 L 3.75 -4.75 L 3.75 -4.25 L 3.25 -4.25 L 3.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 15.5 -29.5 L 19.5 -29.5 L 19.5 -25.5 L 15.5 -25.5 L 15.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 4.25 L -2.25 4.25 L -2.25 4.75 L -2.75 4.75 L -2.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -14.5 25.5 L -10.5 25.5 L -10.5 29.5 L -14.5 29.5 L -14.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 4.25 L -1.25 4.25 L -1.25 4.75 L -1.75 4.75 L -1.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -9.5 25.5 L -5.5 25.5 L -5.5 29.5 L -9.5 29.5 L -9.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 -4.75 L 1.75 -4.75 L 1.75 -4.25 L 1.25 -4.25 L 1.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 5.5 -29.5 L 9.5 -29.5 L 9.5 -25.5 L 5.5 -25.5 L 5.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 4.25 L -0.25 4.25 L -0.25 4.75 L -0.75 4.75 L -0.75 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.5 25.5 L -0.5 25.5 L -0.5 29.5 L -4.5 29.5 L -4.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 4.25 L 0.75 4.25 L 0.75 4.75 L 0.25 4.75 L 0.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.5 25.5 L 4.5 25.5 L 4.5 29.5 L 0.5 29.5 L 0.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -0.75 -4.75 L -0.25 -4.75 L -0.25 -4.25 L -0.75 -4.25 L -0.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.5 -29.5 L -0.5 -29.5 L -0.5 -25.5 L -4.5 -25.5 L -4.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 1.25 4.25 L 1.75 4.25 L 1.75 4.75 L 1.25 4.75 L 1.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 5.5 25.5 L 9.5 25.5 L 9.5 29.5 L 5.5 29.5 L 5.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 4.25 L 2.75 4.25 L 2.75 4.75 L 2.25 4.75 L 2.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 10.5 25.5 L 14.5 25.5 L 14.5 29.5 L 10.5 29.5 L 10.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -2.75 -4.75 L -2.25 -4.75 L -2.25 -4.25 L -2.75 -4.25 L -2.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -14.5 -29.5 L -10.5 -29.5 L -10.5 -25.5 L -14.5 -25.5 L -14.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 3.25 4.25 L 3.75 4.25 L 3.75 4.75 L 3.25 4.75 L 3.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 15.5 25.5 L 19.5 25.5 L 19.5 29.5 L 15.5 29.5 L 15.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 4.25 L 4.75 4.25 L 4.75 4.75 L 4.25 4.75 L 4.25 4.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 20.5 25.5 L 24.5 25.5 L 24.5 29.5 L 20.5 29.5 L 20.5 25.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -4.75 L -4.25 -4.75 L -4.25 -4.25 L -4.75 -4.25 L -4.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -24.5 -29.5 L -20.5 -29.5 L -20.5 -25.5 L -24.5 -25.5 L -24.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 3.25 L -4.25 3.25 L -4.25 3.75 L -4.75 3.75 L -4.75 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -29.5 15.5 L -25.5 15.5 L -25.5 19.5 L -29.5 19.5 L -29.5 15.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -3.75 L 4.75 -3.75 L 4.75 -3.25 L 4.25 -3.25 L 4.25 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 25.5 -19.5 L 29.5 -19.5 L 29.5 -15.5 L 25.5 -15.5 L 25.5 -19.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 0.25 L -4.25 0.25 L -4.25 0.75 L -4.75 0.75 L -4.75 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -29.5 0.5 L -25.5 0.5 L -25.5 4.5 L -29.5 4.5 L -29.5 0.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 3.25 L 4.75 3.25 L 4.75 3.75 L 4.25 3.75 L 4.25 3.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 25.5 15.5 L 29.5 15.5 L 29.5 19.5 L 25.5 19.5 L 25.5 15.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -3.75 -4.75 L -3.25 -4.75 L -3.25 -4.25 L -3.75 -4.25 L -3.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -19.5 -29.5 L -15.5 -29.5 L -15.5 -25.5 L -19.5 -25.5 L -19.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.25 -4.75 L 0.75 -4.75 L 0.75 -4.25 L 0.25 -4.25 L 0.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 0.5 -29.5 L 4.5 -29.5 L 4.5 -25.5 L 0.5 -25.5 L 0.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 2.25 -4.75 L 2.75 -4.75 L 2.75 -4.25 L 2.25 -4.25 L 2.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 10.5 -29.5 L 14.5 -29.5 L 14.5 -25.5 L 10.5 -25.5 L 10.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 2.25 L -4.25 2.25 L -4.25 2.75 L -4.75 2.75 L -4.75 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -29.5 10.5 L -25.5 10.5 L -25.5 14.5 L -29.5 14.5 L -29.5 10.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -3.75 L -4.25 -3.75 L -4.25 -3.25 L -4.75 -3.25 L -4.75 -3.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -29.5 -19.5 L -25.5 -19.5 L -25.5 -15.5 L -29.5 -15.5 L -29.5 -19.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -0.75 L 4.75 -0.75 L 4.75 -0.25 L 4.25 -0.25 L 4.25 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 25.5 -4.5 L 29.5 -4.5 L 29.5 -0.5 L 25.5 -0.5 L 25.5 -4.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -1.75 L -4.25 -1.75 L -4.25 -1.25 L -4.75 -1.25 L -4.75 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -29.5 -9.5 L -25.5 -9.5 L -25.5 -5.5 L -29.5 -5.5 L -29.5 -9.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -1.75 -4.75 L -1.25 -4.75 L -1.25 -4.25 L -1.75 -4.25 L -1.75 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -9.5 -29.5 L -5.5 -29.5 L -5.5 -25.5 L -9.5 -25.5 L -9.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 2.25 L 4.75 2.25 L 4.75 2.75 L 4.25 2.75 L 4.25 2.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 25.5 10.5 L 29.5 10.5 L 29.5 14.5 L 25.5 14.5 L 25.5 10.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -2.75 L -4.25 -2.75 L -4.25 -2.25 L -4.75 -2.25 L -4.75 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -29.5 -14.5 L -25.5 -14.5 L -25.5 -10.5 L -29.5 -10.5 L -29.5 -14.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 1.25 L -4.25 1.25 L -4.25 1.75 L -4.75 1.75 L -4.75 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -29.5 5.5 L -25.5 5.5 L -25.5 9.5 L -29.5 9.5 L -29.5 5.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -1.75 L 4.75 -1.75 L 4.75 -1.25 L 4.25 -1.25 L 4.25 -1.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 25.5 -9.5 L 29.5 -9.5 L 29.5 -5.5 L 25.5 -5.5 L 25.5 -9.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -2.75 L 4.75 -2.75 L 4.75 -2.25 L 4.25 -2.25 L 4.25 -2.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 25.5 -14.5 L 29.5 -14.5 L 29.5 -10.5 L 25.5 -10.5 L 25.5 -14.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 -4.75 L 4.75 -4.75 L 4.75 -4.25 L 4.25 -4.25 L 4.25 -4.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 20.5 -29.5 L 24.5 -29.5 L 24.5 -25.5 L 20.5 -25.5 L 20.5 -29.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 1.25 L 4.75 1.25 L 4.75 1.75 L 4.25 1.75 L 4.25 1.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 25.5 5.5 L 29.5 5.5 L 29.5 9.5 L 25.5 9.5 L 25.5 5.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 4.25 0.25 L 4.75 0.25 L 4.75 0.75 L 4.25 0.75 L 4.25 0.25 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M 25.5 0.5 L 29.5 0.5 L 29.5 4.5 L 25.5 4.5 L 25.5 0.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -4.75 -0.75 L -4.25 -0.75 L -4.25 -0.25 L -4.75 -0.25 L -4.75 -0.75 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g><g transform="matrix(1,0,0,1,0,0)"><path d="M -29.5 -4.5 L -25.5 -4.5 L -25.5 -0.5 L -29.5 -0.5 L -29.5 -4.5 Z" fill="none" stroke="#000000" stroke-width="0.1"/></g></g>
|
|
7
|
+
</g>
|
|
8
|
+
</svg>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { test, expect } from "bun:test"
|
|
2
|
+
import circuitJson from "../assets/lga-interconnect.circuit.json" with {
|
|
3
|
+
type: "json",
|
|
4
|
+
}
|
|
5
|
+
import { convertCircuitJsonToPcbSvg } from "circuit-to-svg"
|
|
6
|
+
import { generateLightBurnSvg } from "lbrnts"
|
|
7
|
+
import { convertCircuitJsonToLbrn } from "../../lib"
|
|
8
|
+
import { stackSvgsVertically } from "stack-svgs"
|
|
9
|
+
|
|
10
|
+
test("lga-interconnect", async () => {
|
|
11
|
+
const pcbSvg = await convertCircuitJsonToPcbSvg(circuitJson)
|
|
12
|
+
|
|
13
|
+
const project = convertCircuitJsonToLbrn(circuitJson)
|
|
14
|
+
|
|
15
|
+
const lbrnSvg = await generateLightBurnSvg(project)
|
|
16
|
+
|
|
17
|
+
expect(stackSvgsVertically([pcbSvg, lbrnSvg])).toMatchSvgSnapshot(
|
|
18
|
+
import.meta.filename,
|
|
19
|
+
)
|
|
20
|
+
})
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "bun-match-svg"
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { test, expect } from "bun:test"
|
|
2
|
+
import { convertCircuitJsonToLbrn } from "../lib/index"
|
|
3
|
+
import type { CircuitJson } from "circuit-json"
|
|
4
|
+
|
|
5
|
+
test("plated hole generates circular path", () => {
|
|
6
|
+
const circuitJson: CircuitJson = [
|
|
7
|
+
{
|
|
8
|
+
type: "pcb_board",
|
|
9
|
+
pcb_board_id: "test_board",
|
|
10
|
+
width: 100,
|
|
11
|
+
height: 100,
|
|
12
|
+
center: { x: 0, y: 0 },
|
|
13
|
+
thickness: 1.6,
|
|
14
|
+
num_layers: 2,
|
|
15
|
+
material: "fr4",
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
type: "pcb_plated_hole",
|
|
19
|
+
shape: "circle",
|
|
20
|
+
pcb_plated_hole_id: "test_hole",
|
|
21
|
+
outer_diameter: 2,
|
|
22
|
+
hole_diameter: 1,
|
|
23
|
+
x: 10,
|
|
24
|
+
y: 20,
|
|
25
|
+
layers: ["top"],
|
|
26
|
+
},
|
|
27
|
+
]
|
|
28
|
+
|
|
29
|
+
const project = convertCircuitJsonToLbrn(circuitJson)
|
|
30
|
+
|
|
31
|
+
// Should have 1 CutSetting and 1 ShapePath
|
|
32
|
+
expect(project.children.length).toBe(2)
|
|
33
|
+
|
|
34
|
+
// First child should be CutSetting
|
|
35
|
+
const cutSetting = project.children.find(
|
|
36
|
+
(child) => child.token === "CutSetting",
|
|
37
|
+
)!
|
|
38
|
+
expect(cutSetting.token).toBe("CutSetting")
|
|
39
|
+
|
|
40
|
+
// Second child should be ShapePath (the plated hole)
|
|
41
|
+
const shapePath = project.children.find(
|
|
42
|
+
(child) => child.token === "Shape.Path",
|
|
43
|
+
)!
|
|
44
|
+
expect(shapePath.token).toBe("Shape.Path")
|
|
45
|
+
|
|
46
|
+
// Verify the shape path has the expected properties
|
|
47
|
+
if (shapePath.token === "Shape.Path") {
|
|
48
|
+
expect((shapePath as any).isClosed).toBe(true)
|
|
49
|
+
expect((shapePath as any).cutIndex).toBe(0)
|
|
50
|
+
expect((shapePath as any).verts).toBeDefined()
|
|
51
|
+
expect((shapePath as any).prims).toBeDefined()
|
|
52
|
+
|
|
53
|
+
// Should have 5 vertices (4 bezier curve points + 1 to close)
|
|
54
|
+
const vertsLength = (shapePath as any).verts?.length
|
|
55
|
+
const primsLength = (shapePath as any).prims?.length
|
|
56
|
+
expect(vertsLength).toBe(5)
|
|
57
|
+
expect(primsLength).toBe(4)
|
|
58
|
+
|
|
59
|
+
// Verify all primitives are bezier curves
|
|
60
|
+
const prims = (shapePath as any).prims || []
|
|
61
|
+
for (const prim of prims) {
|
|
62
|
+
expect(prim.type).toBe(1) // 1 = BezierTo
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// Verify the circle is centered at (10, 20) with radius 1
|
|
66
|
+
const firstVert = (shapePath as any).verts?.[0]
|
|
67
|
+
expect(firstVert?.x).toBeCloseTo(11, 5) // 10 + 1 (radius)
|
|
68
|
+
expect(firstVert?.y).toBeCloseTo(20, 5)
|
|
69
|
+
}
|
|
70
|
+
})
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { expect, test } from "bun:test"
|
|
2
|
+
|
|
3
|
+
const testSvg = `<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg">
|
|
4
|
+
<circle cx="50" cy="50" r="40" stroke="black" stroke-width="3" fill="red" />
|
|
5
|
+
</svg>`
|
|
6
|
+
|
|
7
|
+
test("svg snapshot example", async () => {
|
|
8
|
+
// First run will create the snapshot
|
|
9
|
+
// Subsequent runs will compare against the saved snapshot
|
|
10
|
+
await expect(testSvg).toMatchSvgSnapshot(import.meta.path)
|
|
11
|
+
})
|
|
12
|
+
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
// Environment setup & latest features
|
|
4
|
+
"lib": ["ESNext"],
|
|
5
|
+
"target": "ESNext",
|
|
6
|
+
"module": "Preserve",
|
|
7
|
+
"moduleDetection": "force",
|
|
8
|
+
"jsx": "react-jsx",
|
|
9
|
+
"allowJs": true,
|
|
10
|
+
"types": ["bun-types", "./types.d.ts"],
|
|
11
|
+
|
|
12
|
+
"resolveJsonModule": false,
|
|
13
|
+
|
|
14
|
+
// Bundler mode
|
|
15
|
+
"moduleResolution": "bundler",
|
|
16
|
+
"allowImportingTsExtensions": true,
|
|
17
|
+
"verbatimModuleSyntax": true,
|
|
18
|
+
"noEmit": true,
|
|
19
|
+
|
|
20
|
+
// Best practices
|
|
21
|
+
"strict": true,
|
|
22
|
+
"skipLibCheck": true,
|
|
23
|
+
"noFallthroughCasesInSwitch": true,
|
|
24
|
+
"noUncheckedIndexedAccess": true,
|
|
25
|
+
"noImplicitOverride": true,
|
|
26
|
+
|
|
27
|
+
// Some stricter flags (disabled by default)
|
|
28
|
+
"noUnusedLocals": false,
|
|
29
|
+
"noUnusedParameters": false,
|
|
30
|
+
"noPropertyAccessFromIndexSignature": false
|
|
31
|
+
}
|
|
32
|
+
}
|
package/types.d.ts
ADDED