diff --git a/output/outlines/base_outline.dxf b/output/outlines/base_outline.dxf
new file mode 100644
index 0000000..ea67eb3
--- /dev/null
+++ b/output/outlines/base_outline.dxf
@@ -0,0 +1,396 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+10
+20
+-9.5
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+8
+20
+-7.5
+11
+8
+21
+41.5
+0
+ARC
+8
+0
+10
+10
+20
+-7.5
+40
+2
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+26
+20
+43.5
+11
+10
+21
+43.5
+0
+ARC
+8
+0
+10
+10
+20
+41.5
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+55.4
+11
+28
+21
+55.4
+0
+ARC
+8
+0
+10
+28
+20
+53.4
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+26
+20
+53.4
+11
+26
+21
+43.5
+0
+LINE
+8
+0
+10
+64
+20
+55.4
+11
+64
+21
+56.8
+0
+ARC
+8
+0
+10
+62
+20
+56.8
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+62
+20
+58.8
+11
+46
+21
+58.8
+0
+ARC
+8
+0
+10
+46
+20
+56.8
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+56.8
+11
+44
+21
+55.4
+0
+ARC
+8
+0
+10
+80
+20
+53.4
+40
+2
+50
+8.6232234
+51
+90
+0
+LINE
+8
+0
+10
+80
+20
+55.4
+11
+64
+21
+55.4
+0
+ARC
+8
+0
+10
+98
+20
+51.7
+40
+2
+50
+4.3012222
+51
+90
+0
+LINE
+8
+0
+10
+98
+20
+53.7
+11
+82
+21
+53.7
+0
+ARC
+8
+0
+10
+82
+20
+51.7
+40
+2
+50
+90
+51
+90.6477025
+0
+ARC
+8
+0
+10
+117.7030442
+20
+-40.2724513
+40
+2
+50
+225
+51
+315
+0
+LINE
+8
+0
+10
+119.1172578
+20
+-41.6866649
+11
+129.7238595
+21
+-31.0800632
+0
+ARC
+8
+0
+10
+128.3096459
+20
+-29.6658496
+40
+2
+50
+315
+51
+45
+0
+LINE
+8
+0
+10
+122
+20
+-20.208734
+11
+129.7238595
+21
+-28.251636
+0
+LINE
+8
+0
+10
+116.2888306
+20
+-41.6866649
+11
+72.7071068
+21
+-16.5247449
+0
+LINE
+8
+0
+10
+72.7071068
+20
+-16.5247449
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+122
+20
+-20.208734
+11
+122
+21
+49.85
+0
+ARC
+8
+0
+10
+120
+20
+49.85
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+120
+20
+51.85
+11
+99.9943671
+21
+51.85
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/base_outline.svg b/output/outlines/base_outline.svg
new file mode 100644
index 0000000..e5c15c7
--- /dev/null
+++ b/output/outlines/base_outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/base_outline.yaml b/output/outlines/base_outline.yaml
new file mode 100644
index 0000000..b65e208
--- /dev/null
+++ b/output/outlines/base_outline.yaml
@@ -0,0 +1,611 @@
+models:
+ export:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 10
+ - -9.5
+ end:
+ - 26
+ - -9.5
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 8
+ - -7.5
+ end:
+ - 8
+ - 41.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - -7.5
+ radius: 2
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 26
+ - 43.5
+ end:
+ - 10
+ - 43.5
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 41.5
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 44
+ - 55.4
+ end:
+ - 28
+ - 55.4
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 28
+ - 53.4
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 26
+ - 53.4
+ end:
+ - 26
+ - 43.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 64
+ - 55.4
+ end:
+ - 64
+ - 56.8
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 56.8
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 62
+ - 58.8
+ end:
+ - 46
+ - 58.8
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 46
+ - 56.8
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 44
+ - 56.8
+ end:
+ - 44
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 53.4
+ radius: 2
+ startAngle: 8.623223387209398
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 80
+ - 55.4
+ end:
+ - 64
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 51.7
+ radius: 2
+ startAngle: 4.301222234879571
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 98
+ - 53.7
+ end:
+ - 82
+ - 53.7
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 82
+ - 51.7
+ radius: 2
+ startAngle: 90
+ endAngle: 90.64770247835352
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 117.7030442
+ - -40.2724513
+ radius: 2
+ startAngle: 225
+ endAngle: 315
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 119.1172578
+ - -41.6866649
+ end:
+ - 129.7238595
+ - -31.080063199999998
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 128.3096459
+ - -29.665849599999998
+ radius: 2
+ startAngle: 315
+ endAngle: 45
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ p2:
+ type: line
+ origin:
+ - 122
+ - -20.20873404242809
+ end:
+ - 129.7238595
+ - -28.251635999999998
+ p4:
+ type: line
+ origin:
+ - 116.2888306
+ - -41.6866649
+ end:
+ - 72.7071068
+ - -16.5247449
+ p5:
+ type: line
+ origin:
+ - 72.7071068
+ - -16.5247449
+ end:
+ - 26
+ - -9.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 122
+ - -20.20873404242809
+ end:
+ - 122
+ - 49.85000000000001
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 120
+ - 49.85000000000001
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 120
+ - 51.85000000000001
+ end:
+ - 99.9943671
+ - 51.85
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/bottom_outline.dxf b/output/outlines/bottom_outline.dxf
new file mode 100644
index 0000000..496e499
--- /dev/null
+++ b/output/outlines/bottom_outline.dxf
@@ -0,0 +1,446 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+10
+20
+-9.5
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+8
+20
+-7.5
+11
+8
+21
+41.5
+0
+ARC
+8
+0
+10
+10
+20
+-7.5
+40
+2
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+26
+20
+43.5
+11
+10
+21
+43.5
+0
+ARC
+8
+0
+10
+10
+20
+41.5
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+55.4
+11
+28
+21
+55.4
+0
+ARC
+8
+0
+10
+28
+20
+53.4
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+26
+20
+53.4
+11
+26
+21
+43.5
+0
+LINE
+8
+0
+10
+64
+20
+55.4
+11
+64
+21
+56.8
+0
+ARC
+8
+0
+10
+62
+20
+56.8
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+62
+20
+58.8
+11
+46
+21
+58.8
+0
+ARC
+8
+0
+10
+46
+20
+56.8
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+56.8
+11
+44
+21
+55.4
+0
+ARC
+8
+0
+10
+80
+20
+53.4
+40
+2
+50
+8.6232234
+51
+90
+0
+LINE
+8
+0
+10
+80
+20
+55.4
+11
+64
+21
+55.4
+0
+ARC
+8
+0
+10
+98
+20
+51.7
+40
+2
+50
+4.3012222
+51
+90
+0
+LINE
+8
+0
+10
+98
+20
+53.7
+11
+82
+21
+53.7
+0
+ARC
+8
+0
+10
+82
+20
+51.7
+40
+2
+50
+90
+51
+90.6477025
+0
+ARC
+8
+0
+10
+117.7030442
+20
+-40.2724513
+40
+2
+50
+225
+51
+315
+0
+LINE
+8
+0
+10
+119.1172578
+20
+-41.6866649
+11
+129.7238595
+21
+-31.0800632
+0
+ARC
+8
+0
+10
+128.3096459
+20
+-29.6658496
+40
+2
+50
+315
+51
+45
+0
+LINE
+8
+0
+10
+122
+20
+-20.208734
+11
+129.7238595
+21
+-28.251636
+0
+LINE
+8
+0
+10
+116.2888306
+20
+-41.6866649
+11
+72.7071068
+21
+-16.5247449
+0
+LINE
+8
+0
+10
+72.7071068
+20
+-16.5247449
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+122
+20
+-20.208734
+11
+122
+21
+49.85
+0
+ARC
+8
+0
+10
+120
+20
+49.85
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+120
+20
+51.85
+11
+99.9943671
+21
+51.85
+0
+CIRCLE
+8
+0
+10
+27
+20
+28.9
+40
+1
+0
+CIRCLE
+8
+0
+10
+27
+20
+0
+40
+1
+0
+CIRCLE
+8
+0
+10
+81
+20
+44.2
+40
+1
+0
+CIRCLE
+8
+0
+10
+72
+20
+-6.12
+40
+1
+0
+CIRCLE
+8
+0
+10
+110.3491337
+20
+-22.3119391
+40
+1
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/bottom_outline.svg b/output/outlines/bottom_outline.svg
new file mode 100644
index 0000000..66b7893
--- /dev/null
+++ b/output/outlines/bottom_outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/bottom_outline.yaml b/output/outlines/bottom_outline.yaml
new file mode 100644
index 0000000..2883bab
--- /dev/null
+++ b/output/outlines/bottom_outline.yaml
@@ -0,0 +1,711 @@
+models:
+ export:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 10
+ - -9.5
+ end:
+ - 26
+ - -9.5
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 8
+ - -7.5
+ end:
+ - 8
+ - 41.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - -7.5
+ radius: 2
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 26
+ - 43.5
+ end:
+ - 10
+ - 43.5
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 41.5
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 44
+ - 55.4
+ end:
+ - 28
+ - 55.4
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 28
+ - 53.4
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 26
+ - 53.4
+ end:
+ - 26
+ - 43.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 64
+ - 55.4
+ end:
+ - 64
+ - 56.8
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 56.8
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 62
+ - 58.8
+ end:
+ - 46
+ - 58.8
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 46
+ - 56.8
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 44
+ - 56.8
+ end:
+ - 44
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 53.4
+ radius: 2
+ startAngle: 8.623223387209398
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 80
+ - 55.4
+ end:
+ - 64
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 51.7
+ radius: 2
+ startAngle: 4.301222234879571
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 98
+ - 53.7
+ end:
+ - 82
+ - 53.7
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 82
+ - 51.7
+ radius: 2
+ startAngle: 90
+ endAngle: 90.64770247835352
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 117.7030442
+ - -40.2724513
+ radius: 2
+ startAngle: 225
+ endAngle: 315
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 119.1172578
+ - -41.6866649
+ end:
+ - 129.7238595
+ - -31.080063199999998
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 128.3096459
+ - -29.665849599999998
+ radius: 2
+ startAngle: 315
+ endAngle: 45
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ p2:
+ type: line
+ origin:
+ - 122
+ - -20.20873404242809
+ end:
+ - 129.7238595
+ - -28.251635999999998
+ p4:
+ type: line
+ origin:
+ - 116.2888306
+ - -41.6866649
+ end:
+ - 72.7071068
+ - -16.5247449
+ p5:
+ type: line
+ origin:
+ - 72.7071068
+ - -16.5247449
+ end:
+ - 26
+ - -9.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 122
+ - -20.20873404242809
+ end:
+ - 122
+ - 49.85000000000001
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 120
+ - 49.85000000000001
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 120
+ - 51.85000000000001
+ end:
+ - 99.9943671
+ - 51.85
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 28.9
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 0
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 81
+ - 44.2
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 72
+ - -6.119999999999999
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 110.3491337
+ - -22.311939099999996
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/controller_area.dxf b/output/outlines/controller_area.dxf
new file mode 100644
index 0000000..8174a11
--- /dev/null
+++ b/output/outlines/controller_area.dxf
@@ -0,0 +1,154 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+92
+20
+-24.65
+11
+120
+21
+-24.65
+0
+ARC
+8
+0
+10
+120
+20
+-22.65
+40
+2
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+122
+20
+-22.65
+11
+122
+21
+49.85
+0
+ARC
+8
+0
+10
+120
+20
+49.85
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+120
+20
+51.85
+11
+92
+21
+51.85
+0
+ARC
+8
+0
+10
+92
+20
+49.85
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+90
+20
+49.85
+11
+90
+21
+-22.65
+0
+ARC
+8
+0
+10
+92
+20
+-22.65
+40
+2
+50
+180
+51
+270
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/controller_area.svg b/output/outlines/controller_area.svg
new file mode 100644
index 0000000..2355b9e
--- /dev/null
+++ b/output/outlines/controller_area.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/controller_area.yaml b/output/outlines/controller_area.yaml
new file mode 100644
index 0000000..a689097
--- /dev/null
+++ b/output/outlines/controller_area.yaml
@@ -0,0 +1,89 @@
+models:
+ export:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 92
+ - -24.64999999999999
+ end:
+ - 120
+ - -24.64999999999999
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 120
+ - -22.64999999999999
+ radius: 2
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 122
+ - -22.64999999999999
+ end:
+ - 122
+ - 49.85000000000001
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 120
+ - 49.85000000000001
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 120
+ - 51.85000000000001
+ end:
+ - 92
+ - 51.85000000000001
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 92
+ - 49.85000000000001
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 90
+ - 49.85000000000001
+ end:
+ - 90
+ - -22.64999999999999
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 92
+ - -22.64999999999999
+ radius: 2
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/keycaps.dxf b/output/outlines/keycaps.dxf
new file mode 100644
index 0000000..e8e9e3c
--- /dev/null
+++ b/output/outlines/keycaps.dxf
@@ -0,0 +1,1682 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+10
+20
+-8.5
+11
+26
+21
+-8.5
+0
+ARC
+8
+0
+10
+26
+20
+-7.5
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+27
+20
+-7.5
+11
+27
+21
+4.4
+0
+ARC
+8
+0
+10
+26
+20
+7.5
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+10
+20
+7.5
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+9
+20
+7.5
+11
+9
+21
+-7.5
+0
+ARC
+8
+0
+10
+10
+20
+-7.5
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+26
+20
+9.5
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+27
+20
+19.4
+11
+27
+21
+21.4
+0
+ARC
+8
+0
+10
+26
+20
+24.5
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+10
+20
+24.5
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+9
+20
+24.5
+11
+9
+21
+9.5
+0
+ARC
+8
+0
+10
+10
+20
+9.5
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+26
+20
+26.5
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+27
+20
+36.4
+11
+27
+21
+38.4
+0
+ARC
+8
+0
+10
+26
+20
+41.5
+40
+1
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+26
+20
+42.5
+11
+10
+21
+42.5
+0
+ARC
+8
+0
+10
+10
+20
+41.5
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+9
+20
+41.5
+11
+9
+21
+26.5
+0
+ARC
+8
+0
+10
+10
+20
+26.5
+40
+1
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+28
+20
+3.4
+11
+44
+21
+3.4
+0
+ARC
+8
+0
+10
+44
+20
+4.4
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+45
+20
+4.4
+11
+45
+21
+7.8
+0
+ARC
+8
+0
+10
+44
+20
+19.4
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+28
+20
+19.4
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+27
+20
+9.5
+11
+27
+21
+7.5
+0
+ARC
+8
+0
+10
+28
+20
+4.4
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+44
+20
+21.4
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+45
+20
+22.8
+11
+45
+21
+24.8
+0
+ARC
+8
+0
+10
+44
+20
+36.4
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+28
+20
+36.4
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+27
+20
+26.5
+11
+27
+21
+24.5
+0
+ARC
+8
+0
+10
+28
+20
+21.4
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+44
+20
+38.4
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+45
+20
+39.8
+11
+45
+21
+41.8
+0
+ARC
+8
+0
+10
+44
+20
+53.4
+40
+1
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+44
+20
+54.4
+11
+28
+21
+54.4
+0
+ARC
+8
+0
+10
+28
+20
+53.4
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+27
+20
+53.4
+11
+27
+21
+41.5
+0
+ARC
+8
+0
+10
+28
+20
+38.4
+40
+1
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+46
+20
+6.8
+11
+62
+21
+6.8
+0
+ARC
+8
+0
+10
+62
+20
+7.8
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+63
+20
+19.4
+11
+63
+21
+21.4
+0
+ARC
+8
+0
+10
+62
+20
+22.8
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+46
+20
+22.8
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+45
+20
+21.4
+11
+45
+21
+19.4
+0
+ARC
+8
+0
+10
+46
+20
+7.8
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+62
+20
+24.8
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+63
+20
+36.4
+11
+63
+21
+38.4
+0
+ARC
+8
+0
+10
+62
+20
+39.8
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+46
+20
+39.8
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+45
+20
+38.4
+11
+45
+21
+36.4
+0
+ARC
+8
+0
+10
+46
+20
+24.8
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+62
+20
+41.8
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+63
+20
+53.4
+11
+63
+21
+56.8
+0
+ARC
+8
+0
+10
+62
+20
+56.8
+40
+1
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+62
+20
+57.8
+11
+46
+21
+57.8
+0
+ARC
+8
+0
+10
+46
+20
+56.8
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+45
+20
+56.8
+11
+45
+21
+53.4
+0
+ARC
+8
+0
+10
+46
+20
+41.8
+40
+1
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+64
+20
+3.4
+11
+80
+21
+3.4
+0
+ARC
+8
+0
+10
+80
+20
+4.4
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+81
+20
+17.7
+11
+81
+21
+19.4
+0
+ARC
+8
+0
+10
+80
+20
+19.4
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+64
+20
+19.4
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+63
+20
+7.8
+11
+63
+21
+4.4
+0
+ARC
+8
+0
+10
+64
+20
+4.4
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+80
+20
+21.4
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+81
+20
+34.7
+11
+81
+21
+36.4
+0
+ARC
+8
+0
+10
+80
+20
+36.4
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+64
+20
+36.4
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+63
+20
+24.8
+11
+63
+21
+22.8
+0
+ARC
+8
+0
+10
+64
+20
+21.4
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+80
+20
+38.4
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+81
+20
+51.7
+11
+81
+21
+53.4
+0
+ARC
+8
+0
+10
+80
+20
+53.4
+40
+1
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+80
+20
+54.4
+11
+64
+21
+54.4
+0
+ARC
+8
+0
+10
+64
+20
+53.4
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+63
+20
+41.8
+11
+63
+21
+39.8
+0
+ARC
+8
+0
+10
+64
+20
+38.4
+40
+1
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+82
+20
+1.7
+11
+98
+21
+1.7
+0
+ARC
+8
+0
+10
+98
+20
+2.7
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+99
+20
+2.7
+11
+99
+21
+17.7
+0
+ARC
+8
+0
+10
+98
+20
+17.7
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+82
+20
+17.7
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+81
+20
+4.4
+11
+81
+21
+2.7
+0
+ARC
+8
+0
+10
+82
+20
+2.7
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+98
+20
+19.7
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+99
+20
+19.7
+11
+99
+21
+34.7
+0
+ARC
+8
+0
+10
+98
+20
+34.7
+40
+1
+50
+0
+51
+90
+0
+ARC
+8
+0
+10
+82
+20
+34.7
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+81
+20
+21.4
+11
+81
+21
+19.7
+0
+ARC
+8
+0
+10
+82
+20
+19.7
+40
+1
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+98
+20
+36.7
+40
+1
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+99
+20
+36.7
+11
+99
+21
+51.7
+0
+ARC
+8
+0
+10
+98
+20
+51.7
+40
+1
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+98
+20
+52.7
+11
+82
+21
+52.7
+0
+ARC
+8
+0
+10
+82
+20
+51.7
+40
+1
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+81
+20
+38.4
+11
+81
+21
+36.7
+0
+ARC
+8
+0
+10
+82
+20
+36.7
+40
+1
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+72.9659258
+20
+-15.5588191
+11
+88.420739
+21
+-19.6999238
+0
+ARC
+8
+0
+10
+88.6795581
+20
+-18.733998
+40
+1
+50
+255
+51
+345
+0
+LINE
+8
+0
+10
+89.6454839
+20
+-18.992817
+11
+93.5277696
+21
+-4.5039296
+0
+ARC
+8
+0
+10
+92.5618437
+20
+-4.2451106
+40
+1
+50
+345
+51
+75
+0
+LINE
+8
+0
+10
+92.8206628
+20
+-3.2791847
+11
+77.3658496
+21
+0.86192
+0
+ARC
+8
+0
+10
+77.1070305
+20
+-0.1040058
+40
+1
+50
+75
+51
+165
+0
+LINE
+8
+0
+10
+76.1411047
+20
+0.1548132
+11
+72.258819
+21
+-14.3340742
+0
+ARC
+8
+0
+10
+73.2247449
+20
+-14.5928932
+40
+1
+50
+165
+51
+255
+0
+LINE
+8
+0
+10
+90.2526903
+20
+-20.4587428
+11
+104.1090967
+21
+-28.4587428
+0
+ARC
+8
+0
+10
+104.6090967
+20
+-27.5927174
+40
+1
+50
+240
+51
+330
+0
+LINE
+8
+0
+10
+105.4751221
+20
+-28.0927174
+11
+112.9751221
+21
+-15.1023364
+0
+ARC
+8
+0
+10
+112.1090967
+20
+-14.6023364
+40
+1
+50
+330
+51
+60
+0
+LINE
+8
+0
+10
+112.6090967
+20
+-13.736311
+11
+98.7526903
+21
+-5.736311
+0
+ARC
+8
+0
+10
+98.2526903
+20
+-6.6023364
+40
+1
+50
+60
+51
+150
+0
+LINE
+8
+0
+10
+97.3866649
+20
+-6.1023364
+11
+89.8866649
+21
+-19.0927174
+0
+ARC
+8
+0
+10
+90.7526903
+20
+-19.5927174
+40
+1
+50
+150
+51
+240
+0
+LINE
+8
+0
+10
+105.6822289
+20
+-29.6658496
+11
+116.9959374
+21
+-40.9795581
+0
+ARC
+8
+0
+10
+117.7030442
+20
+-40.2724513
+40
+1
+50
+225
+51
+315
+0
+LINE
+8
+0
+10
+118.410151
+20
+-40.9795581
+11
+129.0167527
+21
+-30.3729564
+0
+ARC
+8
+0
+10
+128.3096459
+20
+-29.6658496
+40
+1
+50
+315
+51
+45
+0
+LINE
+8
+0
+10
+129.0167527
+20
+-28.9587428
+11
+117.7030442
+21
+-17.6450343
+0
+ARC
+8
+0
+10
+116.9959374
+20
+-18.3521411
+40
+1
+50
+45
+51
+135
+0
+LINE
+8
+0
+10
+116.2888306
+20
+-17.6450343
+11
+105.6822289
+21
+-28.251636
+0
+ARC
+8
+0
+10
+106.3893357
+20
+-28.9587428
+40
+1
+50
+135
+51
+225
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/keycaps.svg b/output/outlines/keycaps.svg
new file mode 100644
index 0000000..e981f94
--- /dev/null
+++ b/output/outlines/keycaps.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/keycaps.yaml b/output/outlines/keycaps.yaml
new file mode 100644
index 0000000..dfde5f4
--- /dev/null
+++ b/output/outlines/keycaps.yaml
@@ -0,0 +1,1282 @@
+models:
+ export:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 10
+ - -8.5
+ end:
+ - 26
+ - -8.5
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 26
+ - -7.5
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 27
+ - -7.5
+ end:
+ - 27
+ - 4.4
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 26
+ - 7.5
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 7.5
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 9
+ - 7.5
+ end:
+ - 9
+ - -7.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - -7.5
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 26
+ - 9.5
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 27
+ - 19.4
+ end:
+ - 27
+ - 21.4
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 26
+ - 24.5
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 24.5
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 9
+ - 24.5
+ end:
+ - 9
+ - 9.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - 9.5
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 26
+ - 26.5
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 27
+ - 36.4
+ end:
+ - 27
+ - 38.4
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 26
+ - 41.5
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 26
+ - 42.5
+ end:
+ - 10
+ - 42.5
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 41.5
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 9
+ - 41.5
+ end:
+ - 9
+ - 26.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - 26.5
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 28
+ - 3.4000000000000004
+ end:
+ - 44
+ - 3.4000000000000004
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 44
+ - 4.4
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 45
+ - 4.4
+ end:
+ - 45
+ - 7.800000000000001
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 44
+ - 19.4
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 28
+ - 19.4
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 27
+ - 9.5
+ end:
+ - 27
+ - 7.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 28
+ - 4.4
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 44
+ - 21.4
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 45
+ - 22.8
+ end:
+ - 45
+ - 24.799999999999997
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 44
+ - 36.4
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 28
+ - 36.4
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 27
+ - 26.5
+ end:
+ - 27
+ - 24.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 28
+ - 21.4
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 44
+ - 38.4
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 45
+ - 39.8
+ end:
+ - 45
+ - 41.8
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 44
+ - 53.4
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 44
+ - 54.4
+ end:
+ - 28
+ - 54.4
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 28
+ - 53.4
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 27
+ - 53.4
+ end:
+ - 27
+ - 41.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 28
+ - 38.4
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 46
+ - 6.800000000000001
+ end:
+ - 62
+ - 6.800000000000001
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 7.800000000000001
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 63
+ - 19.4
+ end:
+ - 63
+ - 21.4
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 22.8
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 46
+ - 22.8
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 45
+ - 21.4
+ end:
+ - 45
+ - 19.4
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 46
+ - 7.800000000000001
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 24.799999999999997
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 63
+ - 36.4
+ end:
+ - 63
+ - 38.4
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 39.8
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 46
+ - 39.8
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 45
+ - 38.4
+ end:
+ - 45
+ - 36.4
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 46
+ - 24.799999999999997
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 41.8
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 63
+ - 53.4
+ end:
+ - 63
+ - 56.8
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 56.8
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 62
+ - 57.8
+ end:
+ - 46
+ - 57.8
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 46
+ - 56.8
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 45
+ - 56.8
+ end:
+ - 45
+ - 53.4
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 46
+ - 41.8
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 64
+ - 3.4000000000000004
+ end:
+ - 80
+ - 3.4000000000000004
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 4.4
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 81
+ - 17.7
+ end:
+ - 81
+ - 19.4
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 19.4
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 64
+ - 19.4
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 63
+ - 7.800000000000001
+ end:
+ - 63
+ - 4.4
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 64
+ - 4.4
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 21.4
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 81
+ - 34.7
+ end:
+ - 81
+ - 36.4
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 36.4
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 64
+ - 36.4
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 63
+ - 24.799999999999997
+ end:
+ - 63
+ - 22.8
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 64
+ - 21.4
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 38.4
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom_1:
+ type: line
+ origin:
+ - 81
+ - 51.7
+ end:
+ - 81
+ - 53.4
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 53.4
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 80
+ - 54.4
+ end:
+ - 64
+ - 54.4
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 64
+ - 53.4
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 63
+ - 41.8
+ end:
+ - 63
+ - 39.8
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 64
+ - 38.4
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 82
+ - 1.6999999999999993
+ end:
+ - 98
+ - 1.6999999999999993
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 2.6999999999999993
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 99
+ - 2.6999999999999993
+ end:
+ - 99
+ - 17.7
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 17.7
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 82
+ - 17.7
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 81
+ - 4.4
+ end:
+ - 81
+ - 2.6999999999999993
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 82
+ - 2.6999999999999993
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 19.7
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 99
+ - 19.7
+ end:
+ - 99
+ - 34.7
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 34.7
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 82
+ - 34.7
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 81
+ - 21.4
+ end:
+ - 81
+ - 19.7
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 82
+ - 19.7
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 36.7
+ radius: 1
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 99
+ - 36.7
+ end:
+ - 99
+ - 51.7
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 51.7
+ radius: 1
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 98
+ - 52.7
+ end:
+ - 82
+ - 52.7
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 82
+ - 51.7
+ radius: 1
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 81
+ - 38.4
+ end:
+ - 81
+ - 36.7
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 82
+ - 36.7
+ radius: 1
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 72.96592580000001
+ - -15.558819100000001
+ end:
+ - 88.42073900000001
+ - -19.6999238
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 88.67955810000001
+ - -18.733998
+ radius: 1
+ startAngle: 255
+ endAngle: 345
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 89.64548390000002
+ - -18.992817000000002
+ end:
+ - 93.5277696
+ - -4.503929600000001
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 92.56184370000001
+ - -4.2451106
+ radius: 1
+ startAngle: 345
+ endAngle: 75
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 92.82066280000001
+ - -3.279184700000002
+ end:
+ - 77.3658496
+ - 0.8619199999999978
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 77.10703050000001
+ - -0.10400579999999948
+ radius: 1
+ startAngle: 75
+ endAngle: 165
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 76.14110470000001
+ - 0.154813199999996
+ end:
+ - 72.258819
+ - -14.334074200000002
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 73.2247449
+ - -14.592893200000002
+ radius: 1
+ startAngle: 165
+ endAngle: 255
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 90.2526903
+ - -20.458742799999996
+ end:
+ - 104.1090967
+ - -28.458742799999996
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 104.6090967
+ - -27.592717399999998
+ radius: 1
+ startAngle: 240
+ endAngle: 330
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 105.4751221
+ - -28.092717399999998
+ end:
+ - 112.9751221
+ - -15.102336399999999
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 112.1090967
+ - -14.602336399999999
+ radius: 1
+ startAngle: 330
+ endAngle: 60
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 112.6090967
+ - -13.736310999999999
+ end:
+ - 98.7526903
+ - -5.736311000000001
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 98.2526903
+ - -6.602336399999999
+ radius: 1
+ startAngle: 60
+ endAngle: 150
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 97.3866649
+ - -6.102336399999999
+ end:
+ - 89.8866649
+ - -19.092717399999998
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 90.7526903
+ - -19.592717399999998
+ radius: 1
+ startAngle: 150
+ endAngle: 240
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 105.6822289
+ - -29.665849599999998
+ end:
+ - 116.9959374
+ - -40.9795581
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 117.7030442
+ - -40.2724513
+ radius: 1
+ startAngle: 225
+ endAngle: 315
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 118.410151
+ - -40.9795581
+ end:
+ - 129.01675269999998
+ - -30.3729564
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 128.3096459
+ - -29.665849599999998
+ radius: 1
+ startAngle: 315
+ endAngle: 45
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 129.01675269999998
+ - -28.9587428
+ end:
+ - 117.7030442
+ - -17.6450343
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 116.9959374
+ - -18.352141099999997
+ radius: 1
+ startAngle: 45
+ endAngle: 135
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 116.2888306
+ - -17.6450343
+ end:
+ - 105.6822289
+ - -28.251635999999998
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 106.3893357
+ - -28.9587428
+ radius: 1
+ startAngle: 135
+ endAngle: 225
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/keywell.dxf b/output/outlines/keywell.dxf
new file mode 100644
index 0000000..231587b
--- /dev/null
+++ b/output/outlines/keywell.dxf
@@ -0,0 +1,370 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+10
+20
+-9.5
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+8
+20
+-7.5
+11
+8
+21
+41.5
+0
+ARC
+8
+0
+10
+10
+20
+-7.5
+40
+2
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+26
+20
+43.5
+11
+10
+21
+43.5
+0
+ARC
+8
+0
+10
+10
+20
+41.5
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+55.4
+11
+28
+21
+55.4
+0
+ARC
+8
+0
+10
+28
+20
+53.4
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+26
+20
+53.4
+11
+26
+21
+43.5
+0
+LINE
+8
+0
+10
+64
+20
+55.4
+11
+64
+21
+56.8
+0
+ARC
+8
+0
+10
+62
+20
+56.8
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+62
+20
+58.8
+11
+46
+21
+58.8
+0
+ARC
+8
+0
+10
+46
+20
+56.8
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+56.8
+11
+44
+21
+55.4
+0
+ARC
+8
+0
+10
+80
+20
+53.4
+40
+2
+50
+8.6232234
+51
+90
+0
+LINE
+8
+0
+10
+80
+20
+55.4
+11
+64
+21
+55.4
+0
+LINE
+8
+0
+10
+100
+20
+2.7
+11
+100
+21
+51.7
+0
+ARC
+8
+0
+10
+98
+20
+51.7
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+98
+20
+53.7
+11
+82
+21
+53.7
+0
+ARC
+8
+0
+10
+82
+20
+51.7
+40
+2
+50
+90
+51
+90.6477025
+0
+ARC
+8
+0
+10
+117.7030442
+20
+-40.2724513
+40
+2
+50
+225
+51
+315
+0
+LINE
+8
+0
+10
+119.1172578
+20
+-41.6866649
+11
+129.7238595
+21
+-31.0800632
+0
+ARC
+8
+0
+10
+128.3096459
+20
+-29.6658496
+40
+2
+50
+315
+51
+45
+0
+LINE
+8
+0
+10
+100
+20
+2.7
+11
+129.7238595
+21
+-28.251636
+0
+LINE
+8
+0
+10
+116.2888306
+20
+-41.6866649
+11
+72.7071068
+21
+-16.5247449
+0
+LINE
+8
+0
+10
+72.7071068
+20
+-16.5247449
+11
+26
+21
+-9.5
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/keywell.svg b/output/outlines/keywell.svg
new file mode 100644
index 0000000..c1a8fdc
--- /dev/null
+++ b/output/outlines/keywell.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/keywell.yaml b/output/outlines/keywell.yaml
new file mode 100644
index 0000000..e54f488
--- /dev/null
+++ b/output/outlines/keywell.yaml
@@ -0,0 +1,560 @@
+models:
+ export:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 10
+ - -9.5
+ end:
+ - 26
+ - -9.5
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 8
+ - -7.5
+ end:
+ - 8
+ - 41.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - -7.5
+ radius: 2
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 26
+ - 43.5
+ end:
+ - 10
+ - 43.5
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 41.5
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 44
+ - 55.4
+ end:
+ - 28
+ - 55.4
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 28
+ - 53.4
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 26
+ - 53.4
+ end:
+ - 26
+ - 43.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 64
+ - 55.4
+ end:
+ - 64
+ - 56.8
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 56.8
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 62
+ - 58.8
+ end:
+ - 46
+ - 58.8
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 46
+ - 56.8
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 44
+ - 56.8
+ end:
+ - 44
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 53.4
+ radius: 2
+ startAngle: 8.623223387209398
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 80
+ - 55.4
+ end:
+ - 64
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 100
+ - 2.6999999999999993
+ end:
+ - 100
+ - 51.7
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 51.7
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 98
+ - 53.7
+ end:
+ - 82
+ - 53.7
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 82
+ - 51.7
+ radius: 2
+ startAngle: 90
+ endAngle: 90.64770247835352
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 117.7030442
+ - -40.2724513
+ radius: 2
+ startAngle: 225
+ endAngle: 315
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 119.1172578
+ - -41.6866649
+ end:
+ - 129.7238595
+ - -31.080063199999998
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 128.3096459
+ - -29.665849599999998
+ radius: 2
+ startAngle: 315
+ endAngle: 45
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ p2:
+ type: line
+ origin:
+ - 100
+ - 2.6999999999999993
+ end:
+ - 129.7238595
+ - -28.251635999999998
+ p4:
+ type: line
+ origin:
+ - 116.2888306
+ - -41.6866649
+ end:
+ - 72.7071068
+ - -16.5247449
+ p5:
+ type: line
+ origin:
+ - 72.7071068
+ - -16.5247449
+ end:
+ - 26
+ - -9.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/mounting_holes.dxf b/output/outlines/mounting_holes.dxf
new file mode 100644
index 0000000..0cf819d
--- /dev/null
+++ b/output/outlines/mounting_holes.dxf
@@ -0,0 +1,100 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+CIRCLE
+8
+0
+10
+27
+20
+28.9
+40
+1.6
+0
+CIRCLE
+8
+0
+10
+27
+20
+0
+40
+1.6
+0
+CIRCLE
+8
+0
+10
+81
+20
+44.2
+40
+1.6
+0
+CIRCLE
+8
+0
+10
+72
+20
+-6.12
+40
+1.6
+0
+CIRCLE
+8
+0
+10
+110.3491337
+20
+-22.3119391
+40
+1.6
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/mounting_holes.svg b/output/outlines/mounting_holes.svg
new file mode 100644
index 0000000..cfa9740
--- /dev/null
+++ b/output/outlines/mounting_holes.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/mounting_holes.yaml b/output/outlines/mounting_holes.yaml
new file mode 100644
index 0000000..f2e7969
--- /dev/null
+++ b/output/outlines/mounting_holes.yaml
@@ -0,0 +1,90 @@
+models:
+ export:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 28.9
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 0
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 81
+ - 44.2
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 72
+ - -6.119999999999999
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 110.3491337
+ - -22.311939099999996
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/patch_inner.dxf b/output/outlines/patch_inner.dxf
new file mode 100644
index 0000000..9d738b7
--- /dev/null
+++ b/output/outlines/patch_inner.dxf
@@ -0,0 +1,98 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+72
+20
+45.9
+11
+100
+21
+44.2
+0
+LINE
+8
+0
+10
+100
+20
+44.2
+11
+100
+21
+10.2
+0
+LINE
+8
+0
+10
+100
+20
+10.2
+11
+72
+21
+11.9
+0
+LINE
+8
+0
+10
+72
+20
+11.9
+11
+72
+21
+45.9
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/patch_inner.svg b/output/outlines/patch_inner.svg
new file mode 100644
index 0000000..db30ba2
--- /dev/null
+++ b/output/outlines/patch_inner.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/patch_inner.yaml b/output/outlines/patch_inner.yaml
new file mode 100644
index 0000000..6a48bd1
--- /dev/null
+++ b/output/outlines/patch_inner.yaml
@@ -0,0 +1,52 @@
+models:
+ export:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ p1:
+ type: line
+ origin:
+ - 72
+ - 45.9
+ end:
+ - 100
+ - 44.2
+ p2:
+ type: line
+ origin:
+ - 100
+ - 44.2
+ end:
+ - 100
+ - 10.2
+ p3:
+ type: line
+ origin:
+ - 100
+ - 10.2
+ end:
+ - 72
+ - 11.9
+ p4:
+ type: line
+ origin:
+ - 72
+ - 11.9
+ end:
+ - 72
+ - 45.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/patch_outer.dxf b/output/outlines/patch_outer.dxf
new file mode 100644
index 0000000..56cb189
--- /dev/null
+++ b/output/outlines/patch_outer.dxf
@@ -0,0 +1,98 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+8
+20
+34
+11
+36
+21
+45.9
+0
+LINE
+8
+0
+10
+36
+20
+45.9
+11
+36
+21
+11.9
+0
+LINE
+8
+0
+10
+36
+20
+11.9
+11
+8
+21
+0
+0
+LINE
+8
+0
+10
+8
+20
+0
+11
+8
+21
+34
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/patch_outer.svg b/output/outlines/patch_outer.svg
new file mode 100644
index 0000000..05ea8e2
--- /dev/null
+++ b/output/outlines/patch_outer.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/patch_outer.yaml b/output/outlines/patch_outer.yaml
new file mode 100644
index 0000000..e0c09e7
--- /dev/null
+++ b/output/outlines/patch_outer.yaml
@@ -0,0 +1,52 @@
+models:
+ export:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ p1:
+ type: line
+ origin:
+ - 8
+ - 34
+ end:
+ - 36
+ - 45.9
+ p2:
+ type: line
+ origin:
+ - 36
+ - 45.9
+ end:
+ - 36
+ - 11.9
+ p3:
+ type: line
+ origin:
+ - 36
+ - 11.9
+ end:
+ - 8
+ - 0
+ p4:
+ type: line
+ origin:
+ - 8
+ - 0
+ end:
+ - 8
+ - 34
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/pcb.dxf b/output/outlines/pcb.dxf
new file mode 100644
index 0000000..b6b912f
--- /dev/null
+++ b/output/outlines/pcb.dxf
@@ -0,0 +1,446 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+10
+20
+-9.5
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+8
+20
+-7.5
+11
+8
+21
+41.5
+0
+ARC
+8
+0
+10
+10
+20
+-7.5
+40
+2
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+26
+20
+43.5
+11
+10
+21
+43.5
+0
+ARC
+8
+0
+10
+10
+20
+41.5
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+55.4
+11
+28
+21
+55.4
+0
+ARC
+8
+0
+10
+28
+20
+53.4
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+26
+20
+53.4
+11
+26
+21
+43.5
+0
+LINE
+8
+0
+10
+64
+20
+55.4
+11
+64
+21
+56.8
+0
+ARC
+8
+0
+10
+62
+20
+56.8
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+62
+20
+58.8
+11
+46
+21
+58.8
+0
+ARC
+8
+0
+10
+46
+20
+56.8
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+56.8
+11
+44
+21
+55.4
+0
+ARC
+8
+0
+10
+80
+20
+53.4
+40
+2
+50
+8.6232234
+51
+90
+0
+LINE
+8
+0
+10
+80
+20
+55.4
+11
+64
+21
+55.4
+0
+ARC
+8
+0
+10
+98
+20
+51.7
+40
+2
+50
+4.3012222
+51
+90
+0
+LINE
+8
+0
+10
+98
+20
+53.7
+11
+82
+21
+53.7
+0
+ARC
+8
+0
+10
+82
+20
+51.7
+40
+2
+50
+90
+51
+90.6477025
+0
+ARC
+8
+0
+10
+117.7030442
+20
+-40.2724513
+40
+2
+50
+225
+51
+315
+0
+LINE
+8
+0
+10
+119.1172578
+20
+-41.6866649
+11
+129.7238595
+21
+-31.0800632
+0
+ARC
+8
+0
+10
+128.3096459
+20
+-29.6658496
+40
+2
+50
+315
+51
+45
+0
+LINE
+8
+0
+10
+122
+20
+-20.208734
+11
+129.7238595
+21
+-28.251636
+0
+LINE
+8
+0
+10
+116.2888306
+20
+-41.6866649
+11
+72.7071068
+21
+-16.5247449
+0
+LINE
+8
+0
+10
+72.7071068
+20
+-16.5247449
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+122
+20
+-20.208734
+11
+122
+21
+49.85
+0
+ARC
+8
+0
+10
+120
+20
+49.85
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+120
+20
+51.85
+11
+99.9943671
+21
+51.85
+0
+CIRCLE
+8
+0
+10
+27
+20
+28.9
+40
+1.6
+0
+CIRCLE
+8
+0
+10
+27
+20
+0
+40
+1.6
+0
+CIRCLE
+8
+0
+10
+81
+20
+44.2
+40
+1.6
+0
+CIRCLE
+8
+0
+10
+72
+20
+-6.12
+40
+1.6
+0
+CIRCLE
+8
+0
+10
+110.3491337
+20
+-22.3119391
+40
+1.6
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/pcb.svg b/output/outlines/pcb.svg
new file mode 100644
index 0000000..2ebfd9b
--- /dev/null
+++ b/output/outlines/pcb.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/pcb.yaml b/output/outlines/pcb.yaml
new file mode 100644
index 0000000..b4a2e3f
--- /dev/null
+++ b/output/outlines/pcb.yaml
@@ -0,0 +1,711 @@
+models:
+ export:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 10
+ - -9.5
+ end:
+ - 26
+ - -9.5
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 8
+ - -7.5
+ end:
+ - 8
+ - 41.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - -7.5
+ radius: 2
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 26
+ - 43.5
+ end:
+ - 10
+ - 43.5
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 41.5
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 44
+ - 55.4
+ end:
+ - 28
+ - 55.4
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 28
+ - 53.4
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 26
+ - 53.4
+ end:
+ - 26
+ - 43.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 64
+ - 55.4
+ end:
+ - 64
+ - 56.8
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 56.8
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 62
+ - 58.8
+ end:
+ - 46
+ - 58.8
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 46
+ - 56.8
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 44
+ - 56.8
+ end:
+ - 44
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 53.4
+ radius: 2
+ startAngle: 8.623223387209398
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 80
+ - 55.4
+ end:
+ - 64
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 51.7
+ radius: 2
+ startAngle: 4.301222234879571
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 98
+ - 53.7
+ end:
+ - 82
+ - 53.7
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 82
+ - 51.7
+ radius: 2
+ startAngle: 90
+ endAngle: 90.64770247835352
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 117.7030442
+ - -40.2724513
+ radius: 2
+ startAngle: 225
+ endAngle: 315
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 119.1172578
+ - -41.6866649
+ end:
+ - 129.7238595
+ - -31.080063199999998
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 128.3096459
+ - -29.665849599999998
+ radius: 2
+ startAngle: 315
+ endAngle: 45
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ p2:
+ type: line
+ origin:
+ - 122
+ - -20.20873404242809
+ end:
+ - 129.7238595
+ - -28.251635999999998
+ p4:
+ type: line
+ origin:
+ - 116.2888306
+ - -41.6866649
+ end:
+ - 72.7071068
+ - -16.5247449
+ p5:
+ type: line
+ origin:
+ - 72.7071068
+ - -16.5247449
+ end:
+ - 26
+ - -9.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 122
+ - -20.20873404242809
+ end:
+ - 122
+ - 49.85000000000001
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 120
+ - 49.85000000000001
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 120
+ - 51.85000000000001
+ end:
+ - 99.9943671
+ - 51.85
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 28.9
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 0
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 81
+ - 44.2
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 72
+ - -6.119999999999999
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 110.3491337
+ - -22.311939099999996
+ radius: 1.6
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/plate.dxf b/output/outlines/plate.dxf
new file mode 100644
index 0000000..35b195f
--- /dev/null
+++ b/output/outlines/plate.dxf
@@ -0,0 +1,1284 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+10
+20
+-9.5
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+8
+20
+-7.5
+11
+8
+21
+41.5
+0
+ARC
+8
+0
+10
+10
+20
+-7.5
+40
+2
+50
+180
+51
+270
+0
+LINE
+8
+0
+10
+26
+20
+43.5
+11
+10
+21
+43.5
+0
+ARC
+8
+0
+10
+10
+20
+41.5
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+55.4
+11
+28
+21
+55.4
+0
+ARC
+8
+0
+10
+28
+20
+53.4
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+26
+20
+53.4
+11
+26
+21
+43.5
+0
+LINE
+8
+0
+10
+64
+20
+55.4
+11
+64
+21
+56.8
+0
+ARC
+8
+0
+10
+62
+20
+56.8
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+62
+20
+58.8
+11
+46
+21
+58.8
+0
+ARC
+8
+0
+10
+46
+20
+56.8
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+56.8
+11
+44
+21
+55.4
+0
+ARC
+8
+0
+10
+80
+20
+53.4
+40
+2
+50
+8.6232234
+51
+90
+0
+LINE
+8
+0
+10
+80
+20
+55.4
+11
+64
+21
+55.4
+0
+LINE
+8
+0
+10
+100
+20
+2.7
+11
+100
+21
+51.7
+0
+ARC
+8
+0
+10
+98
+20
+51.7
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+98
+20
+53.7
+11
+82
+21
+53.7
+0
+ARC
+8
+0
+10
+82
+20
+51.7
+40
+2
+50
+90
+51
+90.6477025
+0
+ARC
+8
+0
+10
+117.7030442
+20
+-40.2724513
+40
+2
+50
+225
+51
+315
+0
+LINE
+8
+0
+10
+119.1172578
+20
+-41.6866649
+11
+129.7238595
+21
+-31.0800632
+0
+ARC
+8
+0
+10
+128.3096459
+20
+-29.6658496
+40
+2
+50
+315
+51
+45
+0
+LINE
+8
+0
+10
+100
+20
+2.7
+11
+129.7238595
+21
+-28.251636
+0
+LINE
+8
+0
+10
+116.2888306
+20
+-41.6866649
+11
+72.7071068
+21
+-16.5247449
+0
+LINE
+8
+0
+10
+72.7071068
+20
+-16.5247449
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+11
+20
+-7
+11
+25
+21
+-7
+0
+LINE
+8
+0
+10
+25
+20
+-7
+11
+25
+21
+7
+0
+LINE
+8
+0
+10
+25
+20
+7
+11
+11
+21
+7
+0
+LINE
+8
+0
+10
+11
+20
+7
+11
+11
+21
+-7
+0
+LINE
+8
+0
+10
+11
+20
+10
+11
+25
+21
+10
+0
+LINE
+8
+0
+10
+25
+20
+10
+11
+25
+21
+24
+0
+LINE
+8
+0
+10
+25
+20
+24
+11
+11
+21
+24
+0
+LINE
+8
+0
+10
+11
+20
+24
+11
+11
+21
+10
+0
+LINE
+8
+0
+10
+11
+20
+27
+11
+25
+21
+27
+0
+LINE
+8
+0
+10
+25
+20
+27
+11
+25
+21
+41
+0
+LINE
+8
+0
+10
+25
+20
+41
+11
+11
+21
+41
+0
+LINE
+8
+0
+10
+11
+20
+41
+11
+11
+21
+27
+0
+LINE
+8
+0
+10
+29
+20
+4.9
+11
+43
+21
+4.9
+0
+LINE
+8
+0
+10
+43
+20
+4.9
+11
+43
+21
+18.9
+0
+LINE
+8
+0
+10
+43
+20
+18.9
+11
+29
+21
+18.9
+0
+LINE
+8
+0
+10
+29
+20
+18.9
+11
+29
+21
+4.9
+0
+LINE
+8
+0
+10
+29
+20
+21.9
+11
+43
+21
+21.9
+0
+LINE
+8
+0
+10
+43
+20
+21.9
+11
+43
+21
+35.9
+0
+LINE
+8
+0
+10
+43
+20
+35.9
+11
+29
+21
+35.9
+0
+LINE
+8
+0
+10
+29
+20
+35.9
+11
+29
+21
+21.9
+0
+LINE
+8
+0
+10
+29
+20
+38.9
+11
+43
+21
+38.9
+0
+LINE
+8
+0
+10
+43
+20
+38.9
+11
+43
+21
+52.9
+0
+LINE
+8
+0
+10
+43
+20
+52.9
+11
+29
+21
+52.9
+0
+LINE
+8
+0
+10
+29
+20
+52.9
+11
+29
+21
+38.9
+0
+LINE
+8
+0
+10
+47
+20
+8.3
+11
+61
+21
+8.3
+0
+LINE
+8
+0
+10
+61
+20
+8.3
+11
+61
+21
+22.3
+0
+LINE
+8
+0
+10
+61
+20
+22.3
+11
+47
+21
+22.3
+0
+LINE
+8
+0
+10
+47
+20
+22.3
+11
+47
+21
+8.3
+0
+LINE
+8
+0
+10
+47
+20
+25.3
+11
+61
+21
+25.3
+0
+LINE
+8
+0
+10
+61
+20
+25.3
+11
+61
+21
+39.3
+0
+LINE
+8
+0
+10
+61
+20
+39.3
+11
+47
+21
+39.3
+0
+LINE
+8
+0
+10
+47
+20
+39.3
+11
+47
+21
+25.3
+0
+LINE
+8
+0
+10
+47
+20
+42.3
+11
+61
+21
+42.3
+0
+LINE
+8
+0
+10
+61
+20
+42.3
+11
+61
+21
+56.3
+0
+LINE
+8
+0
+10
+61
+20
+56.3
+11
+47
+21
+56.3
+0
+LINE
+8
+0
+10
+47
+20
+56.3
+11
+47
+21
+42.3
+0
+LINE
+8
+0
+10
+65
+20
+4.9
+11
+79
+21
+4.9
+0
+LINE
+8
+0
+10
+79
+20
+4.9
+11
+79
+21
+18.9
+0
+LINE
+8
+0
+10
+79
+20
+18.9
+11
+65
+21
+18.9
+0
+LINE
+8
+0
+10
+65
+20
+18.9
+11
+65
+21
+4.9
+0
+LINE
+8
+0
+10
+65
+20
+21.9
+11
+79
+21
+21.9
+0
+LINE
+8
+0
+10
+79
+20
+21.9
+11
+79
+21
+35.9
+0
+LINE
+8
+0
+10
+79
+20
+35.9
+11
+65
+21
+35.9
+0
+LINE
+8
+0
+10
+65
+20
+35.9
+11
+65
+21
+21.9
+0
+LINE
+8
+0
+10
+65
+20
+38.9
+11
+79
+21
+38.9
+0
+LINE
+8
+0
+10
+79
+20
+38.9
+11
+79
+21
+52.9
+0
+LINE
+8
+0
+10
+79
+20
+52.9
+11
+65
+21
+52.9
+0
+LINE
+8
+0
+10
+65
+20
+52.9
+11
+65
+21
+38.9
+0
+LINE
+8
+0
+10
+83
+20
+3.2
+11
+97
+21
+3.2
+0
+LINE
+8
+0
+10
+97
+20
+3.2
+11
+97
+21
+17.2
+0
+LINE
+8
+0
+10
+97
+20
+17.2
+11
+83
+21
+17.2
+0
+LINE
+8
+0
+10
+83
+20
+17.2
+11
+83
+21
+3.2
+0
+LINE
+8
+0
+10
+83
+20
+20.2
+11
+97
+21
+20.2
+0
+LINE
+8
+0
+10
+97
+20
+20.2
+11
+97
+21
+34.2
+0
+LINE
+8
+0
+10
+97
+20
+34.2
+11
+83
+21
+34.2
+0
+LINE
+8
+0
+10
+83
+20
+34.2
+11
+83
+21
+20.2
+0
+LINE
+8
+0
+10
+83
+20
+37.2
+11
+97
+21
+37.2
+0
+LINE
+8
+0
+10
+97
+20
+37.2
+11
+97
+21
+51.2
+0
+LINE
+8
+0
+10
+97
+20
+51.2
+11
+83
+21
+51.2
+0
+LINE
+8
+0
+10
+83
+20
+51.2
+11
+83
+21
+37.2
+0
+LINE
+8
+0
+10
+74.3200802
+20
+-14.3687494
+11
+87.8430418
+21
+-17.992216
+0
+LINE
+8
+0
+10
+87.8430418
+20
+-17.992216
+11
+91.4665084
+21
+-4.4692544
+0
+LINE
+8
+0
+10
+91.4665084
+20
+-4.4692544
+11
+77.9435468
+21
+-0.8457878
+0
+LINE
+8
+0
+10
+77.9435468
+20
+-0.8457878
+11
+74.3200802
+21
+-14.3687494
+0
+LINE
+8
+0
+10
+91.8687157
+20
+-19.6597047
+11
+103.9930713
+21
+-26.6597047
+0
+LINE
+8
+0
+10
+103.9930713
+20
+-26.6597047
+11
+110.9930713
+21
+-14.5353491
+0
+LINE
+8
+0
+10
+110.9930713
+20
+-14.5353491
+11
+98.8687157
+21
+-7.5353491
+0
+LINE
+8
+0
+10
+98.8687157
+20
+-7.5353491
+11
+91.8687157
+21
+-19.6597047
+0
+LINE
+8
+0
+10
+107.4499959
+20
+-29.3122962
+11
+117.3494908
+21
+-39.2117911
+0
+LINE
+8
+0
+10
+117.3494908
+20
+-39.2117911
+11
+127.2489857
+21
+-29.3122962
+0
+LINE
+8
+0
+10
+127.2489857
+20
+-29.3122962
+11
+117.3494908
+21
+-19.4128013
+0
+LINE
+8
+0
+10
+117.3494908
+20
+-19.4128013
+11
+107.4499959
+21
+-29.3122962
+0
+CIRCLE
+8
+0
+10
+27
+20
+28.9
+40
+1
+0
+CIRCLE
+8
+0
+10
+27
+20
+0
+40
+1
+0
+CIRCLE
+8
+0
+10
+81
+20
+44.2
+40
+1
+0
+CIRCLE
+8
+0
+10
+72
+20
+-6.12
+40
+1
+0
+CIRCLE
+8
+0
+10
+110.3491337
+20
+-22.3119391
+40
+1
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/plate.svg b/output/outlines/plate.svg
new file mode 100644
index 0000000..5418920
--- /dev/null
+++ b/output/outlines/plate.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/plate.yaml b/output/outlines/plate.yaml
new file mode 100644
index 0000000..3719274
--- /dev/null
+++ b/output/outlines/plate.yaml
@@ -0,0 +1,1436 @@
+models:
+ export:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 10
+ - -9.5
+ end:
+ - 26
+ - -9.5
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 8
+ - -7.5
+ end:
+ - 8
+ - 41.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - -7.5
+ radius: 2
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 26
+ - 43.5
+ end:
+ - 10
+ - 43.5
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 41.5
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 44
+ - 55.4
+ end:
+ - 28
+ - 55.4
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 28
+ - 53.4
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 26
+ - 53.4
+ end:
+ - 26
+ - 43.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 64
+ - 55.4
+ end:
+ - 64
+ - 56.8
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 56.8
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 62
+ - 58.8
+ end:
+ - 46
+ - 58.8
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 46
+ - 56.8
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 44
+ - 56.8
+ end:
+ - 44
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 53.4
+ radius: 2
+ startAngle: 8.623223387209398
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 80
+ - 55.4
+ end:
+ - 64
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 100
+ - 2.6999999999999993
+ end:
+ - 100
+ - 51.7
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 51.7
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 98
+ - 53.7
+ end:
+ - 82
+ - 53.7
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 82
+ - 51.7
+ radius: 2
+ startAngle: 90
+ endAngle: 90.64770247835352
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 117.7030442
+ - -40.2724513
+ radius: 2
+ startAngle: 225
+ endAngle: 315
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 119.1172578
+ - -41.6866649
+ end:
+ - 129.7238595
+ - -31.080063199999998
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 128.3096459
+ - -29.665849599999998
+ radius: 2
+ startAngle: 315
+ endAngle: 45
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ p2:
+ type: line
+ origin:
+ - 100
+ - 2.6999999999999993
+ end:
+ - 129.7238595
+ - -28.251635999999998
+ p4:
+ type: line
+ origin:
+ - 116.2888306
+ - -41.6866649
+ end:
+ - 72.7071068
+ - -16.5247449
+ p5:
+ type: line
+ origin:
+ - 72.7071068
+ - -16.5247449
+ end:
+ - 26
+ - -9.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 11
+ - -7
+ end:
+ - 25
+ - -7
+ ShapeLine2:
+ type: line
+ origin:
+ - 25
+ - -7
+ end:
+ - 25
+ - 7
+ ShapeLine3:
+ type: line
+ origin:
+ - 25
+ - 7
+ end:
+ - 11
+ - 7
+ ShapeLine4:
+ type: line
+ origin:
+ - 11
+ - 7
+ end:
+ - 11
+ - -7
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 11
+ - 10
+ end:
+ - 25
+ - 10
+ ShapeLine2:
+ type: line
+ origin:
+ - 25
+ - 10
+ end:
+ - 25
+ - 24
+ ShapeLine3:
+ type: line
+ origin:
+ - 25
+ - 24
+ end:
+ - 11
+ - 24
+ ShapeLine4:
+ type: line
+ origin:
+ - 11
+ - 24
+ end:
+ - 11
+ - 10
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 11
+ - 27
+ end:
+ - 25
+ - 27
+ ShapeLine2:
+ type: line
+ origin:
+ - 25
+ - 27
+ end:
+ - 25
+ - 41
+ ShapeLine3:
+ type: line
+ origin:
+ - 25
+ - 41
+ end:
+ - 11
+ - 41
+ ShapeLine4:
+ type: line
+ origin:
+ - 11
+ - 41
+ end:
+ - 11
+ - 27
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 29
+ - 4.9
+ end:
+ - 43
+ - 4.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 43
+ - 4.9
+ end:
+ - 43
+ - 18.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 43
+ - 18.9
+ end:
+ - 29
+ - 18.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 29
+ - 18.9
+ end:
+ - 29
+ - 4.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 29
+ - 21.9
+ end:
+ - 43
+ - 21.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 43
+ - 21.9
+ end:
+ - 43
+ - 35.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 43
+ - 35.9
+ end:
+ - 29
+ - 35.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 29
+ - 35.9
+ end:
+ - 29
+ - 21.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 29
+ - 38.9
+ end:
+ - 43
+ - 38.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 43
+ - 38.9
+ end:
+ - 43
+ - 52.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 43
+ - 52.9
+ end:
+ - 29
+ - 52.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 29
+ - 52.9
+ end:
+ - 29
+ - 38.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 47
+ - 8.3
+ end:
+ - 61
+ - 8.3
+ ShapeLine2:
+ type: line
+ origin:
+ - 61
+ - 8.3
+ end:
+ - 61
+ - 22.3
+ ShapeLine3:
+ type: line
+ origin:
+ - 61
+ - 22.3
+ end:
+ - 47
+ - 22.3
+ ShapeLine4:
+ type: line
+ origin:
+ - 47
+ - 22.3
+ end:
+ - 47
+ - 8.3
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 47
+ - 25.299999999999997
+ end:
+ - 61
+ - 25.299999999999997
+ ShapeLine2:
+ type: line
+ origin:
+ - 61
+ - 25.299999999999997
+ end:
+ - 61
+ - 39.3
+ ShapeLine3:
+ type: line
+ origin:
+ - 61
+ - 39.3
+ end:
+ - 47
+ - 39.3
+ ShapeLine4:
+ type: line
+ origin:
+ - 47
+ - 39.3
+ end:
+ - 47
+ - 25.299999999999997
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 47
+ - 42.3
+ end:
+ - 61
+ - 42.3
+ ShapeLine2:
+ type: line
+ origin:
+ - 61
+ - 42.3
+ end:
+ - 61
+ - 56.3
+ ShapeLine3:
+ type: line
+ origin:
+ - 61
+ - 56.3
+ end:
+ - 47
+ - 56.3
+ ShapeLine4:
+ type: line
+ origin:
+ - 47
+ - 56.3
+ end:
+ - 47
+ - 42.3
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 65
+ - 4.9
+ end:
+ - 79
+ - 4.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 79
+ - 4.9
+ end:
+ - 79
+ - 18.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 79
+ - 18.9
+ end:
+ - 65
+ - 18.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 65
+ - 18.9
+ end:
+ - 65
+ - 4.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 65
+ - 21.9
+ end:
+ - 79
+ - 21.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 79
+ - 21.9
+ end:
+ - 79
+ - 35.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 79
+ - 35.9
+ end:
+ - 65
+ - 35.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 65
+ - 35.9
+ end:
+ - 65
+ - 21.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 65
+ - 38.9
+ end:
+ - 79
+ - 38.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 79
+ - 38.9
+ end:
+ - 79
+ - 52.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 79
+ - 52.9
+ end:
+ - 65
+ - 52.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 65
+ - 52.9
+ end:
+ - 65
+ - 38.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 83
+ - 3.1999999999999993
+ end:
+ - 97
+ - 3.1999999999999993
+ ShapeLine2:
+ type: line
+ origin:
+ - 97
+ - 3.1999999999999993
+ end:
+ - 97
+ - 17.2
+ ShapeLine3:
+ type: line
+ origin:
+ - 97
+ - 17.2
+ end:
+ - 83
+ - 17.2
+ ShapeLine4:
+ type: line
+ origin:
+ - 83
+ - 17.2
+ end:
+ - 83
+ - 3.1999999999999993
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 83
+ - 20.2
+ end:
+ - 97
+ - 20.2
+ ShapeLine2:
+ type: line
+ origin:
+ - 97
+ - 20.2
+ end:
+ - 97
+ - 34.2
+ ShapeLine3:
+ type: line
+ origin:
+ - 97
+ - 34.2
+ end:
+ - 83
+ - 34.2
+ ShapeLine4:
+ type: line
+ origin:
+ - 83
+ - 34.2
+ end:
+ - 83
+ - 20.2
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 83
+ - 37.2
+ end:
+ - 97
+ - 37.2
+ ShapeLine2:
+ type: line
+ origin:
+ - 97
+ - 37.2
+ end:
+ - 97
+ - 51.2
+ ShapeLine3:
+ type: line
+ origin:
+ - 97
+ - 51.2
+ end:
+ - 83
+ - 51.2
+ ShapeLine4:
+ type: line
+ origin:
+ - 83
+ - 51.2
+ end:
+ - 83
+ - 37.2
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 74.3200802
+ - -14.368749400000002
+ end:
+ - 87.84304180000001
+ - -17.992216
+ ShapeLine2:
+ type: line
+ origin:
+ - 87.84304180000001
+ - -17.992216
+ end:
+ - 91.46650840000001
+ - -4.4692544000000005
+ ShapeLine3:
+ type: line
+ origin:
+ - 91.46650840000001
+ - -4.4692544000000005
+ end:
+ - 77.94354680000001
+ - -0.8457878000000019
+ ShapeLine4:
+ type: line
+ origin:
+ - 77.94354680000001
+ - -0.8457878000000019
+ end:
+ - 74.3200802
+ - -14.368749400000002
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 91.8687157
+ - -19.6597047
+ end:
+ - 103.9930713
+ - -26.6597047
+ ShapeLine2:
+ type: line
+ origin:
+ - 103.9930713
+ - -26.6597047
+ end:
+ - 110.9930713
+ - -14.535349099999998
+ ShapeLine3:
+ type: line
+ origin:
+ - 110.9930713
+ - -14.535349099999998
+ end:
+ - 98.8687157
+ - -7.535349099999998
+ ShapeLine4:
+ type: line
+ origin:
+ - 98.8687157
+ - -7.535349099999998
+ end:
+ - 91.8687157
+ - -19.6597047
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 107.4499959
+ - -29.3122962
+ end:
+ - 117.3494908
+ - -39.2117911
+ ShapeLine2:
+ type: line
+ origin:
+ - 117.3494908
+ - -39.2117911
+ end:
+ - 127.24898569999999
+ - -29.3122962
+ ShapeLine3:
+ type: line
+ origin:
+ - 127.24898569999999
+ - -29.3122962
+ end:
+ - 117.3494908
+ - -19.412801299999998
+ ShapeLine4:
+ type: line
+ origin:
+ - 117.3494908
+ - -19.412801299999998
+ end:
+ - 107.4499959
+ - -29.3122962
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 28.9
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 0
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 81
+ - 44.2
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 72
+ - -6.119999999999999
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 110.3491337
+ - -22.311939099999996
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/raw.dxf b/output/outlines/raw.dxf
new file mode 100644
index 0000000..5ccf6c4
--- /dev/null
+++ b/output/outlines/raw.dxf
@@ -0,0 +1,960 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+10
+20
+-9.5
+11
+26
+21
+-9.5
+0
+ARC
+8
+0
+10
+26
+20
+-7.5
+40
+2
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+28
+20
+-7.5
+11
+28
+21
+2.4
+0
+ARC
+8
+0
+10
+10
+20
+7.5
+40
+2
+50
+149.9999999
+51
+180
+0
+LINE
+8
+0
+10
+8
+20
+7.5
+11
+8
+21
+-7.5
+0
+ARC
+8
+0
+10
+10
+20
+-7.5
+40
+2
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+10
+20
+24.5
+40
+2
+50
+149.9999999
+51
+180
+0
+LINE
+8
+0
+10
+8
+20
+24.5
+11
+8
+21
+9.5
+0
+ARC
+8
+0
+10
+10
+20
+9.5
+40
+2
+50
+180
+51
+210.0000001
+0
+LINE
+8
+0
+10
+26
+20
+43.5
+11
+10
+21
+43.5
+0
+ARC
+8
+0
+10
+10
+20
+41.5
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+8
+20
+41.5
+11
+8
+21
+26.5
+0
+ARC
+8
+0
+10
+10
+20
+26.5
+40
+2
+50
+180
+51
+210.0000001
+0
+LINE
+8
+0
+10
+28
+20
+2.4
+11
+44
+21
+2.4
+0
+ARC
+8
+0
+10
+44
+20
+4.4
+40
+2
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+46
+20
+4.4
+11
+46
+21
+5.8
+0
+LINE
+8
+0
+10
+44
+20
+55.4
+11
+28
+21
+55.4
+0
+ARC
+8
+0
+10
+28
+20
+53.4
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+26
+20
+53.4
+11
+26
+21
+43.5
+0
+LINE
+8
+0
+10
+46
+20
+5.8
+11
+62
+21
+5.8
+0
+LINE
+8
+0
+10
+64
+20
+55.4
+11
+64
+21
+56.8
+0
+ARC
+8
+0
+10
+62
+20
+56.8
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+62
+20
+58.8
+11
+46
+21
+58.8
+0
+ARC
+8
+0
+10
+46
+20
+56.8
+40
+2
+50
+90
+51
+180
+0
+LINE
+8
+0
+10
+44
+20
+56.8
+11
+44
+21
+55.4
+0
+LINE
+8
+0
+10
+64
+20
+2.4
+11
+80
+21
+2.4
+0
+ARC
+8
+0
+10
+80
+20
+4.4
+40
+2
+50
+270
+51
+270.6477025
+0
+LINE
+8
+0
+10
+62
+20
+5.8
+11
+62
+21
+4.4
+0
+ARC
+8
+0
+10
+64
+20
+4.4
+40
+2
+50
+180
+51
+270
+0
+ARC
+8
+0
+10
+80
+20
+53.4
+40
+2
+50
+8.6232234
+51
+90
+0
+LINE
+8
+0
+10
+80
+20
+55.4
+11
+64
+21
+55.4
+0
+LINE
+8
+0
+10
+82
+20
+0.7
+11
+98
+21
+0.7
+0
+ARC
+8
+0
+10
+98
+20
+2.7
+40
+2
+50
+270
+51
+360
+0
+LINE
+8
+0
+10
+100
+20
+2.7
+11
+100
+21
+17.7
+0
+ARC
+8
+0
+10
+98
+20
+17.7
+40
+2
+50
+0
+51
+30.0000001
+0
+ARC
+8
+0
+10
+82
+20
+2.7
+40
+2
+50
+188.6232234
+51
+245.9050344
+0
+ARC
+8
+0
+10
+82
+20
+2.7
+40
+2
+50
+264.094965
+51
+270
+0
+ARC
+8
+0
+10
+98
+20
+19.7
+40
+2
+50
+329.9999999
+51
+360
+0
+LINE
+8
+0
+10
+100
+20
+19.7
+11
+100
+21
+34.7
+0
+ARC
+8
+0
+10
+98
+20
+34.7
+40
+2
+50
+0
+51
+30.0000001
+0
+ARC
+8
+0
+10
+98
+20
+36.7
+40
+2
+50
+329.9999999
+51
+360
+0
+LINE
+8
+0
+10
+100
+20
+36.7
+11
+100
+21
+51.7
+0
+ARC
+8
+0
+10
+98
+20
+51.7
+40
+2
+50
+0
+51
+90
+0
+LINE
+8
+0
+10
+98
+20
+53.7
+11
+82
+21
+53.7
+0
+ARC
+8
+0
+10
+82
+20
+51.7
+40
+2
+50
+90
+51
+90.6477025
+0
+LINE
+8
+0
+10
+72.7071068
+20
+-16.5247449
+11
+88.16192
+21
+-20.6658496
+0
+ARC
+8
+0
+10
+88.6795581
+20
+-18.733998
+40
+2
+50
+255
+51
+281.6239837
+0
+LINE
+8
+0
+10
+92.3185164
+20
+-12.880627
+11
+94.4936954
+21
+-4.7627487
+0
+ARC
+8
+0
+10
+92.5618437
+20
+-4.2451106
+40
+2
+50
+345
+51
+75
+0
+LINE
+8
+0
+10
+93.0794818
+20
+-2.3132589
+11
+81.7942401
+21
+0.7106124
+0
+LINE
+8
+0
+10
+81.1834995
+20
+0.8742599
+11
+77.6246686
+21
+1.8278458
+0
+ARC
+8
+0
+10
+77.1070305
+20
+-0.1040058
+40
+2
+50
+75
+51
+165
+0
+LINE
+8
+0
+10
+75.1751789
+20
+0.4136322
+11
+71.2928932
+21
+-14.0752551
+0
+ARC
+8
+0
+10
+73.2247449
+20
+-14.5928932
+40
+2
+50
+165
+51
+255
+0
+LINE
+8
+0
+10
+89.7526903
+20
+-21.3247682
+11
+103.6090967
+21
+-29.3247682
+0
+ARC
+8
+0
+10
+104.6090967
+20
+-27.5927174
+40
+2
+50
+240
+51
+266.6239814
+0
+LINE
+8
+0
+10
+109.6390246
+20
+-22.8806267
+11
+113.8411475
+21
+-15.6023364
+0
+ARC
+8
+0
+10
+112.1090967
+20
+-14.6023364
+40
+2
+50
+330
+51
+60
+0
+LINE
+8
+0
+10
+113.1090967
+20
+-12.8702856
+11
+99.2526903
+21
+-4.8702856
+0
+ARC
+8
+0
+10
+98.2526903
+20
+-6.6023364
+40
+2
+50
+60
+51
+150
+0
+LINE
+8
+0
+10
+96.5206395
+20
+-5.6023364
+11
+92.3185164
+21
+-12.880627
+0
+ARC
+8
+0
+10
+90.7526903
+20
+-19.5927174
+40
+2
+50
+213.3760218
+51
+240
+0
+LINE
+8
+0
+10
+104.9751221
+20
+-30.3729564
+11
+116.2888306
+21
+-41.6866649
+0
+ARC
+8
+0
+10
+117.7030442
+20
+-40.2724513
+40
+2
+50
+225
+51
+315
+0
+LINE
+8
+0
+10
+119.1172578
+20
+-41.6866649
+11
+129.7238595
+21
+-31.0800632
+0
+ARC
+8
+0
+10
+128.3096459
+20
+-29.6658496
+40
+2
+50
+315
+51
+45
+0
+LINE
+8
+0
+10
+129.7238595
+20
+-28.251636
+11
+118.410151
+21
+-16.9379275
+0
+ARC
+8
+0
+10
+116.9959374
+20
+-18.3521411
+40
+2
+50
+45
+51
+135
+0
+LINE
+8
+0
+10
+115.5817238
+20
+-16.9379275
+11
+109.6390246
+21
+-22.8806267
+0
+ARC
+8
+0
+10
+106.3893357
+20
+-28.9587428
+40
+2
+50
+198.3760183
+51
+225
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/raw.svg b/output/outlines/raw.svg
new file mode 100644
index 0000000..1b8e237
--- /dev/null
+++ b/output/outlines/raw.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/raw.yaml b/output/outlines/raw.yaml
new file mode 100644
index 0000000..a4f8347
--- /dev/null
+++ b/output/outlines/raw.yaml
@@ -0,0 +1,850 @@
+models:
+ export:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 10
+ - -9.5
+ end:
+ - 26
+ - -9.5
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 26
+ - -7.5
+ radius: 2
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 28
+ - -7.5
+ end:
+ - 28
+ - 2.4000000000000004
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 7.5
+ radius: 2
+ startAngle: 149.9999998915838
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 8
+ - 7.5
+ end:
+ - 8
+ - -7.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - -7.5
+ radius: 2
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 24.5
+ radius: 2
+ startAngle: 149.9999998915838
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 8
+ - 24.5
+ end:
+ - 8
+ - 9.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - 9.5
+ radius: 2
+ startAngle: 180
+ endAngle: 210.0000001084162
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 26
+ - 43.5
+ end:
+ - 10
+ - 43.5
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 10
+ - 41.5
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 8
+ - 41.5
+ end:
+ - 8
+ - 26.5
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 10
+ - 26.5
+ radius: 2
+ startAngle: 180
+ endAngle: 210.0000001084162
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 28
+ - 2.4000000000000004
+ end:
+ - 44
+ - 2.4000000000000004
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 44
+ - 4.4
+ radius: 2
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 46
+ - 4.4
+ end:
+ - 46
+ - 5.800000000000001
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 44
+ - 55.4
+ end:
+ - 28
+ - 55.4
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 28
+ - 53.4
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 26
+ - 53.4
+ end:
+ - 26
+ - 43.5
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 46
+ - 5.800000000000001
+ end:
+ - 62
+ - 5.800000000000001
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 64
+ - 55.4
+ end:
+ - 64
+ - 56.8
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 62
+ - 56.8
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 62
+ - 58.8
+ end:
+ - 46
+ - 58.8
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 46
+ - 56.8
+ radius: 2
+ startAngle: 90
+ endAngle: 180
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 44
+ - 56.8
+ end:
+ - 44
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 64
+ - 2.4000000000000004
+ end:
+ - 80
+ - 2.4000000000000004
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 4.4
+ radius: 2
+ startAngle: 270
+ endAngle: 270.6477024783535
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 62
+ - 5.800000000000001
+ end:
+ - 62
+ - 4.4
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 64
+ - 4.4
+ radius: 2
+ startAngle: 180
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths: {}
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 80
+ - 53.4
+ radius: 2
+ startAngle: 8.623223387209398
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 80
+ - 55.4
+ end:
+ - 64
+ - 55.4
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 82
+ - 0.6999999999999993
+ end:
+ - 98
+ - 0.6999999999999993
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 2.6999999999999993
+ radius: 2
+ startAngle: 270
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 100
+ - 2.6999999999999993
+ end:
+ - 100
+ - 17.7
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 17.7
+ radius: 2
+ startAngle: 0
+ endAngle: 30.00000010841622
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 82
+ - 2.6999999999999993
+ radius: 2
+ startAngle: 188.62322338720935
+ endAngle: 245.90503439228917
+ ShapeLine1_StartCap_1:
+ type: arc
+ origin:
+ - 82
+ - 2.6999999999999993
+ radius: 2
+ startAngle: 264.0949650153637
+ endAngle: 270
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 19.7
+ radius: 2
+ startAngle: 329.9999998915838
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 100
+ - 19.7
+ end:
+ - 100
+ - 34.7
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 34.7
+ radius: 2
+ startAngle: 0
+ endAngle: 30.00000010841622
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 36.7
+ radius: 2
+ startAngle: 329.9999998915838
+ endAngle: 360
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 100
+ - 36.7
+ end:
+ - 100
+ - 51.7
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 98
+ - 51.7
+ radius: 2
+ startAngle: 0
+ endAngle: 90
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 98
+ - 53.7
+ end:
+ - 82
+ - 53.7
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 82
+ - 51.7
+ radius: 2
+ startAngle: 90
+ endAngle: 90.64770247835352
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 72.7071068
+ - -16.5247449
+ end:
+ - 88.16192000000001
+ - -20.6658496
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 88.67955810000001
+ - -18.733998
+ radius: 2
+ startAngle: 255
+ endAngle: 281.6239837188507
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 92.31851643229452
+ - -12.880627021117732
+ end:
+ - 94.49369540000001
+ - -4.762748700000001
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 92.56184370000001
+ - -4.2451106
+ radius: 2
+ startAngle: 345
+ endAngle: 75
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 93.07948180000001
+ - -2.313258900000001
+ end:
+ - 81.7942401
+ - 0.7106123999999987
+ ShapeLine3_Bottom_1:
+ type: line
+ origin:
+ - 81.1834995
+ - 0.8742598999999984
+ end:
+ - 77.6246686
+ - 1.8278457999999986
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 77.10703050000001
+ - -0.10400579999999948
+ radius: 2
+ startAngle: 75
+ endAngle: 165
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 75.1751789
+ - 0.41363219999999856
+ end:
+ - 71.29289320000001
+ - -14.075255100000001
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 73.2247449
+ - -14.592893200000002
+ radius: 2
+ startAngle: 165
+ endAngle: 255
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 89.7526903
+ - -21.324768199999998
+ end:
+ - 103.6090967
+ - -29.324768199999998
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 104.6090967
+ - -27.592717399999998
+ radius: 2
+ startAngle: 240
+ endAngle: 266.6239813965549
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 109.63902464185955
+ - -22.880626658140443
+ end:
+ - 113.8411475
+ - -15.602336399999999
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 112.1090967
+ - -14.602336399999999
+ radius: 2
+ startAngle: 330
+ endAngle: 60
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 113.1090967
+ - -12.870285599999999
+ end:
+ - 99.2526903
+ - -4.870285599999999
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 98.2526903
+ - -6.602336399999999
+ radius: 2
+ startAngle: 60
+ endAngle: 150
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 96.5206395
+ - -5.602336399999999
+ end:
+ - 92.31851643229452
+ - -12.880627021117732
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 90.7526903
+ - -19.592717399999998
+ radius: 2
+ startAngle: 213.37602184568948
+ endAngle: 240
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ '0':
+ paths:
+ ShapeLine1_Bottom:
+ type: line
+ origin:
+ - 104.9751221
+ - -30.3729564
+ end:
+ - 116.2888306
+ - -41.6866649
+ ShapeLine1_EndCap:
+ type: arc
+ origin:
+ - 117.7030442
+ - -40.2724513
+ radius: 2
+ startAngle: 225
+ endAngle: 315
+ ShapeLine2_Bottom:
+ type: line
+ origin:
+ - 119.1172578
+ - -41.6866649
+ end:
+ - 129.7238595
+ - -31.080063199999998
+ ShapeLine2_EndCap:
+ type: arc
+ origin:
+ - 128.3096459
+ - -29.665849599999998
+ radius: 2
+ startAngle: 315
+ endAngle: 45
+ ShapeLine3_Bottom:
+ type: line
+ origin:
+ - 129.7238595
+ - -28.251635999999998
+ end:
+ - 118.410151
+ - -16.9379275
+ ShapeLine3_EndCap:
+ type: arc
+ origin:
+ - 116.9959374
+ - -18.352141099999997
+ radius: 2
+ startAngle: 45
+ endAngle: 135
+ ShapeLine4_Bottom:
+ type: line
+ origin:
+ - 115.58172379999999
+ - -16.9379275
+ end:
+ - 109.63902464185955
+ - -22.880626658140443
+ ShapeLine1_StartCap:
+ type: arc
+ origin:
+ - 106.3893357
+ - -28.9587428
+ radius: 2
+ startAngle: 198.37601833831116
+ endAngle: 225
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/screw_holes.dxf b/output/outlines/screw_holes.dxf
new file mode 100644
index 0000000..0e40683
--- /dev/null
+++ b/output/outlines/screw_holes.dxf
@@ -0,0 +1,100 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+CIRCLE
+8
+0
+10
+27
+20
+28.9
+40
+1
+0
+CIRCLE
+8
+0
+10
+27
+20
+0
+40
+1
+0
+CIRCLE
+8
+0
+10
+81
+20
+44.2
+40
+1
+0
+CIRCLE
+8
+0
+10
+72
+20
+-6.12
+40
+1
+0
+CIRCLE
+8
+0
+10
+110.3491337
+20
+-22.3119391
+40
+1
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/screw_holes.svg b/output/outlines/screw_holes.svg
new file mode 100644
index 0000000..153de85
--- /dev/null
+++ b/output/outlines/screw_holes.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/screw_holes.yaml b/output/outlines/screw_holes.yaml
new file mode 100644
index 0000000..a975c54
--- /dev/null
+++ b/output/outlines/screw_holes.yaml
@@ -0,0 +1,90 @@
+models:
+ export:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 28.9
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 27
+ - 0
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 81
+ - 44.2
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 72
+ - -6.119999999999999
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ circle:
+ type: circle
+ origin:
+ - 110.3491337
+ - -22.311939099999996
+ radius: 1
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/switches.dxf b/output/outlines/switches.dxf
new file mode 100644
index 0000000..51dc6f2
--- /dev/null
+++ b/output/outlines/switches.dxf
@@ -0,0 +1,914 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+11
+20
+-7
+11
+25
+21
+-7
+0
+LINE
+8
+0
+10
+25
+20
+-7
+11
+25
+21
+7
+0
+LINE
+8
+0
+10
+25
+20
+7
+11
+11
+21
+7
+0
+LINE
+8
+0
+10
+11
+20
+7
+11
+11
+21
+-7
+0
+LINE
+8
+0
+10
+11
+20
+10
+11
+25
+21
+10
+0
+LINE
+8
+0
+10
+25
+20
+10
+11
+25
+21
+24
+0
+LINE
+8
+0
+10
+25
+20
+24
+11
+11
+21
+24
+0
+LINE
+8
+0
+10
+11
+20
+24
+11
+11
+21
+10
+0
+LINE
+8
+0
+10
+11
+20
+27
+11
+25
+21
+27
+0
+LINE
+8
+0
+10
+25
+20
+27
+11
+25
+21
+41
+0
+LINE
+8
+0
+10
+25
+20
+41
+11
+11
+21
+41
+0
+LINE
+8
+0
+10
+11
+20
+41
+11
+11
+21
+27
+0
+LINE
+8
+0
+10
+29
+20
+4.9
+11
+43
+21
+4.9
+0
+LINE
+8
+0
+10
+43
+20
+4.9
+11
+43
+21
+18.9
+0
+LINE
+8
+0
+10
+43
+20
+18.9
+11
+29
+21
+18.9
+0
+LINE
+8
+0
+10
+29
+20
+18.9
+11
+29
+21
+4.9
+0
+LINE
+8
+0
+10
+29
+20
+21.9
+11
+43
+21
+21.9
+0
+LINE
+8
+0
+10
+43
+20
+21.9
+11
+43
+21
+35.9
+0
+LINE
+8
+0
+10
+43
+20
+35.9
+11
+29
+21
+35.9
+0
+LINE
+8
+0
+10
+29
+20
+35.9
+11
+29
+21
+21.9
+0
+LINE
+8
+0
+10
+29
+20
+38.9
+11
+43
+21
+38.9
+0
+LINE
+8
+0
+10
+43
+20
+38.9
+11
+43
+21
+52.9
+0
+LINE
+8
+0
+10
+43
+20
+52.9
+11
+29
+21
+52.9
+0
+LINE
+8
+0
+10
+29
+20
+52.9
+11
+29
+21
+38.9
+0
+LINE
+8
+0
+10
+47
+20
+8.3
+11
+61
+21
+8.3
+0
+LINE
+8
+0
+10
+61
+20
+8.3
+11
+61
+21
+22.3
+0
+LINE
+8
+0
+10
+61
+20
+22.3
+11
+47
+21
+22.3
+0
+LINE
+8
+0
+10
+47
+20
+22.3
+11
+47
+21
+8.3
+0
+LINE
+8
+0
+10
+47
+20
+25.3
+11
+61
+21
+25.3
+0
+LINE
+8
+0
+10
+61
+20
+25.3
+11
+61
+21
+39.3
+0
+LINE
+8
+0
+10
+61
+20
+39.3
+11
+47
+21
+39.3
+0
+LINE
+8
+0
+10
+47
+20
+39.3
+11
+47
+21
+25.3
+0
+LINE
+8
+0
+10
+47
+20
+42.3
+11
+61
+21
+42.3
+0
+LINE
+8
+0
+10
+61
+20
+42.3
+11
+61
+21
+56.3
+0
+LINE
+8
+0
+10
+61
+20
+56.3
+11
+47
+21
+56.3
+0
+LINE
+8
+0
+10
+47
+20
+56.3
+11
+47
+21
+42.3
+0
+LINE
+8
+0
+10
+65
+20
+4.9
+11
+79
+21
+4.9
+0
+LINE
+8
+0
+10
+79
+20
+4.9
+11
+79
+21
+18.9
+0
+LINE
+8
+0
+10
+79
+20
+18.9
+11
+65
+21
+18.9
+0
+LINE
+8
+0
+10
+65
+20
+18.9
+11
+65
+21
+4.9
+0
+LINE
+8
+0
+10
+65
+20
+21.9
+11
+79
+21
+21.9
+0
+LINE
+8
+0
+10
+79
+20
+21.9
+11
+79
+21
+35.9
+0
+LINE
+8
+0
+10
+79
+20
+35.9
+11
+65
+21
+35.9
+0
+LINE
+8
+0
+10
+65
+20
+35.9
+11
+65
+21
+21.9
+0
+LINE
+8
+0
+10
+65
+20
+38.9
+11
+79
+21
+38.9
+0
+LINE
+8
+0
+10
+79
+20
+38.9
+11
+79
+21
+52.9
+0
+LINE
+8
+0
+10
+79
+20
+52.9
+11
+65
+21
+52.9
+0
+LINE
+8
+0
+10
+65
+20
+52.9
+11
+65
+21
+38.9
+0
+LINE
+8
+0
+10
+83
+20
+3.2
+11
+97
+21
+3.2
+0
+LINE
+8
+0
+10
+97
+20
+3.2
+11
+97
+21
+17.2
+0
+LINE
+8
+0
+10
+97
+20
+17.2
+11
+83
+21
+17.2
+0
+LINE
+8
+0
+10
+83
+20
+17.2
+11
+83
+21
+3.2
+0
+LINE
+8
+0
+10
+83
+20
+20.2
+11
+97
+21
+20.2
+0
+LINE
+8
+0
+10
+97
+20
+20.2
+11
+97
+21
+34.2
+0
+LINE
+8
+0
+10
+97
+20
+34.2
+11
+83
+21
+34.2
+0
+LINE
+8
+0
+10
+83
+20
+34.2
+11
+83
+21
+20.2
+0
+LINE
+8
+0
+10
+83
+20
+37.2
+11
+97
+21
+37.2
+0
+LINE
+8
+0
+10
+97
+20
+37.2
+11
+97
+21
+51.2
+0
+LINE
+8
+0
+10
+97
+20
+51.2
+11
+83
+21
+51.2
+0
+LINE
+8
+0
+10
+83
+20
+51.2
+11
+83
+21
+37.2
+0
+LINE
+8
+0
+10
+74.3200802
+20
+-14.3687494
+11
+87.8430418
+21
+-17.992216
+0
+LINE
+8
+0
+10
+87.8430418
+20
+-17.992216
+11
+91.4665084
+21
+-4.4692544
+0
+LINE
+8
+0
+10
+91.4665084
+20
+-4.4692544
+11
+77.9435468
+21
+-0.8457878
+0
+LINE
+8
+0
+10
+77.9435468
+20
+-0.8457878
+11
+74.3200802
+21
+-14.3687494
+0
+LINE
+8
+0
+10
+91.8687157
+20
+-19.6597047
+11
+103.9930713
+21
+-26.6597047
+0
+LINE
+8
+0
+10
+103.9930713
+20
+-26.6597047
+11
+110.9930713
+21
+-14.5353491
+0
+LINE
+8
+0
+10
+110.9930713
+20
+-14.5353491
+11
+98.8687157
+21
+-7.5353491
+0
+LINE
+8
+0
+10
+98.8687157
+20
+-7.5353491
+11
+91.8687157
+21
+-19.6597047
+0
+LINE
+8
+0
+10
+107.4499959
+20
+-29.3122962
+11
+117.3494908
+21
+-39.2117911
+0
+LINE
+8
+0
+10
+117.3494908
+20
+-39.2117911
+11
+127.2489857
+21
+-29.3122962
+0
+LINE
+8
+0
+10
+127.2489857
+20
+-29.3122962
+11
+117.3494908
+21
+-19.4128013
+0
+LINE
+8
+0
+10
+117.3494908
+20
+-19.4128013
+11
+107.4499959
+21
+-29.3122962
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/switches.svg b/output/outlines/switches.svg
new file mode 100644
index 0000000..56637d4
--- /dev/null
+++ b/output/outlines/switches.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/switches.yaml b/output/outlines/switches.yaml
new file mode 100644
index 0000000..cefdfe1
--- /dev/null
+++ b/output/outlines/switches.yaml
@@ -0,0 +1,776 @@
+models:
+ export:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 11
+ - -7
+ end:
+ - 25
+ - -7
+ ShapeLine2:
+ type: line
+ origin:
+ - 25
+ - -7
+ end:
+ - 25
+ - 7
+ ShapeLine3:
+ type: line
+ origin:
+ - 25
+ - 7
+ end:
+ - 11
+ - 7
+ ShapeLine4:
+ type: line
+ origin:
+ - 11
+ - 7
+ end:
+ - 11
+ - -7
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 11
+ - 10
+ end:
+ - 25
+ - 10
+ ShapeLine2:
+ type: line
+ origin:
+ - 25
+ - 10
+ end:
+ - 25
+ - 24
+ ShapeLine3:
+ type: line
+ origin:
+ - 25
+ - 24
+ end:
+ - 11
+ - 24
+ ShapeLine4:
+ type: line
+ origin:
+ - 11
+ - 24
+ end:
+ - 11
+ - 10
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 11
+ - 27
+ end:
+ - 25
+ - 27
+ ShapeLine2:
+ type: line
+ origin:
+ - 25
+ - 27
+ end:
+ - 25
+ - 41
+ ShapeLine3:
+ type: line
+ origin:
+ - 25
+ - 41
+ end:
+ - 11
+ - 41
+ ShapeLine4:
+ type: line
+ origin:
+ - 11
+ - 41
+ end:
+ - 11
+ - 27
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 29
+ - 4.9
+ end:
+ - 43
+ - 4.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 43
+ - 4.9
+ end:
+ - 43
+ - 18.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 43
+ - 18.9
+ end:
+ - 29
+ - 18.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 29
+ - 18.9
+ end:
+ - 29
+ - 4.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 29
+ - 21.9
+ end:
+ - 43
+ - 21.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 43
+ - 21.9
+ end:
+ - 43
+ - 35.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 43
+ - 35.9
+ end:
+ - 29
+ - 35.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 29
+ - 35.9
+ end:
+ - 29
+ - 21.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 29
+ - 38.9
+ end:
+ - 43
+ - 38.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 43
+ - 38.9
+ end:
+ - 43
+ - 52.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 43
+ - 52.9
+ end:
+ - 29
+ - 52.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 29
+ - 52.9
+ end:
+ - 29
+ - 38.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 47
+ - 8.3
+ end:
+ - 61
+ - 8.3
+ ShapeLine2:
+ type: line
+ origin:
+ - 61
+ - 8.3
+ end:
+ - 61
+ - 22.3
+ ShapeLine3:
+ type: line
+ origin:
+ - 61
+ - 22.3
+ end:
+ - 47
+ - 22.3
+ ShapeLine4:
+ type: line
+ origin:
+ - 47
+ - 22.3
+ end:
+ - 47
+ - 8.3
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 47
+ - 25.299999999999997
+ end:
+ - 61
+ - 25.299999999999997
+ ShapeLine2:
+ type: line
+ origin:
+ - 61
+ - 25.299999999999997
+ end:
+ - 61
+ - 39.3
+ ShapeLine3:
+ type: line
+ origin:
+ - 61
+ - 39.3
+ end:
+ - 47
+ - 39.3
+ ShapeLine4:
+ type: line
+ origin:
+ - 47
+ - 39.3
+ end:
+ - 47
+ - 25.299999999999997
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 47
+ - 42.3
+ end:
+ - 61
+ - 42.3
+ ShapeLine2:
+ type: line
+ origin:
+ - 61
+ - 42.3
+ end:
+ - 61
+ - 56.3
+ ShapeLine3:
+ type: line
+ origin:
+ - 61
+ - 56.3
+ end:
+ - 47
+ - 56.3
+ ShapeLine4:
+ type: line
+ origin:
+ - 47
+ - 56.3
+ end:
+ - 47
+ - 42.3
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 65
+ - 4.9
+ end:
+ - 79
+ - 4.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 79
+ - 4.9
+ end:
+ - 79
+ - 18.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 79
+ - 18.9
+ end:
+ - 65
+ - 18.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 65
+ - 18.9
+ end:
+ - 65
+ - 4.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 65
+ - 21.9
+ end:
+ - 79
+ - 21.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 79
+ - 21.9
+ end:
+ - 79
+ - 35.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 79
+ - 35.9
+ end:
+ - 65
+ - 35.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 65
+ - 35.9
+ end:
+ - 65
+ - 21.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 65
+ - 38.9
+ end:
+ - 79
+ - 38.9
+ ShapeLine2:
+ type: line
+ origin:
+ - 79
+ - 38.9
+ end:
+ - 79
+ - 52.9
+ ShapeLine3:
+ type: line
+ origin:
+ - 79
+ - 52.9
+ end:
+ - 65
+ - 52.9
+ ShapeLine4:
+ type: line
+ origin:
+ - 65
+ - 52.9
+ end:
+ - 65
+ - 38.9
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 83
+ - 3.1999999999999993
+ end:
+ - 97
+ - 3.1999999999999993
+ ShapeLine2:
+ type: line
+ origin:
+ - 97
+ - 3.1999999999999993
+ end:
+ - 97
+ - 17.2
+ ShapeLine3:
+ type: line
+ origin:
+ - 97
+ - 17.2
+ end:
+ - 83
+ - 17.2
+ ShapeLine4:
+ type: line
+ origin:
+ - 83
+ - 17.2
+ end:
+ - 83
+ - 3.1999999999999993
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 83
+ - 20.2
+ end:
+ - 97
+ - 20.2
+ ShapeLine2:
+ type: line
+ origin:
+ - 97
+ - 20.2
+ end:
+ - 97
+ - 34.2
+ ShapeLine3:
+ type: line
+ origin:
+ - 97
+ - 34.2
+ end:
+ - 83
+ - 34.2
+ ShapeLine4:
+ type: line
+ origin:
+ - 83
+ - 34.2
+ end:
+ - 83
+ - 20.2
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 83
+ - 37.2
+ end:
+ - 97
+ - 37.2
+ ShapeLine2:
+ type: line
+ origin:
+ - 97
+ - 37.2
+ end:
+ - 97
+ - 51.2
+ ShapeLine3:
+ type: line
+ origin:
+ - 97
+ - 51.2
+ end:
+ - 83
+ - 51.2
+ ShapeLine4:
+ type: line
+ origin:
+ - 83
+ - 51.2
+ end:
+ - 83
+ - 37.2
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 74.3200802
+ - -14.368749400000002
+ end:
+ - 87.84304180000001
+ - -17.992216
+ ShapeLine2:
+ type: line
+ origin:
+ - 87.84304180000001
+ - -17.992216
+ end:
+ - 91.46650840000001
+ - -4.4692544000000005
+ ShapeLine3:
+ type: line
+ origin:
+ - 91.46650840000001
+ - -4.4692544000000005
+ end:
+ - 77.94354680000001
+ - -0.8457878000000019
+ ShapeLine4:
+ type: line
+ origin:
+ - 77.94354680000001
+ - -0.8457878000000019
+ end:
+ - 74.3200802
+ - -14.368749400000002
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 91.8687157
+ - -19.6597047
+ end:
+ - 103.9930713
+ - -26.6597047
+ ShapeLine2:
+ type: line
+ origin:
+ - 103.9930713
+ - -26.6597047
+ end:
+ - 110.9930713
+ - -14.535349099999998
+ ShapeLine3:
+ type: line
+ origin:
+ - 110.9930713
+ - -14.535349099999998
+ end:
+ - 98.8687157
+ - -7.535349099999998
+ ShapeLine4:
+ type: line
+ origin:
+ - 98.8687157
+ - -7.535349099999998
+ end:
+ - 91.8687157
+ - -19.6597047
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ ShapeLine1:
+ type: line
+ origin:
+ - 107.4499959
+ - -29.3122962
+ end:
+ - 117.3494908
+ - -39.2117911
+ ShapeLine2:
+ type: line
+ origin:
+ - 117.3494908
+ - -39.2117911
+ end:
+ - 127.24898569999999
+ - -29.3122962
+ ShapeLine3:
+ type: line
+ origin:
+ - 127.24898569999999
+ - -29.3122962
+ end:
+ - 117.3494908
+ - -19.412801299999998
+ ShapeLine4:
+ type: line
+ origin:
+ - 117.3494908
+ - -19.412801299999998
+ end:
+ - 107.4499959
+ - -29.3122962
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/outlines/thumbfan_glue.dxf b/output/outlines/thumbfan_glue.dxf
new file mode 100644
index 0000000..5188a5a
--- /dev/null
+++ b/output/outlines/thumbfan_glue.dxf
@@ -0,0 +1,134 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+90
+20
+27.2
+11
+100
+21
+2.7
+0
+LINE
+8
+0
+10
+100
+20
+2.7
+11
+129.7238595
+21
+-28.251636
+0
+LINE
+8
+0
+10
+129.7238595
+20
+-28.251636
+11
+116.2888306
+21
+-41.6866649
+0
+LINE
+8
+0
+10
+116.2888306
+20
+-41.6866649
+11
+72.7071068
+21
+-16.5247449
+0
+LINE
+8
+0
+10
+72.7071068
+20
+-16.5247449
+11
+26
+21
+-9.5
+0
+LINE
+8
+0
+10
+26
+20
+-9.5
+11
+18
+21
+17
+0
+LINE
+8
+0
+10
+18
+20
+17
+11
+90
+21
+27.2
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/outlines/thumbfan_glue.svg b/output/outlines/thumbfan_glue.svg
new file mode 100644
index 0000000..a07a8c4
--- /dev/null
+++ b/output/outlines/thumbfan_glue.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/outlines/thumbfan_glue.yaml b/output/outlines/thumbfan_glue.yaml
new file mode 100644
index 0000000..929c43e
--- /dev/null
+++ b/output/outlines/thumbfan_glue.yaml
@@ -0,0 +1,76 @@
+models:
+ export:
+ models:
+ a:
+ models: {}
+ origin:
+ - 0
+ - 0
+ b:
+ paths:
+ p1:
+ type: line
+ origin:
+ - 90
+ - 27.2
+ end:
+ - 100
+ - 2.6999999999999993
+ p2:
+ type: line
+ origin:
+ - 100
+ - 2.6999999999999993
+ end:
+ - 129.7238595
+ - -28.251635999999998
+ p3:
+ type: line
+ origin:
+ - 129.7238595
+ - -28.251635999999998
+ end:
+ - 116.2888306
+ - -41.6866649
+ p4:
+ type: line
+ origin:
+ - 116.2888306
+ - -41.6866649
+ end:
+ - 72.7071068
+ - -16.5247449
+ p5:
+ type: line
+ origin:
+ - 72.7071068
+ - -16.5247449
+ end:
+ - 26
+ - -9.5
+ p6:
+ type: line
+ origin:
+ - 26
+ - -9.5
+ end:
+ - 18
+ - 17
+ p7:
+ type: line
+ origin:
+ - 18
+ - 17
+ end:
+ - 90
+ - 27.2
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/pcbs/main.kicad_pcb b/output/pcbs/main.kicad_pcb
new file mode 100644
index 0000000..d817557
--- /dev/null
+++ b/output/pcbs/main.kicad_pcb
@@ -0,0 +1,2060 @@
+
+
+(kicad_pcb (version 20171130) (host pcbnew 5.1.6)
+
+ (page A3)
+ (title_block
+ (title KEYBOARD_NAME_HERE)
+ (rev VERSION_HERE)
+ (company YOUR_NAME_HERE)
+ )
+
+ (general
+ (thickness 1.6)
+ )
+
+ (layers
+ (0 F.Cu signal)
+ (31 B.Cu signal)
+ (32 B.Adhes user)
+ (33 F.Adhes user)
+ (34 B.Paste user)
+ (35 F.Paste user)
+ (36 B.SilkS user)
+ (37 F.SilkS user)
+ (38 B.Mask user)
+ (39 F.Mask user)
+ (40 Dwgs.User user)
+ (41 Cmts.User user)
+ (42 Eco1.User user)
+ (43 Eco2.User user)
+ (44 Edge.Cuts user)
+ (45 Margin user)
+ (46 B.CrtYd user)
+ (47 F.CrtYd user)
+ (48 B.Fab user)
+ (49 F.Fab user)
+ )
+
+ (setup
+ (last_trace_width 0.25)
+ (trace_clearance 0.2)
+ (zone_clearance 0.508)
+ (zone_45_only no)
+ (trace_min 0.2)
+ (via_size 0.8)
+ (via_drill 0.4)
+ (via_min_size 0.4)
+ (via_min_drill 0.3)
+ (uvia_size 0.3)
+ (uvia_drill 0.1)
+ (uvias_allowed no)
+ (uvia_min_size 0.2)
+ (uvia_min_drill 0.1)
+ (edge_width 0.05)
+ (segment_width 0.2)
+ (pcb_text_width 0.3)
+ (pcb_text_size 1.5 1.5)
+ (mod_edge_width 0.12)
+ (mod_text_size 1 1)
+ (mod_text_width 0.15)
+ (pad_size 1.524 1.524)
+ (pad_drill 0.762)
+ (pad_to_mask_clearance 0.05)
+ (aux_axis_origin 0 0)
+ (visible_elements FFFFFF7F)
+ (pcbplotparams
+ (layerselection 0x010fc_ffffffff)
+ (usegerberextensions false)
+ (usegerberattributes true)
+ (usegerberadvancedattributes true)
+ (creategerberjobfile true)
+ (excludeedgelayer true)
+ (linewidth 0.100000)
+ (plotframeref false)
+ (viasonmask false)
+ (mode 1)
+ (useauxorigin false)
+ (hpglpennumber 1)
+ (hpglpenspeed 20)
+ (hpglpendiameter 15.000000)
+ (psnegative false)
+ (psa4output false)
+ (plotreference true)
+ (plotvalue true)
+ (plotinvisibletext false)
+ (padsonsilk false)
+ (subtractmaskfromsilk false)
+ (outputformat 1)
+ (mirror false)
+ (drillshape 1)
+ (scaleselection 1)
+ (outputdirectory ""))
+ )
+
+ (net 0 "")
+(net 1 "pinky_bottom")
+(net 2 "P21")
+(net 3 "P7")
+(net 4 "pinky_home")
+(net 5 "P6")
+(net 6 "pinky_top")
+(net 7 "P5")
+(net 8 "ring_bottom")
+(net 9 "P20")
+(net 10 "ring_home")
+(net 11 "ring_top")
+(net 12 "middle_bottom")
+(net 13 "P19")
+(net 14 "middle_home")
+(net 15 "middle_top")
+(net 16 "index_bottom")
+(net 17 "P18")
+(net 18 "index_home")
+(net 19 "index_top")
+(net 20 "inner_bottom")
+(net 21 "P15")
+(net 22 "inner_home")
+(net 23 "inner_top")
+(net 24 "near_thumb")
+(net 25 "P4")
+(net 26 "home_thumb")
+(net 27 "far_thumb")
+(net 28 "RAW")
+(net 29 "GND")
+(net 30 "RST")
+(net 31 "VCC")
+(net 32 "P14")
+(net 33 "P16")
+(net 34 "P10")
+(net 35 "P1")
+(net 36 "P0")
+(net 37 "P2")
+(net 38 "P3")
+(net 39 "P8")
+(net 40 "P9")
+
+ (net_class Default "This is the default net class."
+ (clearance 0.2)
+ (trace_width 0.25)
+ (via_dia 0.8)
+ (via_drill 0.4)
+ (uvia_dia 0.3)
+ (uvia_drill 0.1)
+ (add_net "")
+(add_net "pinky_bottom")
+(add_net "P21")
+(add_net "P7")
+(add_net "pinky_home")
+(add_net "P6")
+(add_net "pinky_top")
+(add_net "P5")
+(add_net "ring_bottom")
+(add_net "P20")
+(add_net "ring_home")
+(add_net "ring_top")
+(add_net "middle_bottom")
+(add_net "P19")
+(add_net "middle_home")
+(add_net "middle_top")
+(add_net "index_bottom")
+(add_net "P18")
+(add_net "index_home")
+(add_net "index_top")
+(add_net "inner_bottom")
+(add_net "P15")
+(add_net "inner_home")
+(add_net "inner_top")
+(add_net "near_thumb")
+(add_net "P4")
+(add_net "home_thumb")
+(add_net "far_thumb")
+(add_net "RAW")
+(add_net "GND")
+(add_net "RST")
+(add_net "VCC")
+(add_net "P14")
+(add_net "P16")
+(add_net "P10")
+(add_net "P1")
+(add_net "P0")
+(add_net "P2")
+(add_net "P3")
+(add_net "P8")
+(add_net "P9")
+ )
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 18 0 0)
+
+
+ (fp_text reference "S1" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 1 "pinky_bottom"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 2 "P21"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 1 "pinky_bottom"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 2 "P21"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 18 5 0)
+
+
+ (fp_text reference "D1" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 1 "pinky_bottom"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 1 "pinky_bottom"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 1 "pinky_bottom"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 3 "P7"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 18 -17 0)
+
+
+ (fp_text reference "S2" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 4 "pinky_home"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 2 "P21"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 4 "pinky_home"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 2 "P21"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 18 -12 0)
+
+
+ (fp_text reference "D2" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 4 "pinky_home"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 4 "pinky_home"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 4 "pinky_home"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 5 "P6"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 18 -34 0)
+
+
+ (fp_text reference "S3" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 6 "pinky_top"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 2 "P21"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 6 "pinky_top"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 2 "P21"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 18 -29 0)
+
+
+ (fp_text reference "D3" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 6 "pinky_top"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 6 "pinky_top"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 6 "pinky_top"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 7 "P5"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 36 -11.9 0)
+
+
+ (fp_text reference "S4" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 8 "ring_bottom"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 9 "P20"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 8 "ring_bottom"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 9 "P20"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 36 -6.9 0)
+
+
+ (fp_text reference "D4" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 8 "ring_bottom"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 8 "ring_bottom"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 8 "ring_bottom"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 3 "P7"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 36 -28.9 0)
+
+
+ (fp_text reference "S5" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 10 "ring_home"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 9 "P20"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 10 "ring_home"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 9 "P20"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 36 -23.9 0)
+
+
+ (fp_text reference "D5" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 10 "ring_home"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 10 "ring_home"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 10 "ring_home"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 5 "P6"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 36 -45.9 0)
+
+
+ (fp_text reference "S6" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 11 "ring_top"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 9 "P20"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 11 "ring_top"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 9 "P20"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 36 -40.9 0)
+
+
+ (fp_text reference "D6" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 11 "ring_top"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 11 "ring_top"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 11 "ring_top"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 7 "P5"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 54 -15.3 0)
+
+
+ (fp_text reference "S7" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 12 "middle_bottom"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 13 "P19"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 12 "middle_bottom"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 13 "P19"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 54 -10.3 0)
+
+
+ (fp_text reference "D7" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 12 "middle_bottom"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 12 "middle_bottom"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 12 "middle_bottom"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 3 "P7"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 54 -32.3 0)
+
+
+ (fp_text reference "S8" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 14 "middle_home"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 13 "P19"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 14 "middle_home"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 13 "P19"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 54 -27.299999999999997 0)
+
+
+ (fp_text reference "D8" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 14 "middle_home"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 14 "middle_home"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 14 "middle_home"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 5 "P6"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 54 -49.3 0)
+
+
+ (fp_text reference "S9" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 15 "middle_top"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 13 "P19"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 15 "middle_top"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 13 "P19"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 54 -44.3 0)
+
+
+ (fp_text reference "D9" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 15 "middle_top"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 15 "middle_top"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 15 "middle_top"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 7 "P5"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 72 -11.9 0)
+
+
+ (fp_text reference "S10" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 16 "index_bottom"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 17 "P18"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 16 "index_bottom"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 17 "P18"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 72 -6.9 0)
+
+
+ (fp_text reference "D10" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 16 "index_bottom"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 16 "index_bottom"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 16 "index_bottom"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 3 "P7"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 72 -28.9 0)
+
+
+ (fp_text reference "S11" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 18 "index_home"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 17 "P18"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 18 "index_home"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 17 "P18"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 72 -23.9 0)
+
+
+ (fp_text reference "D11" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 18 "index_home"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 18 "index_home"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 18 "index_home"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 5 "P6"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 72 -45.9 0)
+
+
+ (fp_text reference "S12" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 19 "index_top"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 17 "P18"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 19 "index_top"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 17 "P18"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 72 -40.9 0)
+
+
+ (fp_text reference "D12" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 19 "index_top"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 19 "index_top"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 19 "index_top"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 7 "P5"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 90 -10.2 0)
+
+
+ (fp_text reference "S13" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 20 "inner_bottom"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 21 "P15"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 20 "inner_bottom"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 21 "P15"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 90 -5.199999999999999 0)
+
+
+ (fp_text reference "D13" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 20 "inner_bottom"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 3 "P7"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 20 "inner_bottom"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 20 "inner_bottom"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 3 "P7"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 90 -27.2 0)
+
+
+ (fp_text reference "S14" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 22 "inner_home"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 21 "P15"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 22 "inner_home"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 21 "P15"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 90 -22.2 0)
+
+
+ (fp_text reference "D14" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 22 "inner_home"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 5 "P6"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 22 "inner_home"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 22 "inner_home"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 5 "P6"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 90 -44.2 0)
+
+
+ (fp_text reference "S15" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 23 "inner_top"))
+ (pad 2 smd rect (at 8.275 -3.75 0) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 21 "P15"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 23 "inner_top"))
+ (pad 2 smd rect (at -8.275 -3.75 0) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 21 "P15"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 90 -39.2 0)
+
+
+ (fp_text reference "D15" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 23 "inner_top"))
+ (pad 1 smd rect (at -1.65 0 0) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 7 "P5"))
+ (pad 2 smd rect (at 1.65 0 0) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 23 "inner_top"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 0) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 23 "inner_top"))
+ (pad 2 thru_hole rect (at -3.81 0 0) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 7 "P5"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 82.89329430000001 9.419001900000001 -15)
+
+
+ (fp_text reference "S16" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 -15) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 24 "near_thumb"))
+ (pad 2 smd rect (at 8.275 -3.75 -15) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 13 "P19"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 -15) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 24 "near_thumb"))
+ (pad 2 smd rect (at -8.275 -3.75 -15) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 13 "P19"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 81.5991991 14.248631000000001 -15)
+
+
+ (fp_text reference "D16" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 -15) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 25 "P4"))
+ (pad 2 smd rect (at 1.65 0 -15) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 24 "near_thumb"))
+ (pad 1 smd rect (at -1.65 0 -15) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 25 "P4"))
+ (pad 2 smd rect (at 1.65 0 -15) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 24 "near_thumb"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 -15) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 24 "near_thumb"))
+ (pad 2 thru_hole rect (at -3.81 0 -15) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 25 "P4"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 101.4308935 17.0975269 -30)
+
+
+ (fp_text reference "S17" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 -30) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 26 "home_thumb"))
+ (pad 2 smd rect (at 8.275 -3.75 -30) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 17 "P18"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 -30) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 26 "home_thumb"))
+ (pad 2 smd rect (at -8.275 -3.75 -30) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 17 "P18"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 98.9308935 21.4276539 -30)
+
+
+ (fp_text reference "D17" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 -30) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 25 "P4"))
+ (pad 2 smd rect (at 1.65 0 -30) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 26 "home_thumb"))
+ (pad 1 smd rect (at -1.65 0 -30) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 25 "P4"))
+ (pad 2 smd rect (at 1.65 0 -30) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 26 "home_thumb"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 -30) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 26 "home_thumb"))
+ (pad 2 thru_hole rect (at -3.81 0 -30) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 25 "P4"))
+ )
+
+
+
+
+ (module PG1350 (layer F.Cu) (tedit 5DD50112)
+ (at 117.3494908 29.3122962 -45)
+
+
+ (fp_text reference "S18" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -7 -6) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -6 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -6 -7) (end -7 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -7 7) (end -7 6) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 6) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 6 -7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 6 7) (end 7 7) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 7 -7) (end 7 -6) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
+
+
+ (pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
+
+
+
+ (fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
+
+
+
+ (pad "" np_thru_hole circle (at 5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at -3.275 -5.95 -45) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 27 "far_thumb"))
+ (pad 2 smd rect (at 8.275 -3.75 -45) (size 2.6 2.6) (layers B.Cu B.Paste B.Mask) (net 21 "P15"))
+
+
+
+ (pad "" np_thru_hole circle (at -5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
+
+
+ (pad 1 smd rect (at 3.275 -5.95 -45) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 27 "far_thumb"))
+ (pad 2 smd rect (at -8.275 -3.75 -45) (size 2.6 2.6) (layers F.Cu F.Paste F.Mask) (net 21 "P15"))
+ )
+
+
+
+ (module ComboDiode (layer F.Cu) (tedit 5B24D78E)
+
+
+ (at 113.8139569 32.847830099999996 -45)
+
+
+ (fp_text reference "D18" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
+ (fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
+ (fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
+ (fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
+
+
+ (pad 1 smd rect (at -1.65 0 -45) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 25 "P4"))
+ (pad 2 smd rect (at 1.65 0 -45) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 27 "far_thumb"))
+ (pad 1 smd rect (at -1.65 0 -45) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) (net 25 "P4"))
+ (pad 2 smd rect (at 1.65 0 -45) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) (net 27 "far_thumb"))
+
+
+ (pad 1 thru_hole circle (at 3.81 0 -45) (size 1.905 1.905) (drill 0.9906) (layers *.Cu *.Mask) (net 27 "far_thumb"))
+ (pad 2 thru_hole rect (at -3.81 0 -45) (size 1.778 1.778) (drill 0.9906) (layers *.Cu *.Mask) (net 25 "P4"))
+ )
+
+
+
+
+ (module ProMicro (layer F.Cu) (tedit 5B307E4C)
+ (at 110 -33.2 270)
+
+
+ (fp_text reference "MCU1" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -19.304 -3.81) (end -14.224 -3.81) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -19.304 3.81) (end -19.304 -3.81) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -14.224 3.81) (end -19.304 3.81) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -14.224 -3.81) (end -14.224 3.81) (layer Dwgs.User) (width 0.15))
+
+
+ (fp_line (start -17.78 8.89) (end 15.24 8.89) (layer F.SilkS) (width 0.15))
+ (fp_line (start 15.24 8.89) (end 15.24 -8.89) (layer F.SilkS) (width 0.15))
+ (fp_line (start 15.24 -8.89) (end -17.78 -8.89) (layer F.SilkS) (width 0.15))
+ (fp_line (start -17.78 -8.89) (end -17.78 8.89) (layer F.SilkS) (width 0.15))
+
+
+
+ (fp_line (start -15.24 -6.35) (end -12.7 -6.35) (layer F.SilkS) (width 0.15))
+ (fp_line (start -15.24 -6.35) (end -15.24 -8.89) (layer F.SilkS) (width 0.15))
+ (fp_line (start -12.7 -6.35) (end -12.7 -8.89) (layer F.SilkS) (width 0.15))
+
+
+ (fp_text user RAW (at -13.97 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user GND (at -11.43 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user RST (at -8.89 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user VCC (at -6.35 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P21 (at -3.81 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P20 (at -1.27 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P19 (at 1.27 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P18 (at 3.81 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P15 (at 6.35 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P14 (at 8.89 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P16 (at 11.43 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P10 (at 13.97 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+
+ (fp_text user P01 (at -13.97 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P00 (at -11.43 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user GND (at -8.89 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user GND (at -6.35 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P02 (at -3.81 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P03 (at -1.27 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P04 (at 1.27 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P05 (at 3.81 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P06 (at 6.35 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P07 (at 8.89 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P08 (at 11.43 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P09 (at 13.97 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+
+
+ (pad 1 thru_hole rect (at -13.97 -7.62 270) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 28 "RAW"))
+ (pad 2 thru_hole circle (at -11.43 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 29 "GND"))
+ (pad 3 thru_hole circle (at -8.89 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 30 "RST"))
+ (pad 4 thru_hole circle (at -6.35 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 31 "VCC"))
+ (pad 5 thru_hole circle (at -3.81 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 2 "P21"))
+ (pad 6 thru_hole circle (at -1.27 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 9 "P20"))
+ (pad 7 thru_hole circle (at 1.27 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 13 "P19"))
+ (pad 8 thru_hole circle (at 3.81 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 17 "P18"))
+ (pad 9 thru_hole circle (at 6.35 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 21 "P15"))
+ (pad 10 thru_hole circle (at 8.89 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 32 "P14"))
+ (pad 11 thru_hole circle (at 11.43 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 33 "P16"))
+ (pad 12 thru_hole circle (at 13.97 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 34 "P10"))
+
+ (pad 13 thru_hole circle (at -13.97 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 35 "P1"))
+ (pad 14 thru_hole circle (at -11.43 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 36 "P0"))
+ (pad 15 thru_hole circle (at -8.89 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 29 "GND"))
+ (pad 16 thru_hole circle (at -6.35 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 29 "GND"))
+ (pad 17 thru_hole circle (at -3.81 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 37 "P2"))
+ (pad 18 thru_hole circle (at -1.27 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 38 "P3"))
+ (pad 19 thru_hole circle (at 1.27 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 25 "P4"))
+ (pad 20 thru_hole circle (at 3.81 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 7 "P5"))
+ (pad 21 thru_hole circle (at 6.35 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 5 "P6"))
+ (pad 22 thru_hole circle (at 8.89 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 3 "P7"))
+ (pad 23 thru_hole circle (at 11.43 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 39 "P8"))
+ (pad 24 thru_hole circle (at 13.97 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 40 "P9"))
+ )
+
+
+
+ (module ProMicro (layer F.Cu) (tedit 5B307E4C)
+ (at 112.5 -31.950000000000003 270)
+
+
+ (fp_text reference "MCU2" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+ (fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
+
+
+ (fp_line (start -19.304 -3.81) (end -14.224 -3.81) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -19.304 3.81) (end -19.304 -3.81) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -14.224 3.81) (end -19.304 3.81) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -14.224 -3.81) (end -14.224 3.81) (layer Dwgs.User) (width 0.15))
+
+
+ (fp_line (start -17.78 8.89) (end 15.24 8.89) (layer F.SilkS) (width 0.15))
+ (fp_line (start 15.24 8.89) (end 15.24 -8.89) (layer F.SilkS) (width 0.15))
+ (fp_line (start 15.24 -8.89) (end -17.78 -8.89) (layer F.SilkS) (width 0.15))
+ (fp_line (start -17.78 -8.89) (end -17.78 8.89) (layer F.SilkS) (width 0.15))
+
+
+
+ (fp_line (start -15.24 6.35) (end -12.7 6.35) (layer F.SilkS) (width 0.15))
+ (fp_line (start -15.24 6.35) (end -15.24 8.89) (layer F.SilkS) (width 0.15))
+ (fp_line (start -12.7 6.35) (end -12.7 8.89) (layer F.SilkS) (width 0.15))
+
+
+ (fp_text user RAW (at -13.97 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user GND (at -11.43 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user RST (at -8.89 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user VCC (at -6.35 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P21 (at -3.81 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P20 (at -1.27 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P19 (at 1.27 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P18 (at 3.81 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P15 (at 6.35 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P14 (at 8.89 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P16 (at 11.43 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P10 (at 13.97 4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+
+ (fp_text user P01 (at -13.97 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P00 (at -11.43 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user GND (at -8.89 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user GND (at -6.35 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P02 (at -3.81 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P03 (at -1.27 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P04 (at 1.27 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P05 (at 3.81 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P06 (at 6.35 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P07 (at 8.89 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P08 (at 11.43 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+ (fp_text user P09 (at 13.97 -4.8 360) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
+
+
+ (pad 1 thru_hole rect (at -13.97 7.62 270) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 28 "RAW"))
+ (pad 2 thru_hole circle (at -11.43 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 29 "GND"))
+ (pad 3 thru_hole circle (at -8.89 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 30 "RST"))
+ (pad 4 thru_hole circle (at -6.35 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 31 "VCC"))
+ (pad 5 thru_hole circle (at -3.81 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 2 "P21"))
+ (pad 6 thru_hole circle (at -1.27 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 9 "P20"))
+ (pad 7 thru_hole circle (at 1.27 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 13 "P19"))
+ (pad 8 thru_hole circle (at 3.81 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 17 "P18"))
+ (pad 9 thru_hole circle (at 6.35 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 21 "P15"))
+ (pad 10 thru_hole circle (at 8.89 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 32 "P14"))
+ (pad 11 thru_hole circle (at 11.43 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 33 "P16"))
+ (pad 12 thru_hole circle (at 13.97 7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 34 "P10"))
+
+ (pad 13 thru_hole circle (at -13.97 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 35 "P1"))
+ (pad 14 thru_hole circle (at -11.43 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 36 "P0"))
+ (pad 15 thru_hole circle (at -8.89 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 29 "GND"))
+ (pad 16 thru_hole circle (at -6.35 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 29 "GND"))
+ (pad 17 thru_hole circle (at -3.81 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 37 "P2"))
+ (pad 18 thru_hole circle (at -1.27 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 38 "P3"))
+ (pad 19 thru_hole circle (at 1.27 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 25 "P4"))
+ (pad 20 thru_hole circle (at 3.81 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 7 "P5"))
+ (pad 21 thru_hole circle (at 6.35 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 5 "P6"))
+ (pad 22 thru_hole circle (at 8.89 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 3 "P7"))
+ (pad 23 thru_hole circle (at 11.43 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 39 "P8"))
+ (pad 24 thru_hole circle (at 13.97 -7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) (net 40 "P9"))
+ )
+
+
+
+ (module TRRS-PJ-320A-dual (layer F.Cu) (tedit 5970F8E5)
+
+ (at 120 -2.1999999999999993 270)
+
+
+ (fp_text reference REF** (at 0 14.2) (layer Dwgs.User) (effects (font (size 1 1) (thickness 0.15))))
+ (fp_text value TRRS-PJ-320A-dual (at 0 -5.6) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))))
+
+
+ (fp_line (start 0.5 -2) (end -5.1 -2) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -5.1 0) (end -5.1 -2) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 0.5 0) (end 0.5 -2) (layer Dwgs.User) (width 0.15))
+ (fp_line (start -5.35 0) (end -5.35 12.1) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 0.75 0) (end 0.75 12.1) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 0.75 12.1) (end -5.35 12.1) (layer Dwgs.User) (width 0.15))
+ (fp_line (start 0.75 0) (end -5.35 0) (layer Dwgs.User) (width 0.15))
+
+
+ (pad "" np_thru_hole circle (at -2.3 8.6) (size 1.5 1.5) (drill 1.5) (layers *.Cu *.Mask))
+ (pad "" np_thru_hole circle (at -2.3 1.6) (size 1.5 1.5) (drill 1.5) (layers *.Cu *.Mask))
+
+
+ (pad 1 thru_hole oval (at 0 11.3 270) (size 1.6 2.2) (drill oval 0.9 1.5) (layers *.Cu *.Mask) (net 36 "P0"))
+ (pad 2 thru_hole oval (at -4.6 10.2 270) (size 1.6 2.2) (drill oval 0.9 1.5) (layers *.Cu *.Mask) (net 36 "P0"))
+ (pad 3 thru_hole oval (at -4.6 6.2 270) (size 1.6 2.2) (drill oval 0.9 1.5) (layers *.Cu *.Mask) (net 29 "GND"))
+ (pad 4 thru_hole oval (at -4.6 3.2 270) (size 1.6 2.2) (drill oval 0.9 1.5) (layers *.Cu *.Mask) (net 31 "VCC"))
+
+
+ (pad 1 thru_hole oval (at -4.6 11.3 270) (size 1.6 2.2) (drill oval 0.9 1.5) (layers *.Cu *.Mask) (net 36 "P0"))
+ (pad 2 thru_hole oval (at 0 10.2 270) (size 1.6 2.2) (drill oval 0.9 1.5) (layers *.Cu *.Mask) (net 36 "P0"))
+ (pad 3 thru_hole oval (at 0 6.2 270) (size 1.6 2.2) (drill oval 0.9 1.5) (layers *.Cu *.Mask) (net 29 "GND"))
+ (pad 4 thru_hole oval (at 0 3.2 270) (size 1.6 2.2) (drill oval 0.9 1.5) (layers *.Cu *.Mask) (net 31 "VCC"))
+ )
+
+ (gr_line (start 10 9.5) (end 26 9.5) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 8 7.5) (end 8 -41.5) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 10 7.5) (end 8 7.5) (angle -90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 26 -43.5) (end 10 -43.5) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 10 -41.5) (end 10 -43.5) (angle -90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 44 -55.4) (end 28 -55.4) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 28 -53.4) (end 28 -55.4) (angle -90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 26 -53.4) (end 26 -43.5) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 64 -55.4) (end 64 -56.8) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 62 -56.8) (end 64 -56.8) (angle -90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 62 -58.8) (end 46 -58.8) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 46 -56.8) (end 46 -58.8) (angle -90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 44 -56.8) (end 44 -55.4) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 80 -53.4) (end 81.9773914 -53.6998722) (angle -81.37677661279061) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 80 -55.4) (end 64 -55.4) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 98 -51.7) (end 99.9943671 -51.85) (angle -85.69877776512043) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 98 -53.7) (end 82 -53.7) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 82 -51.7) (end 82 -53.7) (angle -0.6477024783535228) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 117.7030442 40.2724513) (end 116.2888306 41.6866649) (angle -90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 119.1172578 41.6866649) (end 129.7238595 31.080063199999998) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 128.3096459 29.665849599999998) (end 129.7238595 31.080063199999998) (angle -90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 122 20.20873404242809) (end 129.7238595 28.251635999999998) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 116.2888306 41.6866649) (end 72.7071068 16.5247449) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 72.7071068 16.5247449) (end 26 9.5) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 122 20.20873404242809) (end 122 -49.85000000000001) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_arc (start 120 -49.85000000000001) (end 122 -49.85000000000001) (angle -90) (layer Edge.Cuts) (width 0.15))
+(gr_line (start 120 -51.85000000000001) (end 99.9943671 -51.85) (angle 90) (layer Edge.Cuts) (width 0.15))
+(gr_circle (center 27 -28.9) (end 28.6 -28.9) (layer Edge.Cuts) (width 0.15))
+(gr_circle (center 27 0) (end 28.6 0) (layer Edge.Cuts) (width 0.15))
+(gr_circle (center 81 -44.2) (end 82.6 -44.2) (layer Edge.Cuts) (width 0.15))
+(gr_circle (center 72 6.119999999999999) (end 73.6 6.119999999999999) (layer Edge.Cuts) (width 0.15))
+(gr_circle (center 110.3491337 22.311939099999996) (end 111.94913369999999 22.311939099999996) (layer Edge.Cuts) (width 0.15))
+
+)
+
+
\ No newline at end of file
diff --git a/output/points/demo.dxf b/output/points/demo.dxf
new file mode 100644
index 0000000..afdeb5b
--- /dev/null
+++ b/output/points/demo.dxf
@@ -0,0 +1,914 @@
+0
+SECTION
+2
+HEADER
+9
+$INSUNITS
+70
+4
+0
+ENDSEC
+0
+SECTION
+2
+TABLES
+0
+TABLE
+2
+LTYPE
+0
+LTYPE
+72
+65
+70
+64
+2
+CONTINUOUS
+3
+______
+73
+0
+40
+0
+0
+ENDTAB
+0
+TABLE
+2
+LAYER
+0
+ENDTAB
+0
+ENDSEC
+0
+SECTION
+2
+ENTITIES
+0
+LINE
+8
+0
+10
+9
+20
+9
+11
+27
+21
+9
+0
+LINE
+8
+0
+10
+27
+20
+9
+11
+27
+21
+-9
+0
+LINE
+8
+0
+10
+27
+20
+-9
+11
+9
+21
+-9
+0
+LINE
+8
+0
+10
+9
+20
+-9
+11
+9
+21
+9
+0
+LINE
+8
+0
+10
+9
+20
+26
+11
+27
+21
+26
+0
+LINE
+8
+0
+10
+27
+20
+26
+11
+27
+21
+8
+0
+LINE
+8
+0
+10
+27
+20
+8
+11
+9
+21
+8
+0
+LINE
+8
+0
+10
+9
+20
+8
+11
+9
+21
+26
+0
+LINE
+8
+0
+10
+9
+20
+43
+11
+27
+21
+43
+0
+LINE
+8
+0
+10
+27
+20
+43
+11
+27
+21
+25
+0
+LINE
+8
+0
+10
+27
+20
+25
+11
+9
+21
+25
+0
+LINE
+8
+0
+10
+9
+20
+25
+11
+9
+21
+43
+0
+LINE
+8
+0
+10
+27
+20
+20.9
+11
+45
+21
+20.9
+0
+LINE
+8
+0
+10
+45
+20
+20.9
+11
+45
+21
+2.9
+0
+LINE
+8
+0
+10
+45
+20
+2.9
+11
+27
+21
+2.9
+0
+LINE
+8
+0
+10
+27
+20
+2.9
+11
+27
+21
+20.9
+0
+LINE
+8
+0
+10
+27
+20
+37.9
+11
+45
+21
+37.9
+0
+LINE
+8
+0
+10
+45
+20
+37.9
+11
+45
+21
+19.9
+0
+LINE
+8
+0
+10
+45
+20
+19.9
+11
+27
+21
+19.9
+0
+LINE
+8
+0
+10
+27
+20
+19.9
+11
+27
+21
+37.9
+0
+LINE
+8
+0
+10
+27
+20
+54.9
+11
+45
+21
+54.9
+0
+LINE
+8
+0
+10
+45
+20
+54.9
+11
+45
+21
+36.9
+0
+LINE
+8
+0
+10
+45
+20
+36.9
+11
+27
+21
+36.9
+0
+LINE
+8
+0
+10
+27
+20
+36.9
+11
+27
+21
+54.9
+0
+LINE
+8
+0
+10
+45
+20
+24.3
+11
+63
+21
+24.3
+0
+LINE
+8
+0
+10
+63
+20
+24.3
+11
+63
+21
+6.3
+0
+LINE
+8
+0
+10
+63
+20
+6.3
+11
+45
+21
+6.3
+0
+LINE
+8
+0
+10
+45
+20
+6.3
+11
+45
+21
+24.3
+0
+LINE
+8
+0
+10
+45
+20
+41.3
+11
+63
+21
+41.3
+0
+LINE
+8
+0
+10
+63
+20
+41.3
+11
+63
+21
+23.3
+0
+LINE
+8
+0
+10
+63
+20
+23.3
+11
+45
+21
+23.3
+0
+LINE
+8
+0
+10
+45
+20
+23.3
+11
+45
+21
+41.3
+0
+LINE
+8
+0
+10
+45
+20
+58.3
+11
+63
+21
+58.3
+0
+LINE
+8
+0
+10
+63
+20
+58.3
+11
+63
+21
+40.3
+0
+LINE
+8
+0
+10
+63
+20
+40.3
+11
+45
+21
+40.3
+0
+LINE
+8
+0
+10
+45
+20
+40.3
+11
+45
+21
+58.3
+0
+LINE
+8
+0
+10
+63
+20
+20.9
+11
+81
+21
+20.9
+0
+LINE
+8
+0
+10
+81
+20
+20.9
+11
+81
+21
+2.9
+0
+LINE
+8
+0
+10
+81
+20
+2.9
+11
+63
+21
+2.9
+0
+LINE
+8
+0
+10
+63
+20
+2.9
+11
+63
+21
+20.9
+0
+LINE
+8
+0
+10
+63
+20
+37.9
+11
+81
+21
+37.9
+0
+LINE
+8
+0
+10
+81
+20
+37.9
+11
+81
+21
+19.9
+0
+LINE
+8
+0
+10
+81
+20
+19.9
+11
+63
+21
+19.9
+0
+LINE
+8
+0
+10
+63
+20
+19.9
+11
+63
+21
+37.9
+0
+LINE
+8
+0
+10
+63
+20
+54.9
+11
+81
+21
+54.9
+0
+LINE
+8
+0
+10
+81
+20
+54.9
+11
+81
+21
+36.9
+0
+LINE
+8
+0
+10
+81
+20
+36.9
+11
+63
+21
+36.9
+0
+LINE
+8
+0
+10
+63
+20
+36.9
+11
+63
+21
+54.9
+0
+LINE
+8
+0
+10
+81
+20
+19.2
+11
+99
+21
+19.2
+0
+LINE
+8
+0
+10
+99
+20
+19.2
+11
+99
+21
+1.2
+0
+LINE
+8
+0
+10
+99
+20
+1.2
+11
+81
+21
+1.2
+0
+LINE
+8
+0
+10
+81
+20
+1.2
+11
+81
+21
+19.2
+0
+LINE
+8
+0
+10
+81
+20
+36.2
+11
+99
+21
+36.2
+0
+LINE
+8
+0
+10
+99
+20
+36.2
+11
+99
+21
+18.2
+0
+LINE
+8
+0
+10
+99
+20
+18.2
+11
+81
+21
+18.2
+0
+LINE
+8
+0
+10
+81
+20
+18.2
+11
+81
+21
+36.2
+0
+LINE
+8
+0
+10
+81
+20
+53.2
+11
+99
+21
+53.2
+0
+LINE
+8
+0
+10
+99
+20
+53.2
+11
+99
+21
+35.2
+0
+LINE
+8
+0
+10
+99
+20
+35.2
+11
+81
+21
+35.2
+0
+LINE
+8
+0
+10
+81
+20
+35.2
+11
+81
+21
+53.2
+0
+LINE
+8
+0
+10
+76.5293333
+20
+1.6037019
+11
+93.9159981
+21
+-3.0550409
+0
+LINE
+8
+0
+10
+93.9159981
+20
+-3.0550409
+11
+89.2572553
+21
+-20.4417057
+0
+LINE
+8
+0
+10
+89.2572553
+20
+-20.4417057
+11
+71.8705905
+21
+-15.7829629
+0
+LINE
+8
+0
+10
+71.8705905
+20
+-15.7829629
+11
+76.5293333
+21
+1.6037019
+0
+LINE
+8
+0
+10
+98.1366649
+20
+-4.8032983
+11
+113.7251221
+21
+-13.8032983
+0
+LINE
+8
+0
+10
+113.7251221
+20
+-13.8032983
+11
+104.7251221
+21
+-29.3917555
+0
+LINE
+8
+0
+10
+104.7251221
+20
+-29.3917555
+11
+89.1366649
+21
+-20.3917555
+0
+LINE
+8
+0
+10
+89.1366649
+20
+-20.3917555
+11
+98.1366649
+21
+-4.8032983
+0
+LINE
+8
+0
+10
+117.3494908
+20
+-16.5843741
+11
+130.0774129
+21
+-29.3122962
+0
+LINE
+8
+0
+10
+130.0774129
+20
+-29.3122962
+11
+117.3494908
+21
+-42.0402183
+0
+LINE
+8
+0
+10
+117.3494908
+20
+-42.0402183
+11
+104.6215687
+21
+-29.3122962
+0
+LINE
+8
+0
+10
+104.6215687
+20
+-29.3122962
+11
+117.3494908
+21
+-16.5843741
+0
+ENDSEC
+0
+EOF
\ No newline at end of file
diff --git a/output/points/demo.svg b/output/points/demo.svg
new file mode 100644
index 0000000..3b32891
--- /dev/null
+++ b/output/points/demo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/output/points/demo.yaml b/output/points/demo.yaml
new file mode 100644
index 0000000..e402460
--- /dev/null
+++ b/output/points/demo.yaml
@@ -0,0 +1,676 @@
+models:
+ export:
+ models:
+ matrix_pinky_bottom:
+ paths:
+ top:
+ type: line
+ origin:
+ - 9
+ - 9
+ end:
+ - 27
+ - 9
+ right:
+ type: line
+ origin:
+ - 27
+ - 9
+ end:
+ - 27
+ - -9
+ bottom:
+ type: line
+ origin:
+ - 27
+ - -9
+ end:
+ - 9
+ - -9
+ left:
+ type: line
+ origin:
+ - 9
+ - -9
+ end:
+ - 9
+ - 9
+ origin:
+ - 0
+ - 0
+ matrix_pinky_home:
+ paths:
+ top:
+ type: line
+ origin:
+ - 9
+ - 26
+ end:
+ - 27
+ - 26
+ right:
+ type: line
+ origin:
+ - 27
+ - 26
+ end:
+ - 27
+ - 8
+ bottom:
+ type: line
+ origin:
+ - 27
+ - 8
+ end:
+ - 9
+ - 8
+ left:
+ type: line
+ origin:
+ - 9
+ - 8
+ end:
+ - 9
+ - 26
+ origin:
+ - 0
+ - 0
+ matrix_pinky_top:
+ paths:
+ top:
+ type: line
+ origin:
+ - 9
+ - 43
+ end:
+ - 27
+ - 43
+ right:
+ type: line
+ origin:
+ - 27
+ - 43
+ end:
+ - 27
+ - 25
+ bottom:
+ type: line
+ origin:
+ - 27
+ - 25
+ end:
+ - 9
+ - 25
+ left:
+ type: line
+ origin:
+ - 9
+ - 25
+ end:
+ - 9
+ - 43
+ origin:
+ - 0
+ - 0
+ matrix_ring_bottom:
+ paths:
+ top:
+ type: line
+ origin:
+ - 27
+ - 20.9
+ end:
+ - 45
+ - 20.9
+ right:
+ type: line
+ origin:
+ - 45
+ - 20.9
+ end:
+ - 45
+ - 2.9000000000000004
+ bottom:
+ type: line
+ origin:
+ - 45
+ - 2.9000000000000004
+ end:
+ - 27
+ - 2.9000000000000004
+ left:
+ type: line
+ origin:
+ - 27
+ - 2.9000000000000004
+ end:
+ - 27
+ - 20.9
+ origin:
+ - 0
+ - 0
+ matrix_ring_home:
+ paths:
+ top:
+ type: line
+ origin:
+ - 27
+ - 37.9
+ end:
+ - 45
+ - 37.9
+ right:
+ type: line
+ origin:
+ - 45
+ - 37.9
+ end:
+ - 45
+ - 19.9
+ bottom:
+ type: line
+ origin:
+ - 45
+ - 19.9
+ end:
+ - 27
+ - 19.9
+ left:
+ type: line
+ origin:
+ - 27
+ - 19.9
+ end:
+ - 27
+ - 37.9
+ origin:
+ - 0
+ - 0
+ matrix_ring_top:
+ paths:
+ top:
+ type: line
+ origin:
+ - 27
+ - 54.9
+ end:
+ - 45
+ - 54.9
+ right:
+ type: line
+ origin:
+ - 45
+ - 54.9
+ end:
+ - 45
+ - 36.9
+ bottom:
+ type: line
+ origin:
+ - 45
+ - 36.9
+ end:
+ - 27
+ - 36.9
+ left:
+ type: line
+ origin:
+ - 27
+ - 36.9
+ end:
+ - 27
+ - 54.9
+ origin:
+ - 0
+ - 0
+ matrix_middle_bottom:
+ paths:
+ top:
+ type: line
+ origin:
+ - 45
+ - 24.3
+ end:
+ - 63
+ - 24.3
+ right:
+ type: line
+ origin:
+ - 63
+ - 24.3
+ end:
+ - 63
+ - 6.300000000000001
+ bottom:
+ type: line
+ origin:
+ - 63
+ - 6.300000000000001
+ end:
+ - 45
+ - 6.300000000000001
+ left:
+ type: line
+ origin:
+ - 45
+ - 6.300000000000001
+ end:
+ - 45
+ - 24.3
+ origin:
+ - 0
+ - 0
+ matrix_middle_home:
+ paths:
+ top:
+ type: line
+ origin:
+ - 45
+ - 41.3
+ end:
+ - 63
+ - 41.3
+ right:
+ type: line
+ origin:
+ - 63
+ - 41.3
+ end:
+ - 63
+ - 23.299999999999997
+ bottom:
+ type: line
+ origin:
+ - 63
+ - 23.299999999999997
+ end:
+ - 45
+ - 23.299999999999997
+ left:
+ type: line
+ origin:
+ - 45
+ - 23.299999999999997
+ end:
+ - 45
+ - 41.3
+ origin:
+ - 0
+ - 0
+ matrix_middle_top:
+ paths:
+ top:
+ type: line
+ origin:
+ - 45
+ - 58.3
+ end:
+ - 63
+ - 58.3
+ right:
+ type: line
+ origin:
+ - 63
+ - 58.3
+ end:
+ - 63
+ - 40.3
+ bottom:
+ type: line
+ origin:
+ - 63
+ - 40.3
+ end:
+ - 45
+ - 40.3
+ left:
+ type: line
+ origin:
+ - 45
+ - 40.3
+ end:
+ - 45
+ - 58.3
+ origin:
+ - 0
+ - 0
+ matrix_index_bottom:
+ paths:
+ top:
+ type: line
+ origin:
+ - 63
+ - 20.9
+ end:
+ - 81
+ - 20.9
+ right:
+ type: line
+ origin:
+ - 81
+ - 20.9
+ end:
+ - 81
+ - 2.9000000000000004
+ bottom:
+ type: line
+ origin:
+ - 81
+ - 2.9000000000000004
+ end:
+ - 63
+ - 2.9000000000000004
+ left:
+ type: line
+ origin:
+ - 63
+ - 2.9000000000000004
+ end:
+ - 63
+ - 20.9
+ origin:
+ - 0
+ - 0
+ matrix_index_home:
+ paths:
+ top:
+ type: line
+ origin:
+ - 63
+ - 37.9
+ end:
+ - 81
+ - 37.9
+ right:
+ type: line
+ origin:
+ - 81
+ - 37.9
+ end:
+ - 81
+ - 19.9
+ bottom:
+ type: line
+ origin:
+ - 81
+ - 19.9
+ end:
+ - 63
+ - 19.9
+ left:
+ type: line
+ origin:
+ - 63
+ - 19.9
+ end:
+ - 63
+ - 37.9
+ origin:
+ - 0
+ - 0
+ matrix_index_top:
+ paths:
+ top:
+ type: line
+ origin:
+ - 63
+ - 54.9
+ end:
+ - 81
+ - 54.9
+ right:
+ type: line
+ origin:
+ - 81
+ - 54.9
+ end:
+ - 81
+ - 36.9
+ bottom:
+ type: line
+ origin:
+ - 81
+ - 36.9
+ end:
+ - 63
+ - 36.9
+ left:
+ type: line
+ origin:
+ - 63
+ - 36.9
+ end:
+ - 63
+ - 54.9
+ origin:
+ - 0
+ - 0
+ matrix_inner_bottom:
+ paths:
+ top:
+ type: line
+ origin:
+ - 81
+ - 19.2
+ end:
+ - 99
+ - 19.2
+ right:
+ type: line
+ origin:
+ - 99
+ - 19.2
+ end:
+ - 99
+ - 1.1999999999999993
+ bottom:
+ type: line
+ origin:
+ - 99
+ - 1.1999999999999993
+ end:
+ - 81
+ - 1.1999999999999993
+ left:
+ type: line
+ origin:
+ - 81
+ - 1.1999999999999993
+ end:
+ - 81
+ - 19.2
+ origin:
+ - 0
+ - 0
+ matrix_inner_home:
+ paths:
+ top:
+ type: line
+ origin:
+ - 81
+ - 36.2
+ end:
+ - 99
+ - 36.2
+ right:
+ type: line
+ origin:
+ - 99
+ - 36.2
+ end:
+ - 99
+ - 18.2
+ bottom:
+ type: line
+ origin:
+ - 99
+ - 18.2
+ end:
+ - 81
+ - 18.2
+ left:
+ type: line
+ origin:
+ - 81
+ - 18.2
+ end:
+ - 81
+ - 36.2
+ origin:
+ - 0
+ - 0
+ matrix_inner_top:
+ paths:
+ top:
+ type: line
+ origin:
+ - 81
+ - 53.2
+ end:
+ - 99
+ - 53.2
+ right:
+ type: line
+ origin:
+ - 99
+ - 53.2
+ end:
+ - 99
+ - 35.2
+ bottom:
+ type: line
+ origin:
+ - 99
+ - 35.2
+ end:
+ - 81
+ - 35.2
+ left:
+ type: line
+ origin:
+ - 81
+ - 35.2
+ end:
+ - 81
+ - 53.2
+ origin:
+ - 0
+ - 0
+ thumbfan_near_thumb:
+ paths:
+ top:
+ type: line
+ origin:
+ - 76.5293333
+ - 1.6037019000000008
+ end:
+ - 93.91599810000001
+ - -3.0550409000000016
+ right:
+ type: line
+ origin:
+ - 93.91599810000001
+ - -3.0550409000000016
+ end:
+ - 89.25725530000001
+ - -20.4417057
+ bottom:
+ type: line
+ origin:
+ - 89.25725530000001
+ - -20.4417057
+ end:
+ - 71.8705905
+ - -15.782962900000001
+ left:
+ type: line
+ origin:
+ - 71.8705905
+ - -15.782962900000001
+ end:
+ - 76.5293333
+ - 1.6037019000000008
+ origin:
+ - 0
+ - 0
+ thumbfan_home_thumb:
+ paths:
+ top:
+ type: line
+ origin:
+ - 98.1366649
+ - -4.803298299999998
+ end:
+ - 113.7251221
+ - -13.803298299999998
+ right:
+ type: line
+ origin:
+ - 113.7251221
+ - -13.803298299999998
+ end:
+ - 104.7251221
+ - -29.3917555
+ bottom:
+ type: line
+ origin:
+ - 104.7251221
+ - -29.3917555
+ end:
+ - 89.1366649
+ - -20.3917555
+ left:
+ type: line
+ origin:
+ - 89.1366649
+ - -20.3917555
+ end:
+ - 98.1366649
+ - -4.803298299999998
+ origin:
+ - 0
+ - 0
+ thumbfan_far_thumb:
+ paths:
+ top:
+ type: line
+ origin:
+ - 117.3494908
+ - -16.584374099999998
+ end:
+ - 130.0774129
+ - -29.3122962
+ right:
+ type: line
+ origin:
+ - 130.0774129
+ - -29.3122962
+ end:
+ - 117.3494908
+ - -42.0402183
+ bottom:
+ type: line
+ origin:
+ - 117.3494908
+ - -42.0402183
+ end:
+ - 104.6215687
+ - -29.3122962
+ left:
+ type: line
+ origin:
+ - 104.6215687
+ - -29.3122962
+ end:
+ - 117.3494908
+ - -16.584374099999998
+ origin:
+ - 0
+ - 0
+ origin:
+ - 0
+ - 0
+units: mm
+origin:
+ - 0
+ - 0
diff --git a/output/points/points.yaml b/output/points/points.yaml
new file mode 100644
index 0000000..746f02c
--- /dev/null
+++ b/output/points/points.yaml
@@ -0,0 +1,782 @@
+matrix_pinky_bottom:
+ x: 18
+ 'y': 0
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P21
+ row_net: P7
+ name: matrix_pinky_bottom
+ colrow: pinky_bottom
+ col: &ref_0
+ stagger: 0
+ spread: 18
+ key:
+ column_net: P21
+ rotate: 0
+ origin:
+ - 0
+ - 0
+ rows: {}
+ name: pinky
+ row: bottom
+matrix_pinky_home:
+ x: 18
+ 'y': 17
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P21
+ row_net: P6
+ name: matrix_pinky_home
+ colrow: pinky_home
+ col: *ref_0
+ row: home
+matrix_pinky_top:
+ x: 18
+ 'y': 34
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P21
+ row_net: P5
+ name: matrix_pinky_top
+ colrow: pinky_top
+ col: *ref_0
+ row: top
+matrix_ring_bottom:
+ x: 36
+ 'y': 11.9
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P20
+ row_net: P7
+ name: matrix_ring_bottom
+ colrow: ring_bottom
+ col: &ref_1
+ stagger: 11.899999999999999
+ spread: 18
+ key:
+ column_net: P20
+ rotate: 0
+ origin:
+ - 0
+ - 0
+ rows: {}
+ name: ring
+ row: bottom
+matrix_ring_home:
+ x: 36
+ 'y': 28.9
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P20
+ row_net: P6
+ name: matrix_ring_home
+ colrow: ring_home
+ col: *ref_1
+ row: home
+matrix_ring_top:
+ x: 36
+ 'y': 45.9
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P20
+ row_net: P5
+ name: matrix_ring_top
+ colrow: ring_top
+ col: *ref_1
+ row: top
+matrix_middle_bottom:
+ x: 54
+ 'y': 15.3
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P19
+ row_net: P7
+ name: matrix_middle_bottom
+ colrow: middle_bottom
+ col: &ref_2
+ stagger: 3.4000000000000004
+ spread: 18
+ key:
+ column_net: P19
+ rotate: 0
+ origin:
+ - 0
+ - 0
+ rows: {}
+ name: middle
+ row: bottom
+matrix_middle_home:
+ x: 54
+ 'y': 32.3
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P19
+ row_net: P6
+ name: matrix_middle_home
+ colrow: middle_home
+ col: *ref_2
+ row: home
+matrix_middle_top:
+ x: 54
+ 'y': 49.3
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P19
+ row_net: P5
+ name: matrix_middle_top
+ colrow: middle_top
+ col: *ref_2
+ row: top
+matrix_index_bottom:
+ x: 72
+ 'y': 11.9
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P18
+ row_net: P7
+ name: matrix_index_bottom
+ colrow: index_bottom
+ col: &ref_3
+ stagger: -3.4000000000000004
+ spread: 18
+ key:
+ column_net: P18
+ rotate: 0
+ origin:
+ - 0
+ - 0
+ rows: {}
+ name: index
+ row: bottom
+matrix_index_home:
+ x: 72
+ 'y': 28.9
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P18
+ row_net: P6
+ name: matrix_index_home
+ colrow: index_home
+ col: *ref_3
+ row: home
+matrix_index_top:
+ x: 72
+ 'y': 45.9
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P18
+ row_net: P5
+ name: matrix_index_top
+ colrow: index_top
+ col: *ref_3
+ row: top
+matrix_inner_bottom:
+ x: 90
+ 'y': 10.2
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P15
+ row_net: P7
+ name: matrix_inner_bottom
+ colrow: inner_bottom
+ col: &ref_4
+ stagger: -1.7000000000000002
+ spread: 18
+ key:
+ column_net: P15
+ rotate: 0
+ origin:
+ - 0
+ - 0
+ rows: {}
+ name: inner
+ row: bottom
+matrix_inner_home:
+ x: 90
+ 'y': 27.2
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P15
+ row_net: P6
+ name: matrix_inner_home
+ colrow: inner_home
+ col: *ref_4
+ row: home
+matrix_inner_top:
+ x: 90
+ 'y': 44.2
+ r: 0
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 17
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P15
+ row_net: P5
+ name: matrix_inner_top
+ colrow: inner_top
+ col: *ref_4
+ row: top
+thumbfan_near_thumb:
+ x: 82.89329430000001
+ 'y': -9.419001900000001
+ r: -15
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 19
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P19
+ row_net: P4
+ name: thumbfan_near_thumb
+ colrow: near_thumb
+ col:
+ spread: 18
+ rotate: -15
+ origin:
+ - -9
+ - -8.5
+ key:
+ column_net: P19
+ stagger: 0
+ rows: {}
+ name: near
+ row: thumb
+thumbfan_home_thumb:
+ x: 101.4308935
+ 'y': -17.0975269
+ r: -30
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 19
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P18
+ row_net: P4
+ name: thumbfan_home_thumb
+ colrow: home_thumb
+ col:
+ spread: 18
+ rotate: -15
+ origin:
+ - -9
+ - -8.5
+ key:
+ column_net: P18
+ stagger: 0
+ rows: {}
+ name: home
+ row: thumb
+thumbfan_far_thumb:
+ x: 117.3494908
+ 'y': -29.3122962
+ r: -45
+ meta:
+ shift:
+ - 0
+ - 0
+ rotate: 0
+ padding: 19
+ width: 1
+ height: 1
+ skip: false
+ asym: both
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ column_net: P15
+ row_net: P4
+ name: thumbfan_far_thumb
+ colrow: far_thumb
+ col:
+ spread: 18
+ rotate: -15
+ origin:
+ - -9
+ - -8.5
+ key:
+ column_net: P15
+ stagger: 0
+ rows: {}
+ name: far
+ row: thumb
diff --git a/output/points/units.yaml b/output/points/units.yaml
new file mode 100644
index 0000000..3f598a1
--- /dev/null
+++ b/output/points/units.yaml
@@ -0,0 +1,7 @@
+u: 19
+cx: 18
+cy: 17
+kx: 18
+ky: 17
+px: 2
+py: 2
diff --git a/output/source/canonical.yaml b/output/source/canonical.yaml
new file mode 100644
index 0000000..4dc9138
--- /dev/null
+++ b/output/source/canonical.yaml
@@ -0,0 +1,394 @@
+units:
+ kx: cx
+ ky: cy
+ px: 2
+ py: 2
+points:
+ key:
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ from: '=colrow'
+ to: '=column_net'
+ diode:
+ type: diode
+ nets:
+ from: '=colrow'
+ to: '=row_net'
+ anchor:
+ shift:
+ - 0
+ - -5
+ zones:
+ matrix:
+ key:
+ padding: ky
+ columns:
+ pinky:
+ stagger: 0 ky
+ spread: kx
+ key:
+ column_net: P21
+ ring:
+ stagger: 0.7 ky
+ spread: kx
+ key:
+ column_net: P20
+ middle:
+ stagger: 0.2 ky
+ spread: kx
+ key:
+ column_net: P19
+ index:
+ stagger: '-0.2 ky'
+ spread: kx
+ key:
+ column_net: P18
+ inner:
+ stagger: '-0.1 ky'
+ spread: kx
+ key:
+ column_net: P15
+ rows:
+ bottom:
+ row_net: P7
+ home:
+ row_net: P6
+ top:
+ row_net: P5
+ thumbfan:
+ anchor:
+ ref: matrix_inner_bottom
+ shift:
+ - '-1.5 kx'
+ - '-1 ky'
+ columns:
+ near:
+ spread: kx
+ rotate: -15
+ origin:
+ - '-0.5 kx'
+ - '-0.5 ky'
+ key:
+ column_net: P19
+ home:
+ spread: kx
+ rotate: -15
+ origin:
+ - '-0.5 kx'
+ - '-0.5 ky'
+ key:
+ column_net: P18
+ far:
+ spread: kx
+ rotate: -15
+ origin:
+ - '-0.5 kx'
+ - '-0.5 ky'
+ key:
+ column_net: P15
+ rows:
+ thumb:
+ row_net: P4
+outlines:
+ exports:
+ raw:
+ -
+ type: keys
+ side: left
+ size:
+ - kx + px
+ - ky + py
+ corner: px
+ thumbfan_glue:
+ -
+ type: polygon
+ points:
+ -
+ ref: matrix_inner_bottom
+ shift:
+ - 0.5 kx + 0.5px
+ - '-0.5 ky + 0.5 py'
+ -
+ ref: thumbfan_far_thumb
+ shift:
+ - 0.5 kx - 0.5px
+ - 0.5 ky + 0.5 py
+ -
+ ref: thumbfan_far_thumb
+ shift:
+ - 0.5 kx - 0.5px
+ - '-0.5 ky - 0.5 py'
+ -
+ ref: thumbfan_near_thumb
+ shift:
+ - '-0.5 kx + 0.5 px'
+ - '-0.5 ky - 0.5 py'
+ -
+ ref: matrix_pinky_bottom
+ shift:
+ - 0.5 kx - 0.5 py
+ - '-0.5 ky - 0.5 py'
+ -
+ ref: matrix_pinky_home
+ -
+ ref: matrix_inner_home
+ patch_outer:
+ -
+ type: polygon
+ points:
+ -
+ ref: matrix_ring_top
+ -
+ ref: matrix_ring_bottom
+ -
+ ref: matrix_pinky_bottom
+ shift:
+ - '-0.5 (kx + px)'
+ - 0
+ -
+ ref: matrix_pinky_top
+ shift:
+ - '-0.5 (kx + px)'
+ - 0
+ patch_inner:
+ -
+ type: polygon
+ points:
+ -
+ ref: matrix_inner_top
+ shift:
+ - 0.5 (kx + px)
+ - 0
+ -
+ ref: matrix_inner_bottom
+ shift:
+ - 0.5 (kx + px)
+ - 0
+ -
+ ref: matrix_index_bottom
+ -
+ ref: matrix_index_top
+ controller_area:
+ main:
+ type: rectangle
+ anchor:
+ ref:
+ - matrix_inner_top
+ shift:
+ - 0 kx
+ - '-4.05 ky'
+ size:
+ - 32
+ - 76.5
+ corner: px
+ switches:
+ main:
+ type: keys
+ side: left
+ size: 14
+ bound: false
+ keycaps:
+ main:
+ type: keys
+ side: left
+ size:
+ - kx
+ - ky
+ bound: false
+ corner: 1
+ keywell:
+ main:
+ type: outline
+ name: raw
+ patch_inner:
+ type: outline
+ name: patch_inner
+ operation: add
+ patch_outer:
+ type: outline
+ name: patch_outer
+ operation: add
+ thumbfan_glue:
+ type: outline
+ name: thumbfan_glue
+ operation: add
+ base_outline:
+ main:
+ type: outline
+ name: keywell
+ controller:
+ type: outline
+ name: controller_area
+ operation: add
+ screw_holes:
+ top_left:
+ type: circle
+ anchor:
+ -
+ ref: matrix_ring_home
+ shift:
+ - '-0.5 kx'
+ - 0 ky
+ radius: 1
+ bottom_left:
+ type: circle
+ anchor:
+ -
+ ref: matrix_pinky_bottom
+ shift:
+ - 0.5 kx
+ - 0
+ radius: 1
+ top_right:
+ type: circle
+ anchor:
+ -
+ ref: matrix_inner_top
+ shift:
+ - '-0.5 kx'
+ - 0
+ radius: 1
+ palm:
+ type: circle
+ anchor:
+ -
+ ref: matrix_index_bottom
+ shift:
+ - 0
+ - '-1.06 ky'
+ radius: 1
+ thumb:
+ type: circle
+ anchor:
+ -
+ ref: thumbfan_far_thumb
+ shift:
+ - '-0.55 kx'
+ - 0
+ radius: 1
+ mounting_holes:
+ top_left:
+ type: circle
+ anchor:
+ -
+ ref: matrix_ring_home
+ shift:
+ - '-0.5 kx'
+ - 0 ky
+ radius: 1.6
+ bottom_left:
+ type: circle
+ anchor:
+ -
+ ref: matrix_pinky_bottom
+ shift:
+ - 0.5 kx
+ - 0
+ radius: 1.6
+ top_right:
+ type: circle
+ anchor:
+ -
+ ref: matrix_inner_top
+ shift:
+ - '-0.5 kx'
+ - 0
+ radius: 1.6
+ palm:
+ type: circle
+ anchor:
+ -
+ ref: matrix_index_bottom
+ shift:
+ - 0
+ - '-1.06 ky'
+ radius: 1.6
+ thumb:
+ type: circle
+ anchor:
+ -
+ ref: thumbfan_far_thumb
+ shift:
+ - '-0.55 kx'
+ - 0
+ radius: 1.6
+ bottom_outline:
+ main:
+ type: outline
+ name: base_outline
+ screw_holes:
+ type: outline
+ name: screw_holes
+ operation: subtract
+ plate:
+ main:
+ type: outline
+ name: keywell
+ switches:
+ type: outline
+ name: switches
+ operation: subtract
+ mounting_holes:
+ type: outline
+ name: screw_holes
+ operation: subtract
+ pcb:
+ main:
+ type: outline
+ name: base_outline
+ mounting_holes:
+ type: outline
+ name: mounting_holes
+ operation: subtract
+pcbs:
+ main:
+ outlines:
+ edge:
+ outline: pcb
+ layer: Edge.Cuts
+ footprints:
+ mcu_l:
+ type: promicro
+ params:
+ orientation: up
+ anchor:
+ ref:
+ - matrix_inner_top
+ shift:
+ - 20
+ - -11
+ rotate: 270
+ mcu_r:
+ type: promicro
+ params:
+ orientation: down
+ anchor:
+ ref:
+ - matrix_inner_top
+ shift:
+ - 22.5
+ - -12.25
+ rotate: 270
+ trrs:
+ type: trrs
+ anchor:
+ ref:
+ - matrix_inner_bottom
+ shift:
+ - 30
+ - -8
+ rotate: 270
+ params:
+ reverse: true
+ symmetric: true
+ nets:
+ A: P0
+ B: P0
+ C: GND
+ D: VCC
diff --git a/output/source/raw.txt b/output/source/raw.txt
new file mode 100644
index 0000000..604b113
--- /dev/null
+++ b/output/source/raw.txt
@@ -0,0 +1,291 @@
+units:
+ kx: cx
+ ky: cy
+ px: 2
+ py: 2
+points:
+ key:
+ footprints:
+ choc_hotswap:
+ type: choc
+ params:
+ hotswap: true
+ reverse: true
+ keycaps: true
+ nets:
+ # from: P1
+ # to: P2
+ from: =colrow
+ to: =column_net
+ diode:
+ type: diode
+ nets:
+ # from: P3
+ # to: P4
+ from: =colrow
+ to: =row_net
+ anchor:
+ shift: [0, -5]
+ zones:
+ matrix:
+ # anchor:
+ # rotate: 5
+ key.padding: ky
+ columns:
+ pinky:
+ stagger: 0 ky
+ spread: kx
+ key:
+ column_net: P21
+ ring:
+ stagger: 0.7 ky
+ spread: kx
+ key:
+ column_net: P20
+ middle:
+ stagger: 0.2 ky
+ spread: kx
+ key:
+ column_net: P19
+ index:
+ stagger: -0.2 ky
+ spread: kx
+ key:
+ column_net: P18
+ inner:
+ stagger: -0.1 ky
+ spread: kx
+ key:
+ column_net: P15
+ rows:
+ bottom:
+ row_net: P7
+ home:
+ row_net: P6
+ top:
+ row_net: P5
+ thumbfan:
+ anchor:
+ ref: matrix_inner_bottom
+ shift: [-1.5 kx, -1 ky]
+ columns:
+ near:
+ spread: kx
+ rotate: -15
+ origin: [-0.5 kx, -0.5 ky]
+ key:
+ column_net: P19
+ home:
+ spread: kx
+ rotate: -15
+ origin: [-0.5 kx, -0.5 ky]
+ key:
+ column_net: P18
+ far:
+ spread: kx
+ rotate: -15
+ origin: [-0.5 kx, -0.5 ky]
+ key:
+ column_net: P15
+ rows:
+ thumb:
+ row_net: P4
+outlines:
+ exports:
+ raw:
+ - type: keys
+ side: left
+ size: [kx + px, ky + py]
+ corner: px
+ thumbfan_glue:
+ - type: polygon
+ points:
+ - ref: matrix_inner_bottom
+ shift: [0.5 kx + 0.5px, -0.5 ky + 0.5 py]
+ - ref: thumbfan_far_thumb
+ shift: [0.5 kx - 0.5px, 0.5 ky + 0.5 py]
+ - ref: thumbfan_far_thumb
+ shift: [0.5 kx - 0.5px, -0.5 ky - 0.5 py]
+ - ref: thumbfan_near_thumb
+ shift: [-0.5 kx + 0.5 px, -0.5 ky - 0.5 py]
+ - ref: matrix_pinky_bottom
+ shift: [0.5 kx - 0.5 py, -0.5 ky - 0.5 py]
+ - ref: matrix_pinky_home
+ - ref: matrix_inner_home
+ patch_outer:
+ - type: polygon
+ points:
+ - ref: matrix_ring_top
+ - ref: matrix_ring_bottom
+ - ref: matrix_pinky_bottom
+ shift: [-0.5 (kx + px), 0]
+ - ref: matrix_pinky_top
+ shift: [-0.5 (kx + px), 0]
+ patch_inner:
+ - type: polygon
+ points:
+ - ref: matrix_inner_top
+ shift: [0.5 (kx + px), 0]
+ - ref: matrix_inner_bottom
+ shift: [0.5 (kx + px), 0]
+ - ref: matrix_index_bottom
+ - ref: matrix_index_top
+ controller_area:
+ main:
+ type: rectangle
+ anchor:
+ ref:
+ - matrix_inner_top
+ shift: [0 kx, -4.05 ky]
+ size: [32, 76.5]
+ corner: px
+ switches:
+ main:
+ type: keys
+ side: left
+ size: 14
+ bound: false
+ keycaps:
+ main:
+ type: keys
+ side: left
+ size: [kx, ky]
+ bound: false
+ corner: 1
+ keywell:
+ main:
+ type: outline
+ name: raw
+ patch_inner:
+ type: outline
+ name: patch_inner
+ operation: add
+ patch_outer:
+ type: outline
+ name: patch_outer
+ operation: add
+ thumbfan_glue:
+ type: outline
+ name: thumbfan_glue
+ operation: add
+ base_outline:
+ main:
+ type: outline
+ name: keywell
+ controller:
+ type: outline
+ name: controller_area
+ operation: add
+ screw_holes:
+ top_left:
+ type: circle
+ anchor:
+ - ref: matrix_ring_home
+ shift: [-0.5 kx, 0 ky]
+ radius: 1
+ bottom_left:
+ type: circle
+ anchor:
+ - ref: matrix_pinky_bottom
+ shift: [0.5 kx, 0]
+ radius: 1
+ top_right:
+ type: circle
+ anchor:
+ - ref: matrix_inner_top
+ shift: [-0.5 kx, 0]
+ radius: 1
+ palm:
+ type: circle
+ anchor:
+ - ref: matrix_index_bottom
+ shift: [0, -1.06 ky]
+ radius: 1
+ thumb:
+ type: circle
+ anchor:
+ - ref: thumbfan_far_thumb
+ shift: [-0.55 kx, 0]
+ radius: 1
+ mounting_holes:
+ $extends: outlines.exports.screw_holes
+ top_left:
+ radius: 1.6
+ bottom_left:
+ radius: 1.6
+ top_right:
+ radius: 1.6
+ palm:
+ radius: 1.6
+ thumb:
+ radius: 1.6
+ bottom_outline:
+ main:
+ type: outline
+ name: base_outline
+ screw_holes:
+ type: outline
+ name: screw_holes
+ operation: subtract
+ plate:
+ main:
+ type: outline
+ name: keywell
+ switches:
+ type: outline
+ name: switches
+ operation: subtract
+ mounting_holes:
+ type: outline
+ # TODO use mounting holes of bigger diameter on PCB
+ name: screw_holes
+ operation: subtract
+ pcb:
+ main:
+ type: outline
+ name: base_outline
+ mounting_holes:
+ type: outline
+ name: mounting_holes
+ operation: subtract
+pcbs:
+ main:
+ outlines:
+ edge:
+ outline: pcb
+ layer: Edge.Cuts
+ # TODO there's a way to add stuff to the silkscreen layer
+ footprints:
+ mcu_l:
+ type: promicro
+ params:
+ orientation: up
+ anchor:
+ ref:
+ - matrix_inner_top
+ shift: [20, -11]
+ rotate: 270
+ mcu_r:
+ type: promicro
+ params:
+ orientation: down
+ anchor:
+ ref:
+ - matrix_inner_top
+ shift: [22.5, -12.25]
+ rotate: 270
+ trrs:
+ type: trrs
+ anchor:
+ ref:
+ - matrix_inner_bottom
+ shift: [30, -8]
+ rotate: 270
+ params:
+ reverse: true
+ symmetric: true
+ nets:
+ A: P0
+ B: P0
+ C: GND
+ D: VCC