diff --git a/README.md b/README.md
index ec13a1f4c4720405d05e46a7bf2913a7198217a9..3631c274627df621e22d12754e63c3ce7a779be2 100644
--- a/README.md
+++ b/README.md
@@ -384,6 +384,9 @@
   - Draw lines directly in `pcbnew` by using line information in `dxf`
 
 - Create a python script serving as Python API by drawing everything on `pcbnew`
+- Dependencies:
+  - ezdxf
+  - pykicad
 - Successfully import `dxf` as outlines from script
 - ![](journal_media/import_script.png)
 
@@ -399,4 +402,43 @@
 
 - Potential Solutions:
     - 1. Explore existing supported export API, and see if modification can be made based on existing API structure
-    - 2. Learn `dsn` file specification and python library to generate `dsn` file based on design information
\ No newline at end of file
+    - 2. Learn `dsn` file specification and python library to generate `dsn` file based on design information
+
+### 07/24/2019
+
+- Pipeline change: (skipping `KiCAD`)
+  - Use (`dxf`+ `pretty` (footprint library) + `net` information ) to generate `dsn` file
+  - Send `dsn` file to auto-router, save as new `dsn` file
+  - Read `dsn` file `wiring` information and draw it back on `dxf`
+
+- Analysis on `dsn` file format:
+~~~
+        |--pcb
+        |   |--parser
+        |   |--resolution
+        |   |--unit
+        |   |--structure
+        |   |     |--layer 1
+        |   |     |-- ...
+        |   |     |--boundary
+        |   |     |--keepout 1
+        |   |     |-- ...
+        |   |     |--via
+        |   |     |--rule
+        |   |--placement
+        |   |     |--component 1
+        |   |     |-- ...
+        |   |--library
+        |   |     |--image [ref**] 1
+        |   |     |     |--outline
+        |   |     |     |--pin
+        |   |     |-- ...
+        |   |     |--padstack
+        |   |     |--...
+        |   |--network
+        |   |     |--net [name] 1
+        |   |     |   |--pins
+        |   |     |-- ...
+        |   |--wiring
+        |   |     |--wire
+~~~
\ No newline at end of file
diff --git a/dsn_python/__pycache__/dsn_module.cpython-36.pyc b/dsn_python/__pycache__/dsn_module.cpython-36.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..765aff856af9170e04400c4ecb60a3633bba594c
Binary files /dev/null and b/dsn_python/__pycache__/dsn_module.cpython-36.pyc differ
diff --git a/dsn_python/__pycache__/dsn_rule.cpython-36.pyc b/dsn_python/__pycache__/dsn_rule.cpython-36.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..2f388616b908083da37a765322a2ff98fef510cd
Binary files /dev/null and b/dsn_python/__pycache__/dsn_rule.cpython-36.pyc differ
diff --git a/dsn_python/__pycache__/dsnwritier.cpython-36.pyc b/dsn_python/__pycache__/dsnwritier.cpython-36.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..e0f4d92ed1c145a9a3eba0cd9019a8b1c13527ff
Binary files /dev/null and b/dsn_python/__pycache__/dsnwritier.cpython-36.pyc differ
diff --git a/dsn_python/dsn_module.py b/dsn_python/dsn_module.py
new file mode 100644
index 0000000000000000000000000000000000000000..a4bfd5af8e7334856fafb77d4d4340526ac589d8
--- /dev/null
+++ b/dsn_python/dsn_module.py
@@ -0,0 +1,109 @@
+#!/usr/bin/env python3
+from pykicad.sexpr import *
+
+class Component(AST):
+    tag='component'
+    schema={
+        '0':{
+            '_parser':text,
+            '_attr':'ref1',
+            # '_multiple':True
+        },
+        'place':{
+            '0':{
+                '_parser':text,
+                '_attr':'ref2',
+            },
+            '1':{
+                '_parser':number + number,
+                '_attr':'at'
+            },
+            '2':{
+                '_parser':text,
+                '_attr':'flip'
+            },
+            '3':{
+                '_parser':integer,
+                '_attr':'orientation'
+            },
+            'PN':{
+                '_parser':text,
+                '_attr':'name'
+            }
+        }
+    }  
+    def __init__(self,ref1,at,ref2=None,flip='front',orientation=0,name=None):
+        at[1]=-at[1] #flip y for dsn
+        ref2=ref1
+        super(Component,self).__init__(ref1=ref1,ref2=ref2,at=at,flip=flip,orientation=orientation,name=name)
+
+class Outline(AST):
+    tag='outline'
+    schema={
+        '0':{
+            'path signal':{
+                '0':{
+                    '_parser':integer,
+                    '_attr':'width'
+                },
+                '1':{
+                    '_parser':number,
+                    '_attr':'outline_start'
+                },
+                '2':{
+                    '_parser':number,
+                    '_attr':'outline_end'
+                }
+            }
+
+        }
+    }
+    def __init__(self,width=None,outline_start=None,outline_end=None):
+        super(Outline,self).__init__(width=width,outline_start=outline_start,outline_end=outline_end)
+
+class Pin(AST):
+    tag='pin'
+    schema={
+        '0':{
+            '_parser':text,
+            '_attr':'pin_type',
+        },
+        '1':{
+            '_parser':integer,
+            '_attr':'pin_index',
+        },
+        '2':{
+            '_parser':number+number,
+            '_attr':'pin_at',
+        }
+    }
+    def __init__(self,pin_index=None,pin_at=None,pin_type='Round[A]Pad_1524_um'):
+        super(Pin,self).__init__(pin_type=pin_type,pin_index=pin_index,pin_at=pin_at)
+
+
+class Footprint(AST):
+    tag='image'
+    schema={
+        '0':{
+            '_parser':text,
+            '_attr':'ref',
+        },
+        'outline':{
+            '_parser':Outline,
+            '_multiple':True
+        },
+        'pin':{
+            '_parser':Pin,
+            '_multiple':True
+
+        }
+
+    }
+    def __init__(self,ref=None,outline=None,pin=None):
+        outline=self.init_list(outline,[])
+        pin=self.init_list(pin,[])
+        super(Footprint,self).__init__(ref=ref,outline=outline,pin=pin)
+
+
+
+# def load_module(file)
\ No newline at end of file
diff --git a/dsn_python/dsn_rule.py b/dsn_python/dsn_rule.py
new file mode 100644
index 0000000000000000000000000000000000000000..8af63ef664b635d7f52007ec1f56a0c0cbfa0466
--- /dev/null
+++ b/dsn_python/dsn_rule.py
@@ -0,0 +1,42 @@
+
+
+from pykicad.sexpr import *
+class Clearance(AST):
+    tag='clearance'
+    schema={
+        '0':{
+            '_parser':number,
+            '_attr':'number'
+        },
+        '1':{
+            'type':{
+                '_parser':text,
+                '_attr':'typex'
+            },
+            '_optional':True
+        },
+    }
+    def __init__(self,number=200.1,typex=None):
+        super(Clearance,self).__init__(number=number,typex=typex)
+
+class Rule(AST):
+    tag='rule'
+    schema={
+        '0':{
+            'width':{
+                '_parser': number
+            },
+        },
+        '1':{
+            'clearance':{
+                '_parser':Clearance,
+                '_multiple':True
+            },
+            
+        },
+    }
+
+    def __init__(self,width=250,clearance=None):
+        clearance=self.init_list(clearance,[])
+       
+        super(Rule,self).__init__(width=width,clearance=clearance)
\ No newline at end of file
diff --git a/dsn_python/dsnwritier.py b/dsn_python/dsnwritier.py
new file mode 100644
index 0000000000000000000000000000000000000000..8a7b15395f5bde1cb172e4f041653a1e57148cc5
--- /dev/null
+++ b/dsn_python/dsnwritier.py
@@ -0,0 +1,243 @@
+#!/usr/bin/env python3
+from pykicad.sexpr import *
+from dsn_rule import *
+from dsn_module import Component,Footprint
+import dsn_module as module
+
+class Parser(AST):
+    tag = 'parser'
+    schema = {
+        'string_quote' : {
+            '_parser' : text,
+            '_attr' : 'quote_char'
+        },
+        'space_in_quoted_tokens' : {
+            '_parser': yes_no,
+            '_attr' : 'tokens_on_off'
+        },
+        'host_cad':{
+            '_parser': text
+        },
+        'host_version':{
+            '_parser':text
+        }
+    }
+    def __init__(self,
+        quote_char='\"',
+        tokens_on_off='on',
+        host_cad= "KiCad's Pcbnew",
+        host_version="5.1.3-ffb9f22~84~ubuntu18.04.1"):
+
+        super(Parser,self).__init__(quote_char=quote_char,
+                                    tokens_on_off=tokens_on_off,
+                                    host_cad=host_cad,
+                                    host_version=host_version)
+
+                         
+class Layer(AST):
+    tag='layer'
+    schema={
+        '0':{
+            '_parser': text,
+            '_attr': 'name'
+        },
+        'type':{
+            '_parser': Literal('signal') | 'power' | 'mixed' | 'jumper' | 'user',
+            '_attr': 'typex'
+        },
+        'property':{
+            'index':{
+                '_parser':text,
+                '_attr':'index'
+            },
+        },
+    }
+    index_ctr=0
+
+    def __init__(self,name,typex='signal',index=None):
+        index=Layer.index_ctr
+        Layer.index_ctr+=1
+        super(Layer,self).__init__(name=name,typex=typex,index=index)
+
+
+class Boundary(AST):
+    tag='boundary'
+    schema={
+        'path pcb':{
+            '0':{
+                '_parser':integer,
+                '_attr':'brd_index'
+            },
+            '1':{
+                '_parser': number,
+                '_attr': 'path'
+            },
+
+        }
+    }
+
+    index_ctr=0
+    def __init__(self,path,brd_index=None):
+        brd_index=Boundary.index_ctr
+        Boundary.index_ctr+=1
+
+        super(Boundary,self).__init__(path=path,brd_index=brd_index)
+
+class Keepout(AST):
+    tag='keepout'
+    schema={
+        '0':{
+            '0':{
+                '_parser':text,
+                '_attr':'name'
+            },
+
+            ' ':{
+                '0': {
+                    '_parser':text,
+                    '_attr':'shape'
+                },
+                '1':{
+                    '_parser':text,
+                    '_attr':'typex'
+                },
+                '2':{
+                    '_parser':integer,
+                    '_attr':'brd_index'
+                },
+                '3':{
+                    '_parser': number,
+                    '_attr':'path'
+                },
+            },
+        },
+    }
+    def __init__(self,path,name='\"\"',brd_index=0,shape='polygon',typex='signal'):
+
+        super(Keepout,self).__init__(path=path,name=name,brd_index=brd_index,shape=shape,typex=typex)
+
+
+
+class Dsn(AST):
+    tag = 'PCB "kicad_board"'
+    schema = {
+        '0':{
+            'parser' : {
+            '_parser': Parser
+            },
+        },
+        '1':{
+            'resolution':{
+                '_parser': text + integer
+            },
+        },
+        '2':{    
+            'unit':{
+                '_parser': text
+            },
+        },
+        '3':{
+            'structure':{
+                '0':{
+                    'layers':{
+                        '_parser':Layer,
+                        '_multiple':True
+                    },
+                },
+                '1':{
+                    'boundary':{
+                        '_parser':Boundary, 
+                        '_multiple':True
+                    },                    
+                },
+                '2':{
+                    'keepout':{
+                        '_parser': Keepout,
+                        '_multiple': True
+                    },
+                },
+                '3':{
+                    'via':{
+                        '_parser': text,
+                        '_attr': 'via_txt'
+                    },
+                },
+                '4':{
+                    'rule':{
+                        '_parser': Rule
+                    }
+                }
+            },
+            '_optional':True
+        },
+        '4':{
+            'placement':{
+                '0':{
+                    'component':{
+                        '_parser':Component,
+                        '_multiple':True
+                    },
+                },
+            },
+        },
+        '5':{
+            'library':{
+                '0':{
+                    'image':{
+                        '_parser': Footprint,
+                        '_multiple': True
+                    },
+                }
+
+                # 'padstack':{
+                #     '_parser':Padstack,
+                #     '_multiple': True
+                # }
+
+            }
+        }
+
+
+           
+    }
+
+    def __init__(self,
+        resolution=['um',10],
+        unit='um',
+        parser=None,
+        layers=None,
+        boundary=None,
+        keepout=None,
+        via_txt='"Via[0-1]_800:400_um"',
+        rule=None,
+        component=None,
+        image=None
+        ):
+
+        layers=self.init_list(layers,[])
+        parser=self.init_list(parser,[])
+        boundary=self.init_list(boundary,[])
+        keepout=self.init_list(keepout,[])
+        component=self.init_list(component,[])
+        image=self.init_list(image,[])
+        
+
+        super(Dsn,self).__init__(
+            resolution=resolution,
+            unit=unit,
+            parser=parser,
+            layers=layers,
+            boundary=boundary,
+            keepout=keepout,
+            via_txt=via_txt,
+            rule=rule,
+            component=component,
+            image=image
+            )
+
+    def to_file(self, path):
+        if not path.endswith('.dsn'):
+            path += '.dsn'
+        with open(path, 'w', encoding='utf-8') as f:
+            f.write(self.to_string())     
+
diff --git a/dsn_python/dsnwritier.pyc b/dsn_python/dsnwritier.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..b54d2f136e0a7eed1bceb4c152ea8ba6585e81cf
Binary files /dev/null and b/dsn_python/dsnwritier.pyc differ
diff --git a/dsn_python/test_dsn_python.py b/dsn_python/test_dsn_python.py
new file mode 100644
index 0000000000000000000000000000000000000000..86f6e431478fac39ead12aa1262c9275cd0c95e8
--- /dev/null
+++ b/dsn_python/test_dsn_python.py
@@ -0,0 +1,75 @@
+#!/usr/bin/env python3
+import dsnwritier
+from pykicad import pcb
+
+test=dsnwritier.Dsn()
+
+###############################################################################
+layers=[
+    dsnwritier.Layer('F.Cu'),
+    dsnwritier.Layer('B.Cu')
+]
+
+
+bdata=[137735, -31864.8,  165736, -31864.8,  165736, -113335,  137735, -113335,
+            137735, -113864,  160735, -113864,  160735, -151336,  150736, -151336,
+            150736, -151865,  160735, -151865,  160735, -211335,  150736, -211335,
+            150736, -211865,  169735, -211865,  169735, -249335,  96264.4,-249335,
+            96264.4, -211865,  138264, -211865,  138264, -211335,  37264.4, -211335,
+            37264.4, -151865,  138264, -151865,  138264, -151336,  87264.4, -151336,
+            87264.4, -113864,  119265, -113864,  119265, -113335,  264.583, -113335,
+            264.583, -31864.8,  78264.5, -31864.8,  78264.5, -264.632,  137735, -264.632,
+            137735, -31864.8]
+
+kdata1=[138725, -221865,  138725, -244336,  150275, -244336,  150275, -221865,
+            138725, -221865]
+kdata2=[98235.3, -224531,  98764.5, -224531,  98764.5, -219905,  103236, -224376,
+            103236, -236824,  98764.5, -241294,  98764.5, -236669,  98235.3, -236669,
+            98235.3, -242572,  103610, -237198,  103765, -237198,  103765, -237043,
+            103874, -236933,  103765, -236824,  103765, -224376,  103874, -224266,
+            103765, -224157,  103765, -224002,  103610, -224002,  98235.3, -218628,
+            98235.3, -224531]
+
+#######################################################################################
+parsers= dsnwritier.Parser()
+
+boundary=dsnwritier.Boundary(bdata)
+
+keepout=[
+    dsnwritier.Keepout(kdata1),
+    dsnwritier.Keepout(kdata2)]
+
+rule=dsnwritier.Rule()
+clearance=[
+    dsnwritier.Clearance(200.1),
+    dsnwritier.Clearance(200.1,'default_smd'),
+    dsnwritier.Clearance(50,'smd_smd')]
+rule.clearance=clearance
+
+component=[dsnwritier.Component('U1',[103000,48000],name='"DEV"'),
+          dsnwritier.Component('J1',[103000,48000],name='"DEV"')]
+
+
+image1_outline=[
+    dsnwritier.module.Outline(width=120,outline_start=[-7620, 11430],outline_end=[7540, 11430]),
+    dsnwritier.module.Outline(width=120,outline_start=[-7620, 11430],outline_end=[7540, -13570]),
+    dsnwritier.module.Outline(width=120,outline_start=[-7620, -13570],outline_end=[-7620, -13570]),
+    dsnwritier.module.Outline(width=120,outline_start=[-7620, -13570],outline_end=[-7620, 11430])]
+# image1_outline=[dsnwritier.module.Outline(120)]
+image1_pin=[
+    dsnwritier.module.Pin(1,[-6350, 10160]),
+    dsnwritier.module.Pin(2,[-6350, 7620])]
+
+image1=dsnwritier.Footprint('U1',image1_outline,image1_pin)
+image=[image1]
+
+########################################################################################
+test.parser=parsers
+test.layers=layers
+test.boundary=boundary
+test.keepout=keepout
+test.rule=rule
+test.component=component
+test.image=image
+
+test.to_file('testdsn.dsn')
diff --git a/dsn_python/testdsn.dsn b/dsn_python/testdsn.dsn
new file mode 100644
index 0000000000000000000000000000000000000000..14da9ab6b506d80a9a8993b163bfe01890d10c11
--- /dev/null
+++ b/dsn_python/testdsn.dsn
@@ -0,0 +1,52 @@
+
+(PCB "kicad_board" 
+(parser 
+    (string_quote ") 
+    (space_in_quoted_tokens on) 
+    (host_cad "KiCad's Pcbnew") 
+    (host_version 5.1.3-ffb9f22~84~ubuntu18.04.1)) 
+    (resolution um 10) 
+    (unit um) 
+    (structure 
+(layer F.Cu 
+    (type signal) 
+    (property 
+        (index 0))) 
+(layer B.Cu 
+    (type signal) 
+    (property 
+        (index 1))) 
+(boundary 
+    (path pcb 0 137735 -31864.8000000000 165736 -31864.8000000000 165736 -113335 137735 -113335 137735 -113864 160735 -113864 160735 -151336 150736 -151336 150736 -151865 160735 -151865 160735 -211335 150736 -211335 150736 -211865 169735 -211865 169735 -249335 96264.4000000000 -249335 96264.4000000000 -211865 138264 -211865 138264 -211335 37264.4000000000 -211335 37264.4000000000 -151865 138264 -151865 138264 -151336 87264.4000000000 -151336 87264.4000000000 -113864 119265 -113864 119265 -113335 264.5830000000 -113335 264.5830000000 -31864.8000000000 78264.5000000000 -31864.8000000000 78264.5000000000 -264.6320000000 137735 -264.6320000000 137735 -31864.8000000000)) 
+(keepout "" 
+    (  polygon signal 0 138725 -221865 138725 -244336 150275 -244336 150275 -221865 138725 -221865)) 
+(keepout "" 
+    (  polygon signal 0 98235.3000000000 -224531 98764.5000000000 -224531 98764.5000000000 -219905 103236 -224376 103236 -236824 98764.5000000000 -241294 98764.5000000000 -236669 98235.3000000000 -236669 98235.3000000000 -242572 103610 -237198 103765 -237198 103765 -237043 103874 -236933 103765 -236824 103765 -224376 103874 -224266 103765 -224157 103765 -224002 103610 -224002 98235.3000000000 -218628 98235.3000000000 -224531)) 
+        (via "Via[0-1]_800:400_um") 
+(rule 
+    (width 250) 
+(clearance 200.1000000000) 
+(clearance 200.1000000000 
+    (type default_smd)) 
+(clearance 50 
+    (type smd_smd)))) 
+    (placement 
+(component U1 
+    (place U1 103000 -48000 front 0 
+        (PN "DEV"))) 
+(component J1 
+    (place J1 103000 -48000 front 0 
+        (PN "DEV")))) 
+    (library 
+(image U1 
+(outline 
+    (path signal 120 -7620 11430 7540 11430)) 
+(outline 
+    (path signal 120 -7620 11430 7540 -13570)) 
+(outline 
+    (path signal 120 -7620 -13570 -7620 -13570)) 
+(outline 
+    (path signal 120 -7620 -13570 -7620 11430)) 
+(pin Round[A]Pad_1524_um 1 -6350 10160) 
+(pin Round[A]Pad_1524_um 2 -6350 7620))
+))
\ No newline at end of file
diff --git a/kicad_board.dsn b/kicad_board.dsn
index bf4e54d0ef852f78c40625f484795c6a10b6639c..aa33aa96fea71b247d1c4eca49b355e562bf5003 100644
--- a/kicad_board.dsn
+++ b/kicad_board.dsn
@@ -1,1208 +1,249 @@
-
-(PCB "kicad_board"
+(pcb /home/jingyan/Documents/summer_intern_lemur/roco_electrical/kicad_board.dsn
   (parser
     (string_quote ")
     (space_in_quoted_tokens on)
     (host_cad "KiCad's Pcbnew")
     (host_version "5.1.3-ffb9f22~84~ubuntu18.04.1")
-    (generated_by_freeroute)
   )
   (resolution um 10)
+  (unit um)
   (structure
-    (boundary
-      (rect pcb 164.6 -249435.0 169835.0 -164.6)
-    )
-    (boundary
-      (polygon signal 0
-        96264.4 -249335.0
-        169735.0 -249335.0
-        169735.0 -211865.0
-        150736.0 -211865.0
-        150736.0 -211335.0
-        160735.0 -211335.0
-        160735.0 -151865.0
-        150736.0 -151865.0
-        150736.0 -151336.0
-        160735.0 -151336.0
-        160735.0 -113864.0
-        137735.0 -113864.0
-        137735.0 -113335.0
-        165736.0 -113335.0
-        165736.0 -31864.8
-        137735.0 -31864.8
-        137735.0 -264.6
-        78264.5 -264.6
-        78264.5 -31864.8
-        264.6 -31864.8
-        264.6 -113335.0
-        119265.0 -113335.0
-        119265.0 -113864.0
-        87264.4 -113864.0
-        87264.4 -151336.0
-        138264.0 -151336.0
-        138264.0 -151865.0
-        37264.4 -151865.0
-        37264.4 -211335.0
-        138264.0 -211335.0
-        138264.0 -211865.0
-        96264.4 -211865.0
-      )
-    )
-    (snap_angle 
-      fortyfive_degree
-    )
-    (via "Via[0-1]_800:400_um")
-    (control
-      (via_at_smd off)
-    )
-    (rule
-      (width 1000.0)
-      (clear 200.2)
-      (clear 125.0 (type smd_to_turn_gap))
-      (clear 50.0 (type smd_smd))
-    )
     (layer F.Cu
       (type signal)
+      (property
+        (index 0)
+      )
     )
     (layer B.Cu
       (type signal)
-    )
-    (autoroute_settings
-      (fanout off)
-      (autoroute on)
-      (postroute on)
-      (vias on)
-      (via_costs 50)
-      (plane_via_costs 5)
-      (start_ripup_costs 100)
-      (start_pass_no 4)
-      (layer_rule F.Cu
-        (active on)
-        (preferred_direction vertical)
-        (preferred_direction_trace_costs 1.0)
-        (against_preferred_direction_trace_costs 2.5)
-      )
-      (layer_rule B.Cu
-        (active on)
-        (preferred_direction horizontal)
-        (preferred_direction_trace_costs 1.0)
-        (against_preferred_direction_trace_costs 1.7)
-      )
-    )
-    (keepout
-      (polygon B.Cu 0
-        101735.0 -31764.5
-        114264.0 -31764.5
-        114264.0 -13235.4
-        113735.0 -13235.4
-        113735.0 -31235.4
-        102265.0 -31235.4
-        102265.0 -13235.4
-        101735.0 -13235.4
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        101735.0 -31764.5
-        114264.0 -31764.5
-        114264.0 -13235.4
-        113735.0 -13235.4
-        113735.0 -31235.4
-        102265.0 -31235.4
-        102265.0 -13235.4
-        101735.0 -13235.4
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        31485.4 -45614.8
-        32514.8 -45614.8
-        32514.8 -35585.5
-        31485.4 -35585.5
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        31485.4 -45614.8
-        32514.8 -45614.8
-        32514.8 -35585.5
-        31485.4 -35585.5
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        150265.0 -50835.2
-        153735.0 -50835.2
-        153735.0 -42364.4
-        150265.0 -42364.4
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        150265.0 -50835.2
-        153735.0 -50835.2
-        153735.0 -42364.4
-        150265.0 -42364.4
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        6985.6 -61932.7
-        8014.5 -61932.7
-        8014.5 -45994.6
-        6985.6 -45994.6
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        6985.6 -61932.7
-        8014.5 -61932.7
-        8014.5 -45994.6
-        6985.6 -45994.6
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        163500.0 -66792.3
-        163610.0 -66682.8
-        163765.0 -66682.8
-        163765.0 -66527.8
-        163874.0 -66418.2
-        163765.0 -66308.7
-        163765.0 -61153.4
-        163236.0 -61153.4
-        163236.0 -65779.5
-        158764.0 -61308.4
-        158764.0 -46618.9
-        163236.0 -42147.9
-        163236.0 -46773.9
-        163765.0 -46773.9
-        163765.0 -41618.7
-        163874.0 -41509.1
-        163765.0 -41399.6
-        163765.0 -41244.6
-        163610.0 -41244.6
-        163500.0 -41135.0
-        163391.0 -41244.6
-        163236.0 -41244.6
-        163236.0 -41399.6
-        158390.0 -46244.8
-        158235.0 -46244.8
-        158235.0 -46399.3
-        158126.0 -46509.3
-        158235.0 -46618.9
-        158235.0 -61308.4
-        158126.0 -61418.0
-        158235.0 -61527.6
-        158235.0 -61682.6
-        158390.0 -61682.6
-        163236.0 -66527.8
-        163236.0 -66682.8
-        163391.0 -66682.8
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        163500.0 -66792.3
-        163610.0 -66682.8
-        163765.0 -66682.8
-        163765.0 -66527.8
-        163874.0 -66418.2
-        163765.0 -66308.7
-        163765.0 -61153.4
-        163236.0 -61153.4
-        163236.0 -65779.5
-        158764.0 -61308.4
-        158764.0 -46618.9
-        163236.0 -42147.9
-        163236.0 -46773.9
-        163765.0 -46773.9
-        163765.0 -41618.7
-        163874.0 -41509.1
-        163765.0 -41399.6
-        163765.0 -41244.6
-        163610.0 -41244.6
-        163500.0 -41135.0
-        163391.0 -41244.6
-        163236.0 -41244.6
-        163236.0 -41399.6
-        158390.0 -46244.8
-        158235.0 -46244.8
-        158235.0 -46399.3
-        158126.0 -46509.3
-        158235.0 -46618.9
-        158235.0 -61308.4
-        158126.0 -61418.0
-        158235.0 -61527.6
-        158235.0 -61682.6
-        158390.0 -61682.6
-        163236.0 -66527.8
-        163236.0 -66682.8
-        163391.0 -66682.8
+      (property
+        (index 1)
       )
-      (clearance_class default)
     )
-    (keepout
-      (polygon B.Cu 0
-        81014.7 -74585.7
-        107485.0 -74585.7
-        107485.0 -67114.8
-        81014.7 -67114.8
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        81014.7 -74585.7
-        107485.0 -74585.7
-        107485.0 -67114.8
-        81014.7 -67114.8
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        6985.6 -99205.4
-        8014.5 -99205.4
-        8014.5 -83267.3
-        6985.6 -83267.3
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        6985.6 -99205.4
-        8014.5 -99205.4
-        8014.5 -83267.3
-        6985.6 -83267.3
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        163500.0 -104065.0
-        163610.0 -103955.0
-        163765.0 -103955.0
-        163765.0 -103800.0
-        163874.0 -103691.0
-        163765.0 -103581.0
-        163765.0 -98426.1
-        163236.0 -98426.1
-        163236.0 -103052.0
-        158764.0 -98581.1
-        158764.0 -83891.6
-        163236.0 -79420.5
-        163236.0 -84046.6
-        163765.0 -84046.6
-        163765.0 -78891.3
-        163874.0 -78781.8
-        163765.0 -78672.2
-        163765.0 -78517.2
-        163610.0 -78517.2
-        163500.0 -78407.7
-        163391.0 -78517.2
-        163236.0 -78517.2
-        163236.0 -78672.2
-        158390.0 -83517.4
-        158235.0 -83517.4
-        158235.0 -83672.5
-        158126.0 -83782.0
-        158235.0 -83891.6
-        158235.0 -98581.1
-        158126.0 -98690.7
-        158235.0 -98800.7
-        158235.0 -98955.2
-        158390.0 -98955.2
-        163236.0 -103800.0
-        163236.0 -103955.0
-        163391.0 -103955.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        163500.0 -104065.0
-        163610.0 -103955.0
-        163765.0 -103955.0
-        163765.0 -103800.0
-        163874.0 -103691.0
-        163765.0 -103581.0
-        163765.0 -98426.1
-        163236.0 -98426.1
-        163236.0 -103052.0
-        158764.0 -98581.1
-        158764.0 -83891.6
-        163236.0 -79420.5
-        163236.0 -84046.6
-        163765.0 -84046.6
-        163765.0 -78891.3
-        163874.0 -78781.8
-        163765.0 -78672.2
-        163765.0 -78517.2
-        163610.0 -78517.2
-        163500.0 -78407.7
-        163391.0 -78517.2
-        163236.0 -78517.2
-        163236.0 -78672.2
-        158390.0 -83517.4
-        158235.0 -83517.4
-        158235.0 -83672.5
-        158126.0 -83782.0
-        158235.0 -83891.6
-        158235.0 -98581.1
-        158126.0 -98690.7
-        158235.0 -98800.7
-        158235.0 -98955.2
-        158390.0 -98955.2
-        163236.0 -103800.0
-        163236.0 -103955.0
-        163391.0 -103955.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        138725.0 -108336.0
-        150275.0 -108336.0
-        150275.0 -85864.6
-        138725.0 -85864.6
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        138725.0 -108336.0
-        150275.0 -108336.0
-        150275.0 -85864.6
-        138725.0 -85864.6
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        65725.7 -108336.0
-        77274.4 -108336.0
-        77274.4 -85864.6
-        65725.7 -85864.6
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        65725.7 -108336.0
-        77274.4 -108336.0
-        77274.4 -85864.6
-        65725.7 -85864.6
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        93985.5 -139448.0
-        95014.4 -139448.0
-        95014.4 -125752.0
-        93985.5 -125752.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        93985.5 -139448.0
-        95014.4 -139448.0
-        95014.4 -125752.0
-        93985.5 -125752.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        138725.0 -141336.0
-        150275.0 -141336.0
-        150275.0 -118865.0
-        138725.0 -118865.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        138725.0 -141336.0
-        150275.0 -141336.0
-        150275.0 -118865.0
-        138725.0 -118865.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        158500.0 -144308.0
-        158609.0 -144198.0
-        158764.0 -144198.0
-        158764.0 -144043.0
-        158874.0 -143933.0
-        158764.0 -143824.0
-        158764.0 -138669.0
-        158235.0 -138669.0
-        158235.0 -143295.0
-        153765.0 -138824.0
-        153765.0 -126376.0
-        158235.0 -121905.0
-        158235.0 -126531.0
-        158764.0 -126531.0
-        158764.0 -121376.0
-        158874.0 -121267.0
-        158764.0 -121157.0
-        158764.0 -121002.0
-        158609.0 -121002.0
-        158500.0 -120892.0
-        158390.0 -121002.0
-        158235.0 -121002.0
-        158235.0 -121157.0
-        153391.0 -126002.0
-        153236.0 -126002.0
-        153236.0 -126157.0
-        153126.0 -126267.0
-        153236.0 -126376.0
-        153236.0 -138824.0
-        153126.0 -138933.0
-        153236.0 -139043.0
-        153236.0 -139198.0
-        153391.0 -139198.0
-        158235.0 -144043.0
-        158235.0 -144198.0
-        158390.0 -144198.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        158500.0 -144308.0
-        158609.0 -144198.0
-        158764.0 -144198.0
-        158764.0 -144043.0
-        158874.0 -143933.0
-        158764.0 -143824.0
-        158764.0 -138669.0
-        158235.0 -138669.0
-        158235.0 -143295.0
-        153765.0 -138824.0
-        153765.0 -126376.0
-        158235.0 -121905.0
-        158235.0 -126531.0
-        158764.0 -126531.0
-        158764.0 -121376.0
-        158874.0 -121267.0
-        158764.0 -121157.0
-        158764.0 -121002.0
-        158609.0 -121002.0
-        158500.0 -120892.0
-        158390.0 -121002.0
-        158235.0 -121002.0
-        158235.0 -121157.0
-        153391.0 -126002.0
-        153236.0 -126002.0
-        153236.0 -126157.0
-        153126.0 -126267.0
-        153236.0 -126376.0
-        153236.0 -138824.0
-        153126.0 -138933.0
-        153236.0 -139043.0
-        153236.0 -139198.0
-        153391.0 -139198.0
-        158235.0 -144043.0
-        158235.0 -144198.0
-        158390.0 -144198.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        43985.4 -192114.0
-        45014.8 -192114.0
-        45014.8 -171085.0
-        43985.4 -171085.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        43985.4 -192114.0
-        45014.8 -192114.0
-        45014.8 -171085.0
-        43985.4 -171085.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        158500.0 -196974.0
-        158609.0 -196865.0
-        158764.0 -196865.0
-        158764.0 -196709.0
-        158874.0 -196600.0
-        158764.0 -196490.0
-        158764.0 -191336.0
-        158235.0 -191336.0
-        158235.0 -195961.0
-        153765.0 -191490.0
-        153765.0 -171709.0
-        158235.0 -167239.0
-        158235.0 -171864.0
-        158764.0 -171864.0
-        158764.0 -165961.0
-        153391.0 -171335.0
-        153236.0 -171335.0
-        153236.0 -171490.0
-        153126.0 -171600.0
-        153236.0 -171709.0
-        153236.0 -191710.0
-        158235.0 -196709.0
-        158235.0 -196865.0
-        158390.0 -196865.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        158500.0 -196974.0
-        158609.0 -196865.0
-        158764.0 -196865.0
-        158764.0 -196709.0
-        158874.0 -196600.0
-        158764.0 -196490.0
-        158764.0 -191336.0
-        158235.0 -191336.0
-        158235.0 -195961.0
-        153765.0 -191490.0
-        153765.0 -171709.0
-        158235.0 -167239.0
-        158235.0 -171864.0
-        158764.0 -171864.0
-        158764.0 -165961.0
-        153391.0 -171335.0
-        153236.0 -171335.0
-        153236.0 -171490.0
-        153126.0 -171600.0
-        153236.0 -171709.0
-        153236.0 -191710.0
-        158235.0 -196709.0
-        158235.0 -196865.0
-        158390.0 -196865.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        129515.0 -208585.0
-        136985.0 -208585.0
-        136985.0 -182115.0
-        129515.0 -182115.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        129515.0 -208585.0
-        136985.0 -208585.0
-        136985.0 -182115.0
-        129515.0 -182115.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        161985.0 -237448.0
-        163014.0 -237448.0
-        163014.0 -223752.0
-        161985.0 -223752.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        161985.0 -237448.0
-        163014.0 -237448.0
-        163014.0 -223752.0
-        161985.0 -223752.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        98235.3 -242572.0
-        103610.0 -237198.0
-        103765.0 -237198.0
-        103765.0 -237043.0
-        103874.0 -236933.0
-        103765.0 -236824.0
-        103765.0 -224376.0
-        103874.0 -224266.0
-        103765.0 -224157.0
-        103765.0 -224002.0
-        103610.0 -224002.0
-        98235.3 -218628.0
-        98235.3 -224531.0
-        98764.5 -224531.0
-        98764.5 -219905.0
-        103236.0 -224376.0
-        103236.0 -236824.0
-        98764.5 -241294.0
-        98764.5 -236669.0
-        98235.3 -236669.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        98235.3 -242572.0
-        103610.0 -237198.0
-        103765.0 -237198.0
-        103765.0 -237043.0
-        103874.0 -236933.0
-        103765.0 -236824.0
-        103765.0 -224376.0
-        103874.0 -224266.0
-        103765.0 -224157.0
-        103765.0 -224002.0
-        103610.0 -224002.0
-        98235.3 -218628.0
-        98235.3 -224531.0
-        98764.5 -224531.0
-        98764.5 -219905.0
-        103236.0 -224376.0
-        103236.0 -236824.0
-        98764.5 -241294.0
-        98764.5 -236669.0
-        98235.3 -236669.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon B.Cu 0
-        138725.0 -244336.0
-        150275.0 -244336.0
-        150275.0 -221865.0
-        138725.0 -221865.0
-      )
-      (clearance_class default)
-    )
-    (keepout
-      (polygon F.Cu 0
-        138725.0 -244336.0
-        150275.0 -244336.0
-        150275.0 -221865.0
-        138725.0 -221865.0
-      )
-      (clearance_class default)
+    (boundary
+      (path pcb 0  137735 -31864.8  165736 -31864.8  165736 -113335  137735 -113335
+            137735 -113864  160735 -113864  160735 -151336  150736 -151336
+            150736 -151865  160735 -151865  160735 -211335  150736 -211335
+            150736 -211865  169735 -211865  169735 -249335  96264.4 -249335
+            96264.4 -211865  138264 -211865  138264 -211335  37264.4 -211335
+            37264.4 -151865  138264 -151865  138264 -151336  87264.4 -151336
+            87264.4 -113864  119265 -113864  119265 -113335  264.583 -113335
+            264.583 -31864.8  78264.5 -31864.8  78264.5 -264.632  137735 -264.632
+            137735 -31864.8)
+    )
+    (keepout "" (polygon signal 0  138725 -221865  138725 -244336  150275 -244336  150275 -221865
+            138725 -221865))
+    (keepout "" (polygon signal 0  98235.3 -224531  98764.5 -224531  98764.5 -219905  103236 -224376
+            103236 -236824  98764.5 -241294  98764.5 -236669  98235.3 -236669
+            98235.3 -242572  103610 -237198  103765 -237198  103765 -237043
+            103874 -236933  103765 -236824  103765 -224376  103874 -224266
+            103765 -224157  103765 -224002  103610 -224002  98235.3 -218628
+            98235.3 -224531))
+    (keepout "" (polygon signal 0  161985 -223752  161985 -237448  163014 -237448  163014 -223752
+            161985 -223752))
+    (keepout "" (polygon signal 0  129515 -182115  129515 -208585  136985 -208585  136985 -182115
+            129515 -182115))
+    (keepout "" (polygon signal 0  153391 -171335  153236 -171335  153236 -171490  153126 -171600
+            153236 -171709  153236 -191710  158235 -196709  158235 -196865
+            158390 -196865  158500 -196974  158609 -196865  158764 -196865
+            158764 -196709  158874 -196600  158764 -196490  158764 -191336
+            158235 -191336  158235 -195961  153765 -191490  153765 -171709
+            158235 -167239  158235 -171864  158764 -171864  158764 -165961
+            153391 -171335))
+    (keepout "" (polygon signal 0  43985.4 -171085  43985.4 -192114  45014.8 -192114  45014.8 -171085
+            43985.4 -171085))
+    (keepout "" (polygon signal 0  158390 -121002  158235 -121002  158235 -121157  153391 -126002
+            153236 -126002  153236 -126157  153126 -126267  153236 -126376
+            153236 -138824  153126 -138933  153236 -139043  153236 -139198
+            153391 -139198  158235 -144043  158235 -144198  158390 -144198
+            158500 -144308  158609 -144198  158764 -144198  158764 -144043
+            158874 -143933  158764 -143824  158764 -138669  158235 -138669
+            158235 -143295  153765 -138824  153765 -126376  158235 -121905
+            158235 -126531  158764 -126531  158764 -121376  158874 -121267
+            158764 -121157  158764 -121002  158609 -121002  158500 -120892
+            158390 -121002))
+    (keepout "" (polygon signal 0  138725 -118865  138725 -141336  150275 -141336  150275 -118865
+            138725 -118865))
+    (keepout "" (polygon signal 0  93985.5 -125752  93985.5 -139448  95014.4 -139448  95014.4 -125752
+            93985.5 -125752))
+    (keepout "" (polygon signal 0  65725.7 -85864.6  65725.7 -108336  77274.4 -108336  77274.4 -85864.6
+            65725.7 -85864.6))
+    (keepout "" (polygon signal 0  138725 -85864.6  138725 -108336  150275 -108336  150275 -85864.6
+            138725 -85864.6))
+    (keepout "" (polygon signal 0  163391 -78517.2  163236 -78517.2  163236 -78672.2  158390 -83517.4
+            158235 -83517.4  158235 -83672.5  158126 -83782  158235 -83891.6
+            158235 -98581.1  158126 -98690.7  158235 -98800.7  158235 -98955.2
+            158390 -98955.2  163236 -103800  163236 -103955  163391 -103955
+            163500 -104065  163610 -103955  163765 -103955  163765 -103800
+            163874 -103691  163765 -103581  163765 -98426.1  163236 -98426.1
+            163236 -103052  158764 -98581.1  158764 -83891.6  163236 -79420.5
+            163236 -84046.6  163765 -84046.6  163765 -78891.3  163874 -78781.8
+            163765 -78672.2  163765 -78517.2  163610 -78517.2  163500 -78407.7
+            163391 -78517.2))
+    (keepout "" (polygon signal 0  6985.62 -83267.3  6985.62 -99205.4  8014.5 -99205.4  8014.5 -83267.3
+            6985.62 -83267.3))
+    (keepout "" (polygon signal 0  81014.7 -67114.8  81014.7 -74585.7  107485 -74585.7  107485 -67114.8
+            81014.7 -67114.8))
+    (keepout "" (polygon signal 0  163391 -41244.6  163236 -41244.6  163236 -41399.6  158390 -46244.8
+            158235 -46244.8  158235 -46399.3  158126 -46509.3  158235 -46618.9
+            158235 -61308.4  158126 -61418  158235 -61527.6  158235 -61682.6
+            158390 -61682.6  163236 -66527.8  163236 -66682.8  163391 -66682.8
+            163500 -66792.3  163610 -66682.8  163765 -66682.8  163765 -66527.8
+            163874 -66418.2  163765 -66308.7  163765 -61153.4  163236 -61153.4
+            163236 -65779.5  158764 -61308.4  158764 -46618.9  163236 -42147.9
+            163236 -46773.9  163765 -46773.9  163765 -41618.7  163874 -41509.1
+            163765 -41399.6  163765 -41244.6  163610 -41244.6  163500 -41135
+            163391 -41244.6))
+    (keepout "" (polygon signal 0  6985.62 -45994.6  6985.62 -61932.7  8014.5 -61932.7  8014.5 -45994.6
+            6985.62 -45994.6))
+    (keepout "" (polygon signal 0  150265 -42364.4  150265 -50835.2  153735 -50835.2  153735 -42364.4
+            150265 -42364.4))
+    (keepout "" (polygon signal 0  31485.4 -35585.5  31485.4 -45614.8  32514.8 -45614.8
+            32514.8 -35585.5  31485.4 -35585.5))
+    (keepout "" (polygon signal 0  101735 -13235.4  101735 -31764.5  114264 -31764.5  114264 -13235.4
+            113735 -13235.4  113735 -31235.4  102265 -31235.4  102265 -13235.4
+            101735 -13235.4))
+    (keepout "" (polygon signal 0  105736 -17735.4  105736 -27264.5  110265 -27264.5  110265 -26735.3
+            106265 -26735.3  106265 -18264.6  110265 -18264.6  110265 -17735.4
+            105736 -17735.4))
+    (via "Via[0-1]_800:400_um")
+    (rule
+      (width 250)
+      (clearance 200.1)
+      (clearance 200.1 (type default_smd))
+      (clearance 50 (type smd_smd))
     )
   )
-  (placement
+50  (placement
     (component U1
-      (place 
-        U1 103000.0 -48000.0 front 90
-        (pin 1 (clearance_class default))
-        (pin 2 (clearance_class default))
-        (pin 3 (clearance_class default))
-        (pin 4 (clearance_class default))
-        (pin 5 (clearance_class default))
-        (pin 6 (clearance_class default))
-        (pin 7 (clearance_class default))
-        (pin 8 (clearance_class default))
-        (pin 9 (clearance_class default))
-        (pin 10 (clearance_class default))
-        (pin 11 (clearance_class default))
-        (pin 12 (clearance_class default))
-        (pin 13 (clearance_class default))
-        (pin 14 (clearance_class default))
-        (pin 15 (clearance_class default))
-        (pin 16 (clearance_class default))
-        (pin 17 (clearance_class default))
-        (pin 18 (clearance_class default))
-        (pin 19 (clearance_class default))
-        (pin 20 (clearance_class default))
-        (pin 21 (clearance_class default))
-        (pin 22 (clearance_class default))
-        (pin 23 (clearance_class default))
-        (pin 24 (clearance_class default))
-        (pin 25 (clearance_class default))
-        (pin 26 (clearance_class default))
-        (pin 27 (clearance_class default))
-        (pin 28 (clearance_class default))
-        (pin 29 (clearance_class default))
-        (pin 30 (clearance_class default))
-      )
+      (place U1 103000 -48000 front 90 (PN "ESP12F-Devkit-V3"))
     )
     (component J1
-      (place 
-        J1 100000.0 -87000.0 front 270
-        (pin 1 (clearance_class default))
-        (pin 2 (clearance_class default))
-        (pin 3 (clearance_class default))
-        (pin 4 (clearance_class default))
-        (pin 5 (clearance_class default))
-        (pin 6 (clearance_class default))
-        (pin 7 (clearance_class default))
-        (pin 8 (clearance_class default))
-        (pin 9 (clearance_class default))
-        (pin 10 (clearance_class default))
-      )
+      (place J1 100000 -87000 front 270 (PN "mpu-9250"))
     )
   )
   (library
     (image U1
-      (side front)
-      (pin "Round[A]Pad_1524_um" 1 -12065.0 19050.0)
-      (pin "Round[A]Pad_1524_um" 2 -12065.0 16510.0)
-      (pin "Round[A]Pad_1524_um" 3 -12065.0 13970.0)
-      (pin "Round[A]Pad_1524_um" 4 -12065.0 11430.0)
-      (pin "Round[A]Pad_1524_um" 5 -12065.0 8890.0)
-      (pin "Round[A]Pad_1524_um" 6 -12065.0 6350.0)
-      (pin "Round[A]Pad_1524_um" 7 -12065.0 3810.0)
-      (pin "Round[A]Pad_1524_um" 8 -12065.0 1270.0)
-      (pin "Round[A]Pad_1524_um" 9 -12065.0 -1270.0)
-      (pin "Round[A]Pad_1524_um" 10 -12065.0 -3810.0)
-      (pin "Round[A]Pad_1524_um" 11 -12065.0 -6350.0)
-      (pin "Round[A]Pad_1524_um" 12 -12065.0 -8890.0)
-      (pin "Round[A]Pad_1524_um" 13 -12065.0 -11430.0)
-      (pin "Round[A]Pad_1524_um" 14 -12065.0 -13970.0)
-      (pin "Round[A]Pad_1524_um" 15 -12065.0 -16510.0)
-      (pin "Round[A]Pad_1524_um" 16 11430.0 -16510.0)
-      (pin "Round[A]Pad_1524_um" 17 11430.0 -13970.0)
-      (pin "Round[A]Pad_1524_um" 18 11430.0 -11430.0)
-      (pin "Round[A]Pad_1524_um" 19 11430.0 -8890.0)
-      (pin "Round[A]Pad_1524_um" 20 11430.0 -6350.0)
-      (pin "Round[A]Pad_1524_um" 21 11430.0 -3810.0)
-      (pin "Round[A]Pad_1524_um" 22 11430.0 -1270.0)
-      (pin "Round[A]Pad_1524_um" 23 11430.0 1270.0)
-      (pin "Round[A]Pad_1524_um" 24 11430.0 3810.0)
-      (pin "Round[A]Pad_1524_um" 25 11430.0 6350.0)
-      (pin "Round[A]Pad_1524_um" 26 11430.0 8890.0)
-      (pin "Round[A]Pad_1524_um" 27 11430.0 11430.0)
-      (pin "Round[A]Pad_1524_um" 28 11430.0 13970.0)
-      (pin "Round[A]Pad_1524_um" 29 11430.0 16510.0)
-      (pin "Round[A]Pad_1524_um" 30 11430.0 19050.0)
-      (outline
-        (polygon signal 0
-          3778.9 -22935.0
-          11461.1 -22935.0
-          11505.0 -22891.1
-          11505.0 -22828.9
-          11461.1 -22785.0
-          3778.9 -22785.0
-          3735.0 -22828.9
-          3735.0 -22891.1
-        )
-      )
-      (outline
-        (polygon signal 0
-          -5531.1 18195.0
-          5531.1 18195.0
-          5575.0 18238.9
-          5575.0 18301.1
-          5531.1 18345.0
-          -5531.1 18345.0
-          -5575.0 18301.1
-          -5575.0 18238.9
-        )
-      )
-      (outline
-        (polygon signal 0
-          5468.9 18195.0
-          5531.1 18195.0
-          5575.0 18238.9
-          5575.0 25431.1
-          5531.1 25475.0
-          5468.9 25475.0
-          5425.0 25431.1
-          5425.0 18238.9
-        )
-      )
-      (outline
-        (polygon signal 0
-          -5531.1 18195.0
-          -5468.9 18195.0
-          -5425.0 18238.9
-          -5425.0 25431.1
-          -5468.9 25475.0
-          -5531.1 25475.0
-          -5575.0 25431.1
-          -5575.0 18238.9
-        )
-      )
-      (outline
-        (polygon signal 0
-          -3831.1 -23935.0
-          -3768.9 -23935.0
-          -3725.0 -23891.1
-          -3725.0 -18098.9
-          -3768.9 -18055.0
-          -3831.1 -18055.0
-          -3875.0 -18098.9
-          -3875.0 -23891.1
-        )
-      )
-      (outline
-        (polygon signal 0
-          -3831.1 -18205.0
-          3831.1 -18205.0
-          3875.0 -18161.1
-          3875.0 -18098.9
-          3831.1 -18055.0
-          -3831.1 -18055.0
-          -3875.0 -18098.9
-          -3875.0 -18161.1
-        )
-      )
-      (outline
-        (polygon signal 0
-          3768.9 -23935.0
-          3831.1 -23935.0
-          3875.0 -23891.1
-          3875.0 -18098.9
-          3831.1 -18055.0
-          3768.9 -18055.0
-          3725.0 -18098.9
-          3725.0 -23891.1
-        )
-      )
-      (outline
-        (polygon signal 0
-          -3831.1 -23935.0
-          3831.1 -23935.0
-          3875.0 -23891.1
-          3875.0 -23828.9
-          3831.1 -23785.0
-          -3831.1 -23785.0
-          -3875.0 -23828.9
-          -3875.0 -23891.1
-        )
-      )
-      (outline
-        (polygon signal 0
-          12668.9 -21665.0
-          12731.1 -21665.0
-          12775.0 -21621.1
-          12775.0 24161.1
-          12731.1 24205.0
-          12668.9 24205.0
-          12625.0 24161.1
-          12625.0 -21621.1
-        )
-      )
-      (outline
-        (polygon signal 0
-          -13366.1 -21665.0
-          -13303.9 -21665.0
-          -13260.0 -21621.1
-          -13260.0 24161.1
-          -13303.9 24205.0
-          -13366.1 24205.0
-          -13410.0 24161.1
-          -13410.0 -21621.1
-        )
-      )
-      (outline
-        (polygon signal 0
-          -12096.1 -22935.0
-          -3778.9 -22935.0
-          -3735.0 -22891.1
-          -3735.0 -22828.9
-          -3778.9 -22785.0
-          -12096.1 -22785.0
-          -12140.0 -22828.9
-          -12140.0 -22891.1
-        )
-      )
-      (outline
-        (polygon signal 0
-          -12731.1 25325.0
-          11461.1 25325.0
-          11505.0 25368.9
-          11505.0 25431.1
-          11461.1 25475.0
-          -12731.1 25475.0
-          -12775.0 25431.1
-          -12775.0 25368.9
-        )
-      )
-      (outline
-        (polygon signal 0
-          10291.530499999999 -22186.0
-          10302.527455919397 -22186.0
-          10843.97169166293 -22062.463585293
-          11325.947013782543 -21784.152986217458
-          11333.023404255318 -21777.07659574468
-          11706.60450939226 -21374.569111791534
-          11948.7281602337 -20871.76907233432
-          12031.1 -20325.30726817043
-          12031.1 -20314.69273182957
-          11948.7281602337 -19768.23092766568
-          11706.60450939226 -19265.430888208466
-          11333.023404255318 -18862.92340425532
-          11325.947013782543 -18855.847013782542
-          10843.97169166293 -18577.536414707
-          10302.527455919397 -18454.0
-          10291.530499999999 -18454.0
-          9743.298242366403 -18495.073778432932
-          9224.211525157132 -18698.833284525917
-          8793.049528301886 -19042.650471698114
-          8785.39658848614 -19050.303411513858
-          8473.459064925266 -19507.763513208072
-          8309.0 -20040.952724968312
-          8309.0 -20599.047275031688
-          8473.459064925266 -21132.236486791928
-          8785.39658848614 -21589.696588486142
-          8793.049528301886 -21597.349528301886
-          9224.211525157132 -21941.166715474083
-          9743.298242366403 -22144.926221567068
-        )
-      )
-      (outline
-        (polygon signal 0
-          -10663.469500000001 -22186.0
-          -10652.472544080603 -22186.0
-          -10111.02830833707 -22062.463585293
-          -9629.052986217457 -21784.152986217458
-          -9621.976595744682 -21777.07659574468
-          -9248.39549060774 -21374.569111791534
-          -9006.2718397663 -20871.76907233432
-          -8923.9 -20325.30726817043
-          -8923.9 -20314.69273182957
-          -9006.2718397663 -19768.23092766568
-          -9248.39549060774 -19265.430888208466
-          -9621.976595744682 -18862.92340425532
-          -9629.052986217457 -18855.847013782542
-          -10111.02830833707 -18577.536414707
-          -10652.472544080603 -18454.0
-          -10663.469500000001 -18454.0
-          -11211.701757633597 -18495.073778432932
-          -11730.788474842868 -18698.833284525917
-          -12161.950471698114 -19042.650471698114
-          -12169.60341151386 -19050.303411513858
-          -12481.540935074734 -19507.763513208072
-          -12646.0 -20040.952724968312
-          -12646.0 -20599.047275031688
-          -12481.540935074734 -21132.236486791928
-          -12169.60341151386 -21589.696588486142
-          -12161.950471698114 -21597.349528301886
-          -11730.788474842868 -21941.166715474083
-          -11211.701757633597 -22144.926221567068
-        )
-      )
-      (outline
-        (polygon signal 0
-          -10663.469500000001 20994.0
-          -10652.472544080603 20994.0
-          -10111.02830833707 21117.536414707
-          -9629.052986217457 21395.847013782542
-          -9621.976595744682 21402.92340425532
-          -9248.39549060774 21805.430888208466
-          -9006.2718397663 22308.23092766568
-          -8923.9 22854.69273182957
-          -8923.9 22865.30726817043
-          -9006.2718397663 23411.76907233432
-          -9248.39549060774 23914.569111791534
-          -9621.976595744682 24317.07659574468
-          -9629.052986217457 24324.152986217458
-          -10111.02830833707 24602.463585293
-          -10652.472544080603 24726.0
-          -10663.469500000001 24726.0
-          -11211.701757633597 24684.926221567068
-          -11730.788474842868 24481.166715474083
-          -12161.950471698114 24137.349528301886
-          -12169.60341151386 24129.696588486142
-          -12481.540935074734 23672.236486791928
-          -12646.0 23139.047275031688
-          -12646.0 22580.952724968312
-          -12481.540935074734 22047.763513208072
-          -12169.60341151386 21590.303411513858
-          -12161.950471698114 21582.650471698114
-          -11730.788474842868 21238.833284525917
-          -11211.701757633597 21035.073778432932
-        )
-      )
-      (outline
-        (polygon signal 0
-          10291.530499999999 20994.0
-          10302.527455919397 20994.0
-          10843.97169166293 21117.536414707
-          11325.947013782543 21395.847013782542
-          11333.023404255318 21402.92340425532
-          11706.60450939226 21805.430888208466
-          11948.7281602337 22308.23092766568
-          12031.1 22854.69273182957
-          12031.1 22865.30726817043
-          11948.7281602337 23411.76907233432
-          11706.60450939226 23914.569111791534
-          11333.023404255318 24317.07659574468
-          11325.947013782543 24324.152986217458
-          10843.97169166293 24602.463585293
-          10302.527455919397 24726.0
-          10291.530499999999 24726.0
-          9743.298242366403 24684.926221567068
-          9224.211525157132 24481.166715474083
-          8793.049528301886 24137.349528301886
-          8785.39658848614 24129.696588486142
-          8473.459064925266 23672.236486791928
-          8309.0 23139.047275031688
-          8309.0 22580.952724968312
-          8473.459064925266 22047.763513208072
-          8785.39658848614 21590.303411513858
-          8793.049528301886 21582.650471698114
-          9224.211525157132 21238.833284525917
-          9743.298242366403 21035.073778432932
-        )
-      )
+      (outline (path signal 150  11430 -22860  3810 -22860))
+      (outline (path signal 150  5500 18270  -5500 18270))
+      (outline (path signal 150  5500 25400  5500 18270))
+      (outline (path signal 150  -5500 18270  -5500 25400))
+      (outline (path signal 150  -3800 -23860  -3800 -18130))
+      (outline (path signal 150  -3800 -18130  3800 -18130))
+      (outline (path signal 150  3800 -18130  3800 -23860))
+      (outline (path signal 150  3800 -23860  -3800 -23860))
+      (outline (path signal 150  12700 24130  12700 -21590))
+      (outline (path signal 150  -13335 24130  -13335 -21590))
+      (outline (path signal 150  -3810 -22860  -12065 -22860))
+      (outline (path signal 150  11430 25400  -12700 25400))
+      (outline (path signal 150  11956.1 -20320  11876.3 -20849.4  11644 -21331.8  11279.8 -21724.2
+            10816.2 -21991.9  10294.2 -22111  9760.34 -22071  9261.97 -21875.4
+            8843.4 -21541.6  8541.81 -21099.3  8384.01 -20587.7  8384.01 -20052.3
+            8541.81 -19540.7  8843.4 -19098.4  9261.97 -18764.6  9760.34 -18569
+            10294.2 -18529  10816.2 -18648.1  11279.8 -18915.8  11644 -19308.2
+            11876.3 -19790.6  11956.1 -20320))
+      (outline (path signal 150  -8998.95 -20320  -9078.74 -20849.4  -9311.03 -21331.8
+            -9675.18 -21724.2  -10138.8 -21991.9  -10660.8 -22111  -11194.7 -22071
+            -11693 -21875.4  -12111.6 -21541.6  -12413.2 -21099.3  -12571 -20587.7
+            -12571 -20052.3  -12413.2 -19540.7  -12111.6 -19098.4  -11693 -18764.6
+            -11194.7 -18569  -10660.8 -18529  -10138.8 -18648.1  -9675.18 -18915.8
+            -9311.03 -19308.2  -9078.74 -19790.6  -8998.95 -20320))
+      (outline (path signal 150  -8998.95 22860  -9078.74 22330.6  -9311.03 21848.2  -9675.18 21455.8
+            -10138.8 21188.1  -10660.8 21069  -11194.7 21109  -11693 21304.6
+            -12111.6 21638.4  -12413.2 22080.7  -12571 22592.3  -12571 23127.7
+            -12413.2 23639.3  -12111.6 24081.6  -11693 24415.4  -11194.7 24611
+            -10660.8 24651  -10138.8 24531.9  -9675.18 24264.2  -9311.03 23871.8
+            -9078.74 23389.4  -8998.95 22860))
+      (outline (path signal 150  11956.1 22860  11876.3 22330.6  11644 21848.2  11279.8 21455.8
+            10816.2 21188.1  10294.2 21069  9760.34 21109  9261.97 21304.6
+            8843.4 21638.4  8541.81 22080.7  8384.01 22592.3  8384.01 23127.7
+            8541.81 23639.3  8843.4 24081.6  9261.97 24415.4  9760.34 24611
+            10294.2 24651  10816.2 24531.9  11279.8 24264.2  11644 23871.8
+            11876.3 23389.4  11956.1 22860))
+      (pin Round[A]Pad_1524_um 1 -12065 19050)
+      (pin Round[A]Pad_1524_um 2 -12065 16510)
+      (pin Round[A]Pad_1524_um 3 -12065 13970)
+      (pin Round[A]Pad_1524_um 4 -12065 11430)
+      (pin Round[A]Pad_1524_um 5 -12065 8890)
+      (pin Round[A]Pad_1524_um 6 -12065 6350)
+      (pin Round[A]Pad_1524_um 7 -12065 3810)
+      (pin Round[A]Pad_1524_um 8 -12065 1270)
+      (pin Round[A]Pad_1524_um 9 -12065 -1270)
+      (pin Round[A]Pad_1524_um 10 -12065 -3810)
+      (pin Round[A]Pad_1524_um 11 -12065 -6350)
+      (pin Round[A]Pad_1524_um 12 -12065 -8890)
+      (pin Round[A]Pad_1524_um 13 -12065 -11430)
+      (pin Round[A]Pad_1524_um 14 -12065 -13970)
+      (pin Round[A]Pad_1524_um 15 -12065 -16510)
+      (pin Round[A]Pad_1524_um 16 11430 -16510)
+      (pin Round[A]Pad_1524_um 17 11430 -13970)
+      (pin Round[A]Pad_1524_um 18 11430 -11430)
+      (pin Round[A]Pad_1524_um 19 11430 -8890)
+      (pin Round[A]Pad_1524_um 20 11430 -6350)
+      (pin Round[A]Pad_1524_um 21 11430 -3810)
+      (pin Round[A]Pad_1524_um 22 11430 -1270)
+      (pin Round[A]Pad_1524_um 23 11430 1270)
+      (pin Round[A]Pad_1524_um 24 11430 3810)
+      (pin Round[A]Pad_1524_um 25 11430 6350)
+      (pin Round[A]Pad_1524_um 26 11430 8890)
+      (pin Round[A]Pad_1524_um 27 11430 11430)
+      (pin Round[A]Pad_1524_um 28 11430 13970)
+      (pin Round[A]Pad_1524_um 29 11430 16510)
+      (pin Round[A]Pad_1524_um 30 11430 19050)
     )
     (image J1
-      (side front)
-      (pin "Round[A]Pad_1524_um" 1 -6350.0 10160.0)
-      (pin "Round[A]Pad_1524_um" 2 -6350.0 7620.0)
-      (pin "Round[A]Pad_1524_um" 3 -6350.0 5080.0)
-      (pin "Round[A]Pad_1524_um" 4 -6350.0 2540.0)
-      (pin "Round[A]Pad_1524_um" 5 -6350.0 0.0)
-      (pin "Round[A]Pad_1524_um" 6 -6350.0 -2540.0)
-      (pin "Round[A]Pad_1524_um" 7 -6350.0 -5080.0)
-      (pin "Round[A]Pad_1524_um" 8 -6350.0 -7620.0)
-      (pin "Round[A]Pad_1524_um" 9 -6350.0 -10160.0)
-      (pin "Round[A]Pad_1524_um" 10 -6350.0 -12700.0)
-      (outline
-        (polygon signal 0
-          -7644.9 11370.0
-          7564.9 11370.0
-          7600.0 11405.1
-          7600.0 11454.9
-          7564.9 11490.0
-          -7644.9 11490.0
-          -7680.0 11454.9
-          -7680.0 11405.1
-        )
-      )
-      (outline
-        (polygon signal 0
-          7595.1 -13630.0
-          7644.9 -13630.0
-          7680.0 -13594.9
-          7680.0 11454.9
-          7644.9 11490.0
-          7595.1 11490.0
-          7560.0 11454.9
-          7560.0 -13594.9
-        )
-      )
-      (outline
-        (polygon signal 0
-          -7644.9 -13630.0
-          7644.9 -13630.0
-          7680.0 -13594.9
-          7680.0 -13545.1
-          7644.9 -13510.0
-          -7644.9 -13510.0
-          -7680.0 -13545.1
-          -7680.0 -13594.9
-        )
-      )
-      (outline
-        (polygon signal 0
-          -7644.9 -13630.0
-          -7595.1 -13630.0
-          -7560.0 -13594.9
-          -7560.0 11454.9
-          -7595.1 11490.0
-          -7644.9 11490.0
-          -7680.0 11454.9
-          -7680.0 -13594.9
-        )
-      )
-    )
-    (padstack "Round[A]Pad_1524_um"
-      (shape
-        (circle F.Cu 1524.0 0.0 0.0)
-      )
-      (shape
-        (circle B.Cu 1524.0 0.0 0.0)
-      )
+      (outline (path signal 120  -7620 11430  7540 11430))
+      (outline (path signal 120  7620 11430  7620 -13570))
+      (outline (path signal 120  7620 -13570  -7620 -13570))
+      (outline (path signal 120  -7620 -13570  -7620 11430))
+      (pin Round[A]Pad_1524_um 1 -6350 10160)
+      (pin Round[A]Pad_1524_um 2 -6350 7620)
+      (pin Round[A]Pad_1524_um 3 -6350 5080)
+      (pin Round[A]Pad_1524_um 4 -6350 2540)
+      (pin Round[A]Pad_1524_um 5 -6350 0)
+      (pin Round[A]Pad_1524_um 6 -6350 -2540)
+      (pin Round[A]Pad_1524_um 7 -6350 -5080)
+      (pin Round[A]Pad_1524_um 8 -6350 -7620)
+      (pin Round[A]Pad_1524_um 9 -6350 -10160)
+      (pin Round[A]Pad_1524_um 10 -6350 -12700)
+    )
+    (padstack Round[A]Pad_1524_um
+      (shape (circle F.Cu 1524))
+      (shape (circle B.Cu 1524))
       (attach off)
     )
     (padstack "Via[0-1]_800:400_um"
-      (shape
-        (circle F.Cu 800.0 0.0 0.0)
-      )
-      (shape
-        (circle B.Cu 800.0 0.0 0.0)
-      )
+      (shape (circle F.Cu 800))
+      (shape (circle B.Cu 800))
       (attach off)
     )
   )
   (network
-    (net 3v3 1
-      (pins
-        J1-1
-        U1-3
-      )
-    )
-    (net VIN 1
-      (pins
-        U1-1
-      )
-    )
-    (via 
-      "Via[0-1]_800:400_um" "Via[0-1]_800:400_um" default
-    )
-    (via 
-      "Via[0-1]_800:400_um-kicad_default" "Via[0-1]_800:400_um" "kicad_default"
+    (net 3v3
+      (pins U1-3 J1-1)
     )
-    (via_rule
-      default "Via[0-1]_800:400_um"
+    (net VIN
+      (pins U1-1)
     )
-    (via_rule
-      "kicad_default" "Via[0-1]_800:400_um-kicad_default"
-    )
-    (via_rule
-      default "Via[0-1]_800:400_um"
-    )
-    (class default
-      3v3 VIN
-      (clearance_class default)
-      (via_rule default)
-      (rule
-        (width 1000.0)
+    (class kicad_default ""
+      (circuit
+        (use_via Via[0-1]_800:400_um)
       )
-      (circuit 
-        (use_layer F.Cu B.Cu)
+      (rule
+        (width 250)
+        (clearance 200.1)
       )
     )
-    (class "kicad_default"
-      (clearance_class "kicad_default")
-      (via_rule kicad_default)
-      (rule
-        (width 250.0)
+    (class default 3v3 GND VIN
+      (circuit
+        (use_via Via[0-1]_800:400_um)
       )
-      (circuit 
-        (use_layer F.Cu B.Cu)
+      (rule
+        (width 1000)
+        (clearance 200.1)
       )
     )
   )
   (wiring
-    (wire
-      (polyline_path B.Cu 1000.0
-        110160.0 -80650.0 110159.9 -80650.0 
-        110160.0 -80650.0 110160.0 -68737.2 
-        110160.0 -68737.2 104063.6 -62640.8 
-        104063.6 -62640.8 89030.0 -62640.8 
-        89030.0 -60065.0 89029.9 -60064.9 
-        89030.0 -60065.0 89030.1 -60065.0 
-      )
-      (net 3v3 1)
-      (clearance_class default)
-    )
   )
-)
\ No newline at end of file
+)
diff --git a/kicad_board.rules b/kicad_board.rules
deleted file mode 100644
index 35b82c18c777a264f610496af453db96aba066ef..0000000000000000000000000000000000000000
--- a/kicad_board.rules
+++ /dev/null
@@ -1,76 +0,0 @@
-
-(rules PCB kicad_board
-  (snap_angle 
-    fortyfive_degree
-  )
-  (autoroute_settings
-    (fanout off)
-    (autoroute on)
-    (postroute on)
-    (vias on)
-    (via_costs 50)
-    (plane_via_costs 5)
-    (start_ripup_costs 100)
-    (start_pass_no 4)
-    (layer_rule F.Cu
-      (active on)
-      (preferred_direction vertical)
-      (preferred_direction_trace_costs 1.0)
-      (against_preferred_direction_trace_costs 2.5)
-    )
-    (layer_rule B.Cu
-      (active on)
-      (preferred_direction horizontal)
-      (preferred_direction_trace_costs 1.0)
-      (against_preferred_direction_trace_costs 1.7)
-    )
-  )
-  (rule
-    (width 1000.0)
-    (clear 200.2)
-    (clear 125.0 (type smd_to_turn_gap))
-    (clear 50.0 (type smd_smd))
-  )
-  (padstack "Via[0-1]_800:400_um"
-    (shape
-      (circle F.Cu 800.0 0.0 0.0)
-    )
-    (shape
-      (circle B.Cu 800.0 0.0 0.0)
-    )
-    (attach off)
-  )
-  (via 
-    "Via[0-1]_800:400_um" "Via[0-1]_800:400_um" default
-  )
-  (via 
-    "Via[0-1]_800:400_um-kicad_default" "Via[0-1]_800:400_um" default
-  )
-  (via_rule
-    "kicad_default" "Via[0-1]_800:400_um-kicad_default"
-  )
-  (via_rule
-    default "Via[0-1]_800:400_um"
-  )
-  (class default
-    3v3 VIN
-    (clearance_class default)
-    (via_rule default)
-    (rule
-      (width 1000.0)
-    )
-    (circuit 
-      (use_layer F.Cu B.Cu)
-    )
-  )
-  (class "kicad_default"
-    (clearance_class default)
-    (via_rule kicad_default)
-    (rule
-      (width 250.0)
-    )
-    (circuit 
-      (use_layer F.Cu B.Cu)
-    )
-  )
-)
\ No newline at end of file
diff --git a/kicad_board_routed.dsn b/kicad_board_routed.dsn
new file mode 100644
index 0000000000000000000000000000000000000000..654197b912caa41efea2c3b3e4814c1a5f1b6458
--- /dev/null
+++ b/kicad_board_routed.dsn
@@ -0,0 +1,1234 @@
+
+(PCB "kicad_board"
+  (parser
+    (string_quote ")
+    (space_in_quoted_tokens on)
+    (host_cad "KiCad's Pcbnew")
+    (host_version "5.1.3-ffb9f22~84~ubuntu18.04.1")
+    (generated_by_freeroute)
+  )
+  (resolution um 10)
+  (structure
+    (boundary
+      (rect pcb 164.6 -249435.0 169835.0 -164.6)
+    )
+    (boundary
+      (polygon signal 0
+        96264.4 -249335.0
+        169735.0 -249335.0
+        169735.0 -211865.0
+        150736.0 -211865.0
+        150736.0 -211335.0
+        160735.0 -211335.0
+        160735.0 -151865.0
+        150736.0 -151865.0
+        150736.0 -151336.0
+        160735.0 -151336.0
+        160735.0 -113864.0
+        137735.0 -113864.0
+        137735.0 -113335.0
+        165736.0 -113335.0
+        165736.0 -31864.8
+        137735.0 -31864.8
+        137735.0 -264.6
+        78264.5 -264.6
+        78264.5 -31864.8
+        264.6 -31864.8
+        264.6 -113335.0
+        119265.0 -113335.0
+        119265.0 -113864.0
+        87264.4 -113864.0
+        87264.4 -151336.0
+        138264.0 -151336.0
+        138264.0 -151865.0
+        37264.4 -151865.0
+        37264.4 -211335.0
+        138264.0 -211335.0
+        138264.0 -211865.0
+        96264.4 -211865.0
+      )
+    )
+    (snap_angle 
+      fortyfive_degree
+    )
+    (via "Via[0-1]_800:400_um")
+    (control
+      (via_at_smd off)
+    )
+    (rule
+      (width 1000.0)
+      (clear 200.2)
+      (clear 125.0 (type smd_to_turn_gap))
+      (clear 50.0 (type smd_smd))
+    )
+    (layer F.Cu
+      (type signal)
+    )
+    (layer B.Cu
+      (type signal)
+    )
+    (autoroute_settings
+      (fanout off)
+      (autoroute on)
+      (postroute on)
+      (vias on)
+      (via_costs 50)
+      (plane_via_costs 5)
+      (start_ripup_costs 100)
+      (start_pass_no 7)
+      (layer_rule F.Cu
+        (active on)
+        (preferred_direction vertical)
+        (preferred_direction_trace_costs 1.0)
+        (against_preferred_direction_trace_costs 2.5)
+      )
+      (layer_rule B.Cu
+        (active on)
+        (preferred_direction horizontal)
+        (preferred_direction_trace_costs 1.0)
+        (against_preferred_direction_trace_costs 1.7)
+      )
+    )
+    (keepout
+      (polygon B.Cu 0
+        105736.0 -27264.5
+        110265.0 -27264.5
+        110265.0 -26735.3
+        106265.0 -26735.3
+        106265.0 -18264.6
+        110265.0 -18264.6
+        110265.0 -17735.4
+        105736.0 -17735.4
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        105736.0 -27264.5
+        110265.0 -27264.5
+        110265.0 -26735.3
+        106265.0 -26735.3
+        106265.0 -18264.6
+        110265.0 -18264.6
+        110265.0 -17735.4
+        105736.0 -17735.4
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        101735.0 -31764.5
+        114264.0 -31764.5
+        114264.0 -13235.4
+        113735.0 -13235.4
+        113735.0 -31235.4
+        102265.0 -31235.4
+        102265.0 -13235.4
+        101735.0 -13235.4
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        101735.0 -31764.5
+        114264.0 -31764.5
+        114264.0 -13235.4
+        113735.0 -13235.4
+        113735.0 -31235.4
+        102265.0 -31235.4
+        102265.0 -13235.4
+        101735.0 -13235.4
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        31485.4 -45614.8
+        32514.8 -45614.8
+        32514.8 -35585.5
+        31485.4 -35585.5
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        31485.4 -45614.8
+        32514.8 -45614.8
+        32514.8 -35585.5
+        31485.4 -35585.5
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        150265.0 -50835.2
+        153735.0 -50835.2
+        153735.0 -42364.4
+        150265.0 -42364.4
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        150265.0 -50835.2
+        153735.0 -50835.2
+        153735.0 -42364.4
+        150265.0 -42364.4
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        6985.6 -61932.7
+        8014.5 -61932.7
+        8014.5 -45994.6
+        6985.6 -45994.6
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        6985.6 -61932.7
+        8014.5 -61932.7
+        8014.5 -45994.6
+        6985.6 -45994.6
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        163500.0 -66792.3
+        163610.0 -66682.8
+        163765.0 -66682.8
+        163765.0 -66527.8
+        163874.0 -66418.2
+        163765.0 -66308.7
+        163765.0 -61153.4
+        163236.0 -61153.4
+        163236.0 -65779.5
+        158764.0 -61308.4
+        158764.0 -46618.9
+        163236.0 -42147.9
+        163236.0 -46773.9
+        163765.0 -46773.9
+        163765.0 -41618.7
+        163874.0 -41509.1
+        163765.0 -41399.6
+        163765.0 -41244.6
+        163610.0 -41244.6
+        163500.0 -41135.0
+        163391.0 -41244.6
+        163236.0 -41244.6
+        163236.0 -41399.6
+        158390.0 -46244.8
+        158235.0 -46244.8
+        158235.0 -46399.3
+        158126.0 -46509.3
+        158235.0 -46618.9
+        158235.0 -61308.4
+        158126.0 -61418.0
+        158235.0 -61527.6
+        158235.0 -61682.6
+        158390.0 -61682.6
+        163236.0 -66527.8
+        163236.0 -66682.8
+        163391.0 -66682.8
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        163500.0 -66792.3
+        163610.0 -66682.8
+        163765.0 -66682.8
+        163765.0 -66527.8
+        163874.0 -66418.2
+        163765.0 -66308.7
+        163765.0 -61153.4
+        163236.0 -61153.4
+        163236.0 -65779.5
+        158764.0 -61308.4
+        158764.0 -46618.9
+        163236.0 -42147.9
+        163236.0 -46773.9
+        163765.0 -46773.9
+        163765.0 -41618.7
+        163874.0 -41509.1
+        163765.0 -41399.6
+        163765.0 -41244.6
+        163610.0 -41244.6
+        163500.0 -41135.0
+        163391.0 -41244.6
+        163236.0 -41244.6
+        163236.0 -41399.6
+        158390.0 -46244.8
+        158235.0 -46244.8
+        158235.0 -46399.3
+        158126.0 -46509.3
+        158235.0 -46618.9
+        158235.0 -61308.4
+        158126.0 -61418.0
+        158235.0 -61527.6
+        158235.0 -61682.6
+        158390.0 -61682.6
+        163236.0 -66527.8
+        163236.0 -66682.8
+        163391.0 -66682.8
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        81014.7 -74585.7
+        107485.0 -74585.7
+        107485.0 -67114.8
+        81014.7 -67114.8
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        81014.7 -74585.7
+        107485.0 -74585.7
+        107485.0 -67114.8
+        81014.7 -67114.8
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        6985.6 -99205.4
+        8014.5 -99205.4
+        8014.5 -83267.3
+        6985.6 -83267.3
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        6985.6 -99205.4
+        8014.5 -99205.4
+        8014.5 -83267.3
+        6985.6 -83267.3
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        163500.0 -104065.0
+        163610.0 -103955.0
+        163765.0 -103955.0
+        163765.0 -103800.0
+        163874.0 -103691.0
+        163765.0 -103581.0
+        163765.0 -98426.1
+        163236.0 -98426.1
+        163236.0 -103052.0
+        158764.0 -98581.1
+        158764.0 -83891.6
+        163236.0 -79420.5
+        163236.0 -84046.6
+        163765.0 -84046.6
+        163765.0 -78891.3
+        163874.0 -78781.8
+        163765.0 -78672.2
+        163765.0 -78517.2
+        163610.0 -78517.2
+        163500.0 -78407.7
+        163391.0 -78517.2
+        163236.0 -78517.2
+        163236.0 -78672.2
+        158390.0 -83517.4
+        158235.0 -83517.4
+        158235.0 -83672.5
+        158126.0 -83782.0
+        158235.0 -83891.6
+        158235.0 -98581.1
+        158126.0 -98690.7
+        158235.0 -98800.7
+        158235.0 -98955.2
+        158390.0 -98955.2
+        163236.0 -103800.0
+        163236.0 -103955.0
+        163391.0 -103955.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        163500.0 -104065.0
+        163610.0 -103955.0
+        163765.0 -103955.0
+        163765.0 -103800.0
+        163874.0 -103691.0
+        163765.0 -103581.0
+        163765.0 -98426.1
+        163236.0 -98426.1
+        163236.0 -103052.0
+        158764.0 -98581.1
+        158764.0 -83891.6
+        163236.0 -79420.5
+        163236.0 -84046.6
+        163765.0 -84046.6
+        163765.0 -78891.3
+        163874.0 -78781.8
+        163765.0 -78672.2
+        163765.0 -78517.2
+        163610.0 -78517.2
+        163500.0 -78407.7
+        163391.0 -78517.2
+        163236.0 -78517.2
+        163236.0 -78672.2
+        158390.0 -83517.4
+        158235.0 -83517.4
+        158235.0 -83672.5
+        158126.0 -83782.0
+        158235.0 -83891.6
+        158235.0 -98581.1
+        158126.0 -98690.7
+        158235.0 -98800.7
+        158235.0 -98955.2
+        158390.0 -98955.2
+        163236.0 -103800.0
+        163236.0 -103955.0
+        163391.0 -103955.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        138725.0 -108336.0
+        150275.0 -108336.0
+        150275.0 -85864.6
+        138725.0 -85864.6
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        138725.0 -108336.0
+        150275.0 -108336.0
+        150275.0 -85864.6
+        138725.0 -85864.6
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        65725.7 -108336.0
+        77274.4 -108336.0
+        77274.4 -85864.6
+        65725.7 -85864.6
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        65725.7 -108336.0
+        77274.4 -108336.0
+        77274.4 -85864.6
+        65725.7 -85864.6
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        93985.5 -139448.0
+        95014.4 -139448.0
+        95014.4 -125752.0
+        93985.5 -125752.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        93985.5 -139448.0
+        95014.4 -139448.0
+        95014.4 -125752.0
+        93985.5 -125752.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        138725.0 -141336.0
+        150275.0 -141336.0
+        150275.0 -118865.0
+        138725.0 -118865.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        138725.0 -141336.0
+        150275.0 -141336.0
+        150275.0 -118865.0
+        138725.0 -118865.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        158500.0 -144308.0
+        158609.0 -144198.0
+        158764.0 -144198.0
+        158764.0 -144043.0
+        158874.0 -143933.0
+        158764.0 -143824.0
+        158764.0 -138669.0
+        158235.0 -138669.0
+        158235.0 -143295.0
+        153765.0 -138824.0
+        153765.0 -126376.0
+        158235.0 -121905.0
+        158235.0 -126531.0
+        158764.0 -126531.0
+        158764.0 -121376.0
+        158874.0 -121267.0
+        158764.0 -121157.0
+        158764.0 -121002.0
+        158609.0 -121002.0
+        158500.0 -120892.0
+        158390.0 -121002.0
+        158235.0 -121002.0
+        158235.0 -121157.0
+        153391.0 -126002.0
+        153236.0 -126002.0
+        153236.0 -126157.0
+        153126.0 -126267.0
+        153236.0 -126376.0
+        153236.0 -138824.0
+        153126.0 -138933.0
+        153236.0 -139043.0
+        153236.0 -139198.0
+        153391.0 -139198.0
+        158235.0 -144043.0
+        158235.0 -144198.0
+        158390.0 -144198.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        158500.0 -144308.0
+        158609.0 -144198.0
+        158764.0 -144198.0
+        158764.0 -144043.0
+        158874.0 -143933.0
+        158764.0 -143824.0
+        158764.0 -138669.0
+        158235.0 -138669.0
+        158235.0 -143295.0
+        153765.0 -138824.0
+        153765.0 -126376.0
+        158235.0 -121905.0
+        158235.0 -126531.0
+        158764.0 -126531.0
+        158764.0 -121376.0
+        158874.0 -121267.0
+        158764.0 -121157.0
+        158764.0 -121002.0
+        158609.0 -121002.0
+        158500.0 -120892.0
+        158390.0 -121002.0
+        158235.0 -121002.0
+        158235.0 -121157.0
+        153391.0 -126002.0
+        153236.0 -126002.0
+        153236.0 -126157.0
+        153126.0 -126267.0
+        153236.0 -126376.0
+        153236.0 -138824.0
+        153126.0 -138933.0
+        153236.0 -139043.0
+        153236.0 -139198.0
+        153391.0 -139198.0
+        158235.0 -144043.0
+        158235.0 -144198.0
+        158390.0 -144198.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        43985.4 -192114.0
+        45014.8 -192114.0
+        45014.8 -171085.0
+        43985.4 -171085.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        43985.4 -192114.0
+        45014.8 -192114.0
+        45014.8 -171085.0
+        43985.4 -171085.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        158500.0 -196974.0
+        158609.0 -196865.0
+        158764.0 -196865.0
+        158764.0 -196709.0
+        158874.0 -196600.0
+        158764.0 -196490.0
+        158764.0 -191336.0
+        158235.0 -191336.0
+        158235.0 -195961.0
+        153765.0 -191490.0
+        153765.0 -171709.0
+        158235.0 -167239.0
+        158235.0 -171864.0
+        158764.0 -171864.0
+        158764.0 -165961.0
+        153391.0 -171335.0
+        153236.0 -171335.0
+        153236.0 -171490.0
+        153126.0 -171600.0
+        153236.0 -171709.0
+        153236.0 -191710.0
+        158235.0 -196709.0
+        158235.0 -196865.0
+        158390.0 -196865.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        158500.0 -196974.0
+        158609.0 -196865.0
+        158764.0 -196865.0
+        158764.0 -196709.0
+        158874.0 -196600.0
+        158764.0 -196490.0
+        158764.0 -191336.0
+        158235.0 -191336.0
+        158235.0 -195961.0
+        153765.0 -191490.0
+        153765.0 -171709.0
+        158235.0 -167239.0
+        158235.0 -171864.0
+        158764.0 -171864.0
+        158764.0 -165961.0
+        153391.0 -171335.0
+        153236.0 -171335.0
+        153236.0 -171490.0
+        153126.0 -171600.0
+        153236.0 -171709.0
+        153236.0 -191710.0
+        158235.0 -196709.0
+        158235.0 -196865.0
+        158390.0 -196865.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        129515.0 -208585.0
+        136985.0 -208585.0
+        136985.0 -182115.0
+        129515.0 -182115.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        129515.0 -208585.0
+        136985.0 -208585.0
+        136985.0 -182115.0
+        129515.0 -182115.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        161985.0 -237448.0
+        163014.0 -237448.0
+        163014.0 -223752.0
+        161985.0 -223752.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        161985.0 -237448.0
+        163014.0 -237448.0
+        163014.0 -223752.0
+        161985.0 -223752.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        98235.3 -242572.0
+        103610.0 -237198.0
+        103765.0 -237198.0
+        103765.0 -237043.0
+        103874.0 -236933.0
+        103765.0 -236824.0
+        103765.0 -224376.0
+        103874.0 -224266.0
+        103765.0 -224157.0
+        103765.0 -224002.0
+        103610.0 -224002.0
+        98235.3 -218628.0
+        98235.3 -224531.0
+        98764.5 -224531.0
+        98764.5 -219905.0
+        103236.0 -224376.0
+        103236.0 -236824.0
+        98764.5 -241294.0
+        98764.5 -236669.0
+        98235.3 -236669.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        98235.3 -242572.0
+        103610.0 -237198.0
+        103765.0 -237198.0
+        103765.0 -237043.0
+        103874.0 -236933.0
+        103765.0 -236824.0
+        103765.0 -224376.0
+        103874.0 -224266.0
+        103765.0 -224157.0
+        103765.0 -224002.0
+        103610.0 -224002.0
+        98235.3 -218628.0
+        98235.3 -224531.0
+        98764.5 -224531.0
+        98764.5 -219905.0
+        103236.0 -224376.0
+        103236.0 -236824.0
+        98764.5 -241294.0
+        98764.5 -236669.0
+        98235.3 -236669.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon B.Cu 0
+        138725.0 -244336.0
+        150275.0 -244336.0
+        150275.0 -221865.0
+        138725.0 -221865.0
+      )
+      (clearance_class default)
+    )
+    (keepout
+      (polygon F.Cu 0
+        138725.0 -244336.0
+        150275.0 -244336.0
+        150275.0 -221865.0
+        138725.0 -221865.0
+      )
+      (clearance_class default)
+    )
+  )
+  (placement
+    (component U1
+      (place 
+        U1 103000.0 -48000.0 front 90
+        (pin 1 (clearance_class default))
+        (pin 2 (clearance_class default))
+        (pin 3 (clearance_class default))
+        (pin 4 (clearance_class default))
+        (pin 5 (clearance_class default))
+        (pin 6 (clearance_class default))
+        (pin 7 (clearance_class default))
+        (pin 8 (clearance_class default))
+        (pin 9 (clearance_class default))
+        (pin 10 (clearance_class default))
+        (pin 11 (clearance_class default))
+        (pin 12 (clearance_class default))
+        (pin 13 (clearance_class default))
+        (pin 14 (clearance_class default))
+        (pin 15 (clearance_class default))
+        (pin 16 (clearance_class default))
+        (pin 17 (clearance_class default))
+        (pin 18 (clearance_class default))
+        (pin 19 (clearance_class default))
+        (pin 20 (clearance_class default))
+        (pin 21 (clearance_class default))
+        (pin 22 (clearance_class default))
+        (pin 23 (clearance_class default))
+        (pin 24 (clearance_class default))
+        (pin 25 (clearance_class default))
+        (pin 26 (clearance_class default))
+        (pin 27 (clearance_class default))
+        (pin 28 (clearance_class default))
+        (pin 29 (clearance_class default))
+        (pin 30 (clearance_class default))
+      )
+    )
+    (component J1
+      (place 
+        J1 100000.0 -87000.0 front 270
+        (pin 1 (clearance_class default))
+        (pin 2 (clearance_class default))
+        (pin 3 (clearance_class default))
+        (pin 4 (clearance_class default))
+        (pin 5 (clearance_class default))
+        (pin 6 (clearance_class default))
+        (pin 7 (clearance_class default))
+        (pin 8 (clearance_class default))
+        (pin 9 (clearance_class default))
+        (pin 10 (clearance_class default))
+      )
+    )
+  )
+  (library
+    (image U1
+      (side front)
+      (pin "Round[A]Pad_1524_um" 1 -12065.0 19050.0)
+      (pin "Round[A]Pad_1524_um" 2 -12065.0 16510.0)
+      (pin "Round[A]Pad_1524_um" 3 -12065.0 13970.0)
+      (pin "Round[A]Pad_1524_um" 4 -12065.0 11430.0)
+      (pin "Round[A]Pad_1524_um" 5 -12065.0 8890.0)
+      (pin "Round[A]Pad_1524_um" 6 -12065.0 6350.0)
+      (pin "Round[A]Pad_1524_um" 7 -12065.0 3810.0)
+      (pin "Round[A]Pad_1524_um" 8 -12065.0 1270.0)
+      (pin "Round[A]Pad_1524_um" 9 -12065.0 -1270.0)
+      (pin "Round[A]Pad_1524_um" 10 -12065.0 -3810.0)
+      (pin "Round[A]Pad_1524_um" 11 -12065.0 -6350.0)
+      (pin "Round[A]Pad_1524_um" 12 -12065.0 -8890.0)
+      (pin "Round[A]Pad_1524_um" 13 -12065.0 -11430.0)
+      (pin "Round[A]Pad_1524_um" 14 -12065.0 -13970.0)
+      (pin "Round[A]Pad_1524_um" 15 -12065.0 -16510.0)
+      (pin "Round[A]Pad_1524_um" 16 11430.0 -16510.0)
+      (pin "Round[A]Pad_1524_um" 17 11430.0 -13970.0)
+      (pin "Round[A]Pad_1524_um" 18 11430.0 -11430.0)
+      (pin "Round[A]Pad_1524_um" 19 11430.0 -8890.0)
+      (pin "Round[A]Pad_1524_um" 20 11430.0 -6350.0)
+      (pin "Round[A]Pad_1524_um" 21 11430.0 -3810.0)
+      (pin "Round[A]Pad_1524_um" 22 11430.0 -1270.0)
+      (pin "Round[A]Pad_1524_um" 23 11430.0 1270.0)
+      (pin "Round[A]Pad_1524_um" 24 11430.0 3810.0)
+      (pin "Round[A]Pad_1524_um" 25 11430.0 6350.0)
+      (pin "Round[A]Pad_1524_um" 26 11430.0 8890.0)
+      (pin "Round[A]Pad_1524_um" 27 11430.0 11430.0)
+      (pin "Round[A]Pad_1524_um" 28 11430.0 13970.0)
+      (pin "Round[A]Pad_1524_um" 29 11430.0 16510.0)
+      (pin "Round[A]Pad_1524_um" 30 11430.0 19050.0)
+      (outline
+        (polygon signal 0
+          3778.9 -22935.0
+          11461.1 -22935.0
+          11505.0 -22891.1
+          11505.0 -22828.9
+          11461.1 -22785.0
+          3778.9 -22785.0
+          3735.0 -22828.9
+          3735.0 -22891.1
+        )
+      )
+      (outline
+        (polygon signal 0
+          -5531.1 18195.0
+          5531.1 18195.0
+          5575.0 18238.9
+          5575.0 18301.1
+          5531.1 18345.0
+          -5531.1 18345.0
+          -5575.0 18301.1
+          -5575.0 18238.9
+        )
+      )
+      (outline
+        (polygon signal 0
+          5468.9 18195.0
+          5531.1 18195.0
+          5575.0 18238.9
+          5575.0 25431.1
+          5531.1 25475.0
+          5468.9 25475.0
+          5425.0 25431.1
+          5425.0 18238.9
+        )
+      )
+      (outline
+        (polygon signal 0
+          -5531.1 18195.0
+          -5468.9 18195.0
+          -5425.0 18238.9
+          -5425.0 25431.1
+          -5468.9 25475.0
+          -5531.1 25475.0
+          -5575.0 25431.1
+          -5575.0 18238.9
+        )
+      )
+      (outline
+        (polygon signal 0
+          -3831.1 -23935.0
+          -3768.9 -23935.0
+          -3725.0 -23891.1
+          -3725.0 -18098.9
+          -3768.9 -18055.0
+          -3831.1 -18055.0
+          -3875.0 -18098.9
+          -3875.0 -23891.1
+        )
+      )
+      (outline
+        (polygon signal 0
+          -3831.1 -18205.0
+          3831.1 -18205.0
+          3875.0 -18161.1
+          3875.0 -18098.9
+          3831.1 -18055.0
+          -3831.1 -18055.0
+          -3875.0 -18098.9
+          -3875.0 -18161.1
+        )
+      )
+      (outline
+        (polygon signal 0
+          3768.9 -23935.0
+          3831.1 -23935.0
+          3875.0 -23891.1
+          3875.0 -18098.9
+          3831.1 -18055.0
+          3768.9 -18055.0
+          3725.0 -18098.9
+          3725.0 -23891.1
+        )
+      )
+      (outline
+        (polygon signal 0
+          -3831.1 -23935.0
+          3831.1 -23935.0
+          3875.0 -23891.1
+          3875.0 -23828.9
+          3831.1 -23785.0
+          -3831.1 -23785.0
+          -3875.0 -23828.9
+          -3875.0 -23891.1
+        )
+      )
+      (outline
+        (polygon signal 0
+          12668.9 -21665.0
+          12731.1 -21665.0
+          12775.0 -21621.1
+          12775.0 24161.1
+          12731.1 24205.0
+          12668.9 24205.0
+          12625.0 24161.1
+          12625.0 -21621.1
+        )
+      )
+      (outline
+        (polygon signal 0
+          -13366.1 -21665.0
+          -13303.9 -21665.0
+          -13260.0 -21621.1
+          -13260.0 24161.1
+          -13303.9 24205.0
+          -13366.1 24205.0
+          -13410.0 24161.1
+          -13410.0 -21621.1
+        )
+      )
+      (outline
+        (polygon signal 0
+          -12096.1 -22935.0
+          -3778.9 -22935.0
+          -3735.0 -22891.1
+          -3735.0 -22828.9
+          -3778.9 -22785.0
+          -12096.1 -22785.0
+          -12140.0 -22828.9
+          -12140.0 -22891.1
+        )
+      )
+      (outline
+        (polygon signal 0
+          -12731.1 25325.0
+          11461.1 25325.0
+          11505.0 25368.9
+          11505.0 25431.1
+          11461.1 25475.0
+          -12731.1 25475.0
+          -12775.0 25431.1
+          -12775.0 25368.9
+        )
+      )
+      (outline
+        (polygon signal 0
+          10291.530499999999 -22186.0
+          10302.527455919397 -22186.0
+          10843.97169166293 -22062.463585293
+          11325.947013782543 -21784.152986217458
+          11333.023404255318 -21777.07659574468
+          11706.60450939226 -21374.569111791534
+          11948.7281602337 -20871.76907233432
+          12031.1 -20325.30726817043
+          12031.1 -20314.69273182957
+          11948.7281602337 -19768.23092766568
+          11706.60450939226 -19265.430888208466
+          11333.023404255318 -18862.92340425532
+          11325.947013782543 -18855.847013782542
+          10843.97169166293 -18577.536414707
+          10302.527455919397 -18454.0
+          10291.530499999999 -18454.0
+          9743.298242366403 -18495.073778432932
+          9224.211525157132 -18698.833284525917
+          8793.049528301886 -19042.650471698114
+          8785.39658848614 -19050.303411513858
+          8473.459064925266 -19507.763513208072
+          8309.0 -20040.952724968312
+          8309.0 -20599.047275031688
+          8473.459064925266 -21132.236486791928
+          8785.39658848614 -21589.696588486142
+          8793.049528301886 -21597.349528301886
+          9224.211525157132 -21941.166715474083
+          9743.298242366403 -22144.926221567068
+        )
+      )
+      (outline
+        (polygon signal 0
+          -10663.469500000001 -22186.0
+          -10652.472544080603 -22186.0
+          -10111.02830833707 -22062.463585293
+          -9629.052986217457 -21784.152986217458
+          -9621.976595744682 -21777.07659574468
+          -9248.39549060774 -21374.569111791534
+          -9006.2718397663 -20871.76907233432
+          -8923.9 -20325.30726817043
+          -8923.9 -20314.69273182957
+          -9006.2718397663 -19768.23092766568
+          -9248.39549060774 -19265.430888208466
+          -9621.976595744682 -18862.92340425532
+          -9629.052986217457 -18855.847013782542
+          -10111.02830833707 -18577.536414707
+          -10652.472544080603 -18454.0
+          -10663.469500000001 -18454.0
+          -11211.701757633597 -18495.073778432932
+          -11730.788474842868 -18698.833284525917
+          -12161.950471698114 -19042.650471698114
+          -12169.60341151386 -19050.303411513858
+          -12481.540935074734 -19507.763513208072
+          -12646.0 -20040.952724968312
+          -12646.0 -20599.047275031688
+          -12481.540935074734 -21132.236486791928
+          -12169.60341151386 -21589.696588486142
+          -12161.950471698114 -21597.349528301886
+          -11730.788474842868 -21941.166715474083
+          -11211.701757633597 -22144.926221567068
+        )
+      )
+      (outline
+        (polygon signal 0
+          -10663.469500000001 20994.0
+          -10652.472544080603 20994.0
+          -10111.02830833707 21117.536414707
+          -9629.052986217457 21395.847013782542
+          -9621.976595744682 21402.92340425532
+          -9248.39549060774 21805.430888208466
+          -9006.2718397663 22308.23092766568
+          -8923.9 22854.69273182957
+          -8923.9 22865.30726817043
+          -9006.2718397663 23411.76907233432
+          -9248.39549060774 23914.569111791534
+          -9621.976595744682 24317.07659574468
+          -9629.052986217457 24324.152986217458
+          -10111.02830833707 24602.463585293
+          -10652.472544080603 24726.0
+          -10663.469500000001 24726.0
+          -11211.701757633597 24684.926221567068
+          -11730.788474842868 24481.166715474083
+          -12161.950471698114 24137.349528301886
+          -12169.60341151386 24129.696588486142
+          -12481.540935074734 23672.236486791928
+          -12646.0 23139.047275031688
+          -12646.0 22580.952724968312
+          -12481.540935074734 22047.763513208072
+          -12169.60341151386 21590.303411513858
+          -12161.950471698114 21582.650471698114
+          -11730.788474842868 21238.833284525917
+          -11211.701757633597 21035.073778432932
+        )
+      )
+      (outline
+        (polygon signal 0
+          10291.530499999999 20994.0
+          10302.527455919397 20994.0
+          10843.97169166293 21117.536414707
+          11325.947013782543 21395.847013782542
+          11333.023404255318 21402.92340425532
+          11706.60450939226 21805.430888208466
+          11948.7281602337 22308.23092766568
+          12031.1 22854.69273182957
+          12031.1 22865.30726817043
+          11948.7281602337 23411.76907233432
+          11706.60450939226 23914.569111791534
+          11333.023404255318 24317.07659574468
+          11325.947013782543 24324.152986217458
+          10843.97169166293 24602.463585293
+          10302.527455919397 24726.0
+          10291.530499999999 24726.0
+          9743.298242366403 24684.926221567068
+          9224.211525157132 24481.166715474083
+          8793.049528301886 24137.349528301886
+          8785.39658848614 24129.696588486142
+          8473.459064925266 23672.236486791928
+          8309.0 23139.047275031688
+          8309.0 22580.952724968312
+          8473.459064925266 22047.763513208072
+          8785.39658848614 21590.303411513858
+          8793.049528301886 21582.650471698114
+          9224.211525157132 21238.833284525917
+          9743.298242366403 21035.073778432932
+        )
+      )
+    )
+    (image J1
+      (side front)
+      (pin "Round[A]Pad_1524_um" 1 -6350.0 10160.0)
+      (pin "Round[A]Pad_1524_um" 2 -6350.0 7620.0)
+      (pin "Round[A]Pad_1524_um" 3 -6350.0 5080.0)
+      (pin "Round[A]Pad_1524_um" 4 -6350.0 2540.0)
+      (pin "Round[A]Pad_1524_um" 5 -6350.0 0.0)
+      (pin "Round[A]Pad_1524_um" 6 -6350.0 -2540.0)
+      (pin "Round[A]Pad_1524_um" 7 -6350.0 -5080.0)
+      (pin "Round[A]Pad_1524_um" 8 -6350.0 -7620.0)
+      (pin "Round[A]Pad_1524_um" 9 -6350.0 -10160.0)
+      (pin "Round[A]Pad_1524_um" 10 -6350.0 -12700.0)
+      (outline
+        (polygon signal 0
+          -7644.9 11370.0
+          7564.9 11370.0
+          7600.0 11405.1
+          7600.0 11454.9
+          7564.9 11490.0
+          -7644.9 11490.0
+          -7680.0 11454.9
+          -7680.0 11405.1
+        )
+      )
+      (outline
+        (polygon signal 0
+          7595.1 -13630.0
+          7644.9 -13630.0
+          7680.0 -13594.9
+          7680.0 11454.9
+          7644.9 11490.0
+          7595.1 11490.0
+          7560.0 11454.9
+          7560.0 -13594.9
+        )
+      )
+      (outline
+        (polygon signal 0
+          -7644.9 -13630.0
+          7644.9 -13630.0
+          7680.0 -13594.9
+          7680.0 -13545.1
+          7644.9 -13510.0
+          -7644.9 -13510.0
+          -7680.0 -13545.1
+          -7680.0 -13594.9
+        )
+      )
+      (outline
+        (polygon signal 0
+          -7644.9 -13630.0
+          -7595.1 -13630.0
+          -7560.0 -13594.9
+          -7560.0 11454.9
+          -7595.1 11490.0
+          -7644.9 11490.0
+          -7680.0 11454.9
+          -7680.0 -13594.9
+        )
+      )
+    )
+    (padstack "Round[A]Pad_1524_um"
+      (shape
+        (circle F.Cu 1524.0 0.0 0.0)
+      )
+      (shape
+        (circle B.Cu 1524.0 0.0 0.0)
+      )
+      (attach off)
+    )
+    (padstack "Via[0-1]_800:400_um"
+      (shape
+        (circle F.Cu 800.0 0.0 0.0)
+      )
+      (shape
+        (circle B.Cu 800.0 0.0 0.0)
+      )
+      (attach off)
+    )
+  )
+  (network
+    (net 3v3 1
+      (pins
+        J1-1
+        U1-3
+      )
+    )
+    (net VIN 1
+      (pins
+        U1-1
+      )
+    )
+    (via 
+      "Via[0-1]_800:400_um" "Via[0-1]_800:400_um" default
+    )
+    (via 
+      "Via[0-1]_800:400_um-kicad_default" "Via[0-1]_800:400_um" default
+    )
+    (via_rule
+      default "Via[0-1]_800:400_um"
+    )
+    (via_rule
+      "kicad_default" "Via[0-1]_800:400_um-kicad_default"
+    )
+    (via_rule
+      default "Via[0-1]_800:400_um"
+    )
+    (class default
+      3v3 VIN
+      (clearance_class default)
+      (via_rule default)
+      (rule
+        (width 1000.0)
+      )
+      (circuit 
+        (use_layer F.Cu B.Cu)
+      )
+    )
+    (class "kicad_default"
+      (clearance_class default)
+      (via_rule kicad_default)
+      (rule
+        (width 250.0)
+      )
+      (circuit 
+        (use_layer F.Cu B.Cu)
+      )
+    )
+  )
+  (wiring
+    (wire
+      (polyline_path B.Cu 1000.0
+        110160.0 -80650.0 110159.9 -80650.0 
+        110160.0 -80650.0 110160.0 -68737.2 
+        110160.0 -68737.2 104063.6 -62640.8 
+        104063.6 -62640.8 89030.0 -62640.8 
+        89030.0 -60065.0 89029.9 -60064.9 
+        89030.0 -60065.0 89030.1 -60065.0 
+      )
+      (net 3v3 1)
+      (clearance_class default)
+    )
+  )
+)
\ No newline at end of file